ݺߣ

ݺߣShare a Scribd company logo
WWW.JAVABEGIN.RU
WWW.JAVABEGIN.RU
БЛОК: ПРАКТИКА UMLПРОЕКТИРОВАНИЕ ДЛЯ НАЧИНАЮЩИХ
ПРЕЦЕДЕНТЫ
WWW.JAVABEGIN.RU
Определение
• Use Case («случай использования», прецедент) – набор сценариев (путей), которые нужно выполнить для достижения
целей приложения (с точки зрения пользователя)
• Описывает участников (actor), возможные сценарии (успешные и неудачные), которые выполняются для решения задач
приложения
• Сначала все описывается в виде текста, затем уже переводится в UML диаграммы
• Может описывать основные сценарии, которые составляют «ядро» приложения (дополнительные сценарии могут
добавляться по ходу разработки)
• Важный шаг для дальнейшего проектирования в стиле ООП
• Ориентация – на пользователей (часто – сценарии добавляются уже в процессе разработки)
Прецеденты (Use Cases) – варианты, сценарии
использования приложения
WWW.JAVABEGIN.RU
Заметки
• Для описания прецедентов часто используют обратную связь от пользователей (что они хотят увидеть в системе)
• Невозможно описать 100% прецедентов - как минимум нужно описать успешные сценарии, чтобы оценить работу приложения
• Хороший вариант группировки прецедентов – использование mindmap
Принцип «мозгового штурма» - выписать в единый список все, что приходит в голову («вынести» все данные из
головы) – после этого систематизировать их, разбивать на типы и пр.
WWW.JAVABEGIN.RU
Заметки
• Когда готова текстовая часть – переходим к созданию диаграмм
• От общего к частному – сначала описать основные цели программы, потом детализировать
• Слишком не усложнять, т.к. по ходу разработки многое может поменяться (итеративная разработка)
• Не путать понятия «use case» (текст) и «use case diagram» (диаграммы UML)
НЕ нужно одновременно рисовать диаграмму и продумать «use case» - сначала списки, потом диаграммы

More Related Content

What's hot (10)

Babich Presentation
Babich PresentationBabich Presentation
Babich Presentation
Alexander Babich
Практический анализ и визуальное моделирование на UML
Практический анализ и визуальное моделирование на UMLПрактический анализ и визуальное моделирование на UML
Практический анализ и визуальное моделирование на UML
Nikolai Kireev
МАСТЕР-КЛАСС. Моделирование на UML
МАСТЕР-КЛАСС. Моделирование на UMLМАСТЕР-КЛАСС. Моделирование на UML
МАСТЕР-КЛАСС. Моделирование на UML
SQALab
Прото типо типирование
Прото типо типированиеПрото типо типирование
Прото типо типирование
Agilie Team
Intellectual character recognition system1
Intellectual character recognition system1Intellectual character recognition system1
Intellectual character recognition system1
Alex Airborner
CSS Modules в React | Odessa Frontend Meetup #4
CSS Modules в React | Odessa Frontend Meetup #4CSS Modules в React | Odessa Frontend Meetup #4
CSS Modules в React | Odessa Frontend Meetup #4
OdessaFrontend
ОНЛАЙН- ПРОГРАММЫ ОБУЧЕНИЯ ДЛЯ ДИЗАЙНЕРОВ
ОНЛАЙН- ПРОГРАММЫ ОБУЧЕНИЯ ДЛЯ ДИЗАЙНЕРОВОНЛАЙН- ПРОГРАММЫ ОБУЧЕНИЯ ДЛЯ ДИЗАЙНЕРОВ
ОНЛАЙН- ПРОГРАММЫ ОБУЧЕНИЯ ДЛЯ ДИЗАЙНЕРОВ
Aleksey Polekhin
Практический анализ и визуальное моделирование на UML
Практический анализ и визуальное моделирование на UMLПрактический анализ и визуальное моделирование на UML
Практический анализ и визуальное моделирование на UML
Nikolai Kireev
МАСТЕР-КЛАСС. Моделирование на UML
МАСТЕР-КЛАСС. Моделирование на UMLМАСТЕР-КЛАСС. Моделирование на UML
МАСТЕР-КЛАСС. Моделирование на UML
SQALab
Прото типо типирование
Прото типо типированиеПрото типо типирование
Прото типо типирование
Agilie Team
Intellectual character recognition system1
Intellectual character recognition system1Intellectual character recognition system1
Intellectual character recognition system1
Alex Airborner
CSS Modules в React | Odessa Frontend Meetup #4
CSS Modules в React | Odessa Frontend Meetup #4CSS Modules в React | Odessa Frontend Meetup #4
CSS Modules в React | Odessa Frontend Meetup #4
OdessaFrontend
ОНЛАЙН- ПРОГРАММЫ ОБУЧЕНИЯ ДЛЯ ДИЗАЙНЕРОВ
ОНЛАЙН- ПРОГРАММЫ ОБУЧЕНИЯ ДЛЯ ДИЗАЙНЕРОВОНЛАЙН- ПРОГРАММЫ ОБУЧЕНИЯ ДЛЯ ДИЗАЙНЕРОВ
ОНЛАЙН- ПРОГРАММЫ ОБУЧЕНИЯ ДЛЯ ДИЗАЙНЕРОВ
Aleksey Polekhin

Viewers also liked (13)

Лекция 5. Встроенные коллекции и модуль collections.
Лекция 5. Встроенные коллекции и модуль collections.Лекция 5. Встроенные коллекции и модуль collections.
Лекция 5. Встроенные коллекции и модуль collections.
Roman Brovko
Лекция 3. Декораторы и модуль functools.
Лекция 3. Декораторы и модуль functools.Лекция 3. Декораторы и модуль functools.
Лекция 3. Декораторы и модуль functools.
Roman Brovko
Лекция 2. Всё, что вы хотели знать о функциях в Python.
Лекция 2. Всё, что вы хотели знать о функциях в Python.Лекция 2. Всё, что вы хотели знать о функциях в Python.
Лекция 2. Всё, что вы хотели знать о функциях в Python.
Roman Brovko
Лекция 6. Классы 1.
Лекция 6. Классы 1.Лекция 6. Классы 1.
Лекция 6. Классы 1.
Roman Brovko
Лекция 1. Начало.
Лекция 1. Начало.Лекция 1. Начало.
Лекция 1. Начало.
Roman Brovko
Лекция 11. Тестирование.
Лекция 11. Тестирование.Лекция 11. Тестирование.
Лекция 11. Тестирование.
Roman Brovko
Лекция 10. Классы 2.
Лекция 10. Классы 2.Лекция 10. Классы 2.
Лекция 10. Классы 2.
Roman Brovko
Лекция 8. Итераторы, генераторы и модуль itertools.
 Лекция 8. Итераторы, генераторы и модуль itertools. Лекция 8. Итераторы, генераторы и модуль itertools.
Лекция 8. Итераторы, генераторы и модуль itertools.
Roman Brovko
Лекция 12. Быстрее, Python, ещё быстрее.
Лекция 12. Быстрее, Python, ещё быстрее.Лекция 12. Быстрее, Python, ещё быстрее.
Лекция 12. Быстрее, Python, ещё быстрее.
Roman Brovko
Лекция 4. Строки, байты, файлы и ввод/вывод.
 Лекция 4. Строки, байты, файлы и ввод/вывод. Лекция 4. Строки, байты, файлы и ввод/вывод.
Лекция 4. Строки, байты, файлы и ввод/вывод.
Roman Brovko
Лекция 9. Модули, пакеты и система импорта.
Лекция 9. Модули, пакеты и система импорта.Лекция 9. Модули, пакеты и система импорта.
Лекция 9. Модули, пакеты и система импорта.
Roman Brovko
Лекция 13. Многопоточность и GIL
Лекция 13. Многопоточность и GILЛекция 13. Многопоточность и GIL
Лекция 13. Многопоточность и GIL
Roman Brovko
Лекция 7. Исключения и менеджеры контекста.
Лекция 7. Исключения и менеджеры контекста.Лекция 7. Исключения и менеджеры контекста.
Лекция 7. Исключения и менеджеры контекста.
Roman Brovko
Лекция 5. Встроенные коллекции и модуль collections.
Лекция 5. Встроенные коллекции и модуль collections.Лекция 5. Встроенные коллекции и модуль collections.
Лекция 5. Встроенные коллекции и модуль collections.
Roman Brovko
Лекция 3. Декораторы и модуль functools.
Лекция 3. Декораторы и модуль functools.Лекция 3. Декораторы и модуль functools.
Лекция 3. Декораторы и модуль functools.
Roman Brovko
Лекция 2. Всё, что вы хотели знать о функциях в Python.
Лекция 2. Всё, что вы хотели знать о функциях в Python.Лекция 2. Всё, что вы хотели знать о функциях в Python.
Лекция 2. Всё, что вы хотели знать о функциях в Python.
Roman Brovko
Лекция 6. Классы 1.
Лекция 6. Классы 1.Лекция 6. Классы 1.
Лекция 6. Классы 1.
Roman Brovko
Лекция 1. Начало.
Лекция 1. Начало.Лекция 1. Начало.
Лекция 1. Начало.
Roman Brovko
Лекция 11. Тестирование.
Лекция 11. Тестирование.Лекция 11. Тестирование.
Лекция 11. Тестирование.
Roman Brovko
Лекция 10. Классы 2.
Лекция 10. Классы 2.Лекция 10. Классы 2.
Лекция 10. Классы 2.
Roman Brovko
Лекция 8. Итераторы, генераторы и модуль itertools.
 Лекция 8. Итераторы, генераторы и модуль itertools. Лекция 8. Итераторы, генераторы и модуль itertools.
Лекция 8. Итераторы, генераторы и модуль itertools.
Roman Brovko
Лекция 12. Быстрее, Python, ещё быстрее.
Лекция 12. Быстрее, Python, ещё быстрее.Лекция 12. Быстрее, Python, ещё быстрее.
Лекция 12. Быстрее, Python, ещё быстрее.
Roman Brovko
Лекция 4. Строки, байты, файлы и ввод/вывод.
 Лекция 4. Строки, байты, файлы и ввод/вывод. Лекция 4. Строки, байты, файлы и ввод/вывод.
Лекция 4. Строки, байты, файлы и ввод/вывод.
Roman Brovko
Лекция 9. Модули, пакеты и система импорта.
Лекция 9. Модули, пакеты и система импорта.Лекция 9. Модули, пакеты и система импорта.
Лекция 9. Модули, пакеты и система импорта.
Roman Brovko
Лекция 13. Многопоточность и GIL
Лекция 13. Многопоточность и GILЛекция 13. Многопоточность и GIL
Лекция 13. Многопоточность и GIL
Roman Brovko
Лекция 7. Исключения и менеджеры контекста.
Лекция 7. Исключения и менеджеры контекста.Лекция 7. Исключения и менеджеры контекста.
Лекция 7. Исключения и менеджеры контекста.
Roman Brovko

Similar to 03 - Практика UML. Прецеденты (20)

UML_Yznaika.com.pptx
UML_Yznaika.com.pptxUML_Yznaika.com.pptx
UML_Yznaika.com.pptx
ssuserd0eb401
Essentials of Visual modeling and UML (rus) by SkillsCup.com
Essentials of Visual modeling and UML (rus) by SkillsCup.comEssentials of Visual modeling and UML (rus) by SkillsCup.com
Essentials of Visual modeling and UML (rus) by SkillsCup.com
Dmitry SkillsCup.com
Lection 23-24. Use Cases+ User Stories
Lection 23-24. Use Cases+ User StoriesLection 23-24. Use Cases+ User Stories
Lection 23-24. Use Cases+ User Stories
Yana Brodetski
UML2. Eleven Trivial Tips for BPMN Modellers [1.01, RUS]
UML2. Eleven Trivial Tips for BPMN Modellers [1.01, RUS]UML2. Eleven Trivial Tips for BPMN Modellers [1.01, RUS]
UML2. Eleven Trivial Tips for BPMN Modellers [1.01, RUS]
Alex V. Petrov
Базовые принципы и понятия технологии разработки объектно-ориентированных инф...
Базовые принципы и понятия технологии разработки объектно-ориентированных инф...Базовые принципы и понятия технологии разработки объектно-ориентированных инф...
Базовые принципы и понятия технологии разработки объектно-ориентированных инф...
DEVTYPE
Нотация UML / UML Notation
Нотация UML / UML NotationНотация UML / UML Notation
Нотация UML / UML Notation
Роман Душкин
Mva stf module 1 - rus
Mva stf module 1 - rusMva stf module 1 - rus
Mva stf module 1 - rus
Maxim Shaptala
Проектирование программных систем. Занятие 3
Проектирование программных систем. Занятие 3Проектирование программных систем. Занятие 3
Проектирование программных систем. Занятие 3
Dima Dzuba
Понятия технологии разработки объектно-ориентированных информационных систем ...
Понятия технологии разработки объектно-ориентированных информационных систем ...Понятия технологии разработки объектно-ориентированных информационных систем ...
Понятия технологии разработки объектно-ориентированных информационных систем ...
Aimurat Adilbekov
Проектирование интернет-сайтов и систем в Redsoft
Проектирование интернет-сайтов и систем в RedsoftПроектирование интернет-сайтов и систем в Redsoft
Проектирование интернет-сайтов и систем в Redsoft
Redsoft
Внедрение CASE-технологий
Внедрение CASE-технологийВнедрение CASE-технологий
Внедрение CASE-технологий
Отшельник
Статья «Формирование универсальных требований к пользовательским программам п...
Статья «Формирование универсальных требований к пользовательским программам п...Статья «Формирование универсальных требований к пользовательским программам п...
Статья «Формирование универсальных требований к пользовательским программам п...
ph.d. Dmitry Stepanov
метод Oracle (45)
метод Oracle (45)метод Oracle (45)
метод Oracle (45)
romachka_pole
оп.05 основы программирования
оп.05 основы программированияоп.05 основы программирования
оп.05 основы программирования
Stepan1234
Лекция 1. UML (use cases)
Лекция 1. UML (use cases)Лекция 1. UML (use cases)
Лекция 1. UML (use cases)
Виталий Емельянов
Проектирование программных систем. Занятие 4
Проектирование программных систем. Занятие 4Проектирование программных систем. Занятие 4
Проектирование программных систем. Занятие 4
Dima Dzuba
Lekcia14
Lekcia14Lekcia14
Lekcia14
Aigerim Serubai
Полнота ролей и целей пользователей
Полнота ролей и целей пользователейПолнота ролей и целей пользователей
Полнота ролей и целей пользователей
Anna Abramova
Вебинар Microsoft ALM (11.12.2012)
Вебинар Microsoft ALM (11.12.2012)Вебинар Microsoft ALM (11.12.2012)
Вебинар Microsoft ALM (11.12.2012)
Dmitry Melikov
Essentials of Visual modeling and UML (rus) by SkillsCup.com
Essentials of Visual modeling and UML (rus) by SkillsCup.comEssentials of Visual modeling and UML (rus) by SkillsCup.com
Essentials of Visual modeling and UML (rus) by SkillsCup.com
Dmitry SkillsCup.com
Lection 23-24. Use Cases+ User Stories
Lection 23-24. Use Cases+ User StoriesLection 23-24. Use Cases+ User Stories
Lection 23-24. Use Cases+ User Stories
Yana Brodetski
UML2. Eleven Trivial Tips for BPMN Modellers [1.01, RUS]
UML2. Eleven Trivial Tips for BPMN Modellers [1.01, RUS]UML2. Eleven Trivial Tips for BPMN Modellers [1.01, RUS]
UML2. Eleven Trivial Tips for BPMN Modellers [1.01, RUS]
Alex V. Petrov
Базовые принципы и понятия технологии разработки объектно-ориентированных инф...
Базовые принципы и понятия технологии разработки объектно-ориентированных инф...Базовые принципы и понятия технологии разработки объектно-ориентированных инф...
Базовые принципы и понятия технологии разработки объектно-ориентированных инф...
DEVTYPE
Проектирование программных систем. Занятие 3
Проектирование программных систем. Занятие 3Проектирование программных систем. Занятие 3
Проектирование программных систем. Занятие 3
Dima Dzuba
Понятия технологии разработки объектно-ориентированных информационных систем ...
Понятия технологии разработки объектно-ориентированных информационных систем ...Понятия технологии разработки объектно-ориентированных информационных систем ...
Понятия технологии разработки объектно-ориентированных информационных систем ...
Aimurat Adilbekov
Проектирование интернет-сайтов и систем в Redsoft
Проектирование интернет-сайтов и систем в RedsoftПроектирование интернет-сайтов и систем в Redsoft
Проектирование интернет-сайтов и систем в Redsoft
Redsoft
Внедрение CASE-технологий
Внедрение CASE-технологийВнедрение CASE-технологий
Внедрение CASE-технологий
Отшельник
Статья «Формирование универсальных требований к пользовательским программам п...
Статья «Формирование универсальных требований к пользовательским программам п...Статья «Формирование универсальных требований к пользовательским программам п...
Статья «Формирование универсальных требований к пользовательским программам п...
ph.d. Dmitry Stepanov
оп.05 основы программирования
оп.05 основы программированияоп.05 основы программирования
оп.05 основы программирования
Stepan1234
Проектирование программных систем. Занятие 4
Проектирование программных систем. Занятие 4Проектирование программных систем. Занятие 4
Проектирование программных систем. Занятие 4
Dima Dzuba
Полнота ролей и целей пользователей
Полнота ролей и целей пользователейПолнота ролей и целей пользователей
Полнота ролей и целей пользователей
Anna Abramova
Вебинар Microsoft ALM (11.12.2012)
Вебинар Microsoft ALM (11.12.2012)Вебинар Microsoft ALM (11.12.2012)
Вебинар Microsoft ALM (11.12.2012)
Dmitry Melikov

More from Roman Brovko (20)

Individual task Networking
Individual task NetworkingIndividual task Networking
Individual task Networking
Roman Brovko
Networking essentials lect3
Networking essentials lect3Networking essentials lect3
Networking essentials lect3
Roman Brovko
Gl embedded starterkit_ethernet
Gl embedded starterkit_ethernetGl embedded starterkit_ethernet
Gl embedded starterkit_ethernet
Roman Brovko
Networking essentials lect2
Networking essentials lect2Networking essentials lect2
Networking essentials lect2
Roman Brovko
Networking essentials lect1
Networking essentials lect1Networking essentials lect1
Networking essentials lect1
Roman Brovko
Bare metal training_07_spi_flash
Bare metal training_07_spi_flashBare metal training_07_spi_flash
Bare metal training_07_spi_flash
Roman Brovko
Bare metal training_06_I2C
Bare metal training_06_I2CBare metal training_06_I2C
Bare metal training_06_I2C
Roman Brovko
Glesk worshop
Glesk worshopGlesk worshop
Glesk worshop
Roman Brovko
Bare metal training_05_uart
Bare metal training_05_uartBare metal training_05_uart
Bare metal training_05_uart
Roman Brovko
Bare metal training_04_adc_temp_sensor
Bare metal training_04_adc_temp_sensorBare metal training_04_adc_temp_sensor
Bare metal training_04_adc_temp_sensor
Roman Brovko
Bare metal training_03_timers_pwm
Bare metal training_03_timers_pwmBare metal training_03_timers_pwm
Bare metal training_03_timers_pwm
Roman Brovko
Bare metal training_02_le_ds_and_buttons
Bare metal training_02_le_ds_and_buttonsBare metal training_02_le_ds_and_buttons
Bare metal training_02_le_ds_and_buttons
Roman Brovko
Bare metal training_01_hello_world
Bare metal training_01_hello_worldBare metal training_01_hello_world
Bare metal training_01_hello_world
Roman Brovko
Bare metal training_00_prerequisites
Bare metal training_00_prerequisitesBare metal training_00_prerequisites
Bare metal training_00_prerequisites
Roman Brovko
C language lect_23_advanced
C language lect_23_advancedC language lect_23_advanced
C language lect_23_advanced
Roman Brovko
C language lect_22_advanced
C language lect_22_advancedC language lect_22_advanced
C language lect_22_advanced
Roman Brovko
C language lect_21_advanced
C language lect_21_advancedC language lect_21_advanced
C language lect_21_advanced
Roman Brovko
подготовка рабочего окружения
подготовка рабочего окруженияподготовка рабочего окружения
подготовка рабочего окружения
Roman Brovko
C language lect_20_advanced
C language lect_20_advancedC language lect_20_advanced
C language lect_20_advanced
Roman Brovko
C language lect_19_basics
C language lect_19_basicsC language lect_19_basics
C language lect_19_basics
Roman Brovko
Individual task Networking
Individual task NetworkingIndividual task Networking
Individual task Networking
Roman Brovko
Networking essentials lect3
Networking essentials lect3Networking essentials lect3
Networking essentials lect3
Roman Brovko
Gl embedded starterkit_ethernet
Gl embedded starterkit_ethernetGl embedded starterkit_ethernet
Gl embedded starterkit_ethernet
Roman Brovko
Networking essentials lect2
Networking essentials lect2Networking essentials lect2
Networking essentials lect2
Roman Brovko
Networking essentials lect1
Networking essentials lect1Networking essentials lect1
Networking essentials lect1
Roman Brovko
Bare metal training_07_spi_flash
Bare metal training_07_spi_flashBare metal training_07_spi_flash
Bare metal training_07_spi_flash
Roman Brovko
Bare metal training_06_I2C
Bare metal training_06_I2CBare metal training_06_I2C
Bare metal training_06_I2C
Roman Brovko
Bare metal training_05_uart
Bare metal training_05_uartBare metal training_05_uart
Bare metal training_05_uart
Roman Brovko
Bare metal training_04_adc_temp_sensor
Bare metal training_04_adc_temp_sensorBare metal training_04_adc_temp_sensor
Bare metal training_04_adc_temp_sensor
Roman Brovko
Bare metal training_03_timers_pwm
Bare metal training_03_timers_pwmBare metal training_03_timers_pwm
Bare metal training_03_timers_pwm
Roman Brovko
Bare metal training_02_le_ds_and_buttons
Bare metal training_02_le_ds_and_buttonsBare metal training_02_le_ds_and_buttons
Bare metal training_02_le_ds_and_buttons
Roman Brovko
Bare metal training_01_hello_world
Bare metal training_01_hello_worldBare metal training_01_hello_world
Bare metal training_01_hello_world
Roman Brovko
Bare metal training_00_prerequisites
Bare metal training_00_prerequisitesBare metal training_00_prerequisites
Bare metal training_00_prerequisites
Roman Brovko
C language lect_23_advanced
C language lect_23_advancedC language lect_23_advanced
C language lect_23_advanced
Roman Brovko
C language lect_22_advanced
C language lect_22_advancedC language lect_22_advanced
C language lect_22_advanced
Roman Brovko
C language lect_21_advanced
C language lect_21_advancedC language lect_21_advanced
C language lect_21_advanced
Roman Brovko
подготовка рабочего окружения
подготовка рабочего окруженияподготовка рабочего окружения
подготовка рабочего окружения
Roman Brovko
C language lect_20_advanced
C language lect_20_advancedC language lect_20_advanced
C language lect_20_advanced
Roman Brovko
C language lect_19_basics
C language lect_19_basicsC language lect_19_basics
C language lect_19_basics
Roman Brovko

03 - Практика UML. Прецеденты

  • 2. WWW.JAVABEGIN.RU Определение • Use Case («случай использования», прецедент) – набор сценариев (путей), которые нужно выполнить для достижения целей приложения (с точки зрения пользователя) • Описывает участников (actor), возможные сценарии (успешные и неудачные), которые выполняются для решения задач приложения • Сначала все описывается в виде текста, затем уже переводится в UML диаграммы • Может описывать основные сценарии, которые составляют «ядро» приложения (дополнительные сценарии могут добавляться по ходу разработки) • Важный шаг для дальнейшего проектирования в стиле ООП • Ориентация – на пользователей (часто – сценарии добавляются уже в процессе разработки) Прецеденты (Use Cases) – варианты, сценарии использования приложения
  • 3. WWW.JAVABEGIN.RU Заметки • Для описания прецедентов часто используют обратную связь от пользователей (что они хотят увидеть в системе) • Невозможно описать 100% прецедентов - как минимум нужно описать успешные сценарии, чтобы оценить работу приложения • Хороший вариант группировки прецедентов – использование mindmap Принцип «мозгового штурма» - выписать в единый список все, что приходит в голову («вынести» все данные из головы) – после этого систематизировать их, разбивать на типы и пр.
  • 4. WWW.JAVABEGIN.RU Заметки • Когда готова текстовая часть – переходим к созданию диаграмм • От общего к частному – сначала описать основные цели программы, потом детализировать • Слишком не усложнять, т.к. по ходу разработки многое может поменяться (итеративная разработка) • Не путать понятия «use case» (текст) и «use case diagram» (диаграммы UML) НЕ нужно одновременно рисовать диаграмму и продумать «use case» - сначала списки, потом диаграммы