Унифицированный процесс разработки программного обеспечения (Романов В.Ю.)

Часы: 36 Практикум: в режиме самостоятельной работы 0 часов
Преподаватель: Романов В.Ю.
Описание
В результате обучения учащийся будет
Знать: основные особенности унифицированного процесса разработки программного обеспечения, потоки работ процесса, участников и артефакты каждого из потоков работ, последовательности деятельностей в потоках работ.
Уметь организовывать процесс разработки программного обеспечения командой разработчиков в соответствии с полученными знаниями об унифицированном процессе.
Владеть навыками использования языка UML при разработке программных систем с использованием унифицированного процесса разработки программного обеспечения.
Способен использовать графическую нотацию языка UML при проектировании программного обеспечения с помощью CASE-инструментов при объектно-ориентированном проектировании и программировании на основе знаний структуры метамодели стандартного языка моделирования.
Тема 1. Основные принципы унифицированного процесса разработки ПО.
Управление процессом с помощью прецедентов использования системы. Понятие архитектуры системы. Ориентация унифицированного процесса на раннюю разработку архитектуры системы. Понятие итерации в разработке программной системы. Итеративность и инкрементальность унифицированного процесса. Потоки работ процесса. Фазы процесса.
Тема 2. Управление процессом с помощью прецедентов.
Определение прецедентов использования системы с помощью модели прецедентов на языке UML. Итерация как последовательность разработки моделей на языке UML. Связь различных моделей на языке UML. Пример разработки последовательности моделей, начиная с модели прецедентов.
Тема 3. Разработка архитектуры программной систем.
Процесс ориентированный на разработку архитектуры системы. Необходимость описания архитектуры системы для организации работы участников процесса. Использование вариантов использования системы при разработке архитектуры. Этапы в разработке архитектуры системы. Пример описания архитектуры с помощью графической нотации языка UML.
Тема 4. Итеративность и инкрементальность процесса.
Необходимость итеративной и инкрементальной разработки. Риски в разработке программной системы и их влияние на выбор итерации. Типовая итерация. Инкремент как результат итерации. Итерации в жизненном цикле системы. Развитие моделей программной системы в результате итераций. Пример развития моделей на языке UML.
Тема 5. Поток работ для получения требований к системе.
Прецеденты использования системы. Модель прецедентов использования системы. Актеры как средство представления пользователей и внешней среды программной системы. Прототип интерфейса пользователя. Глоссарий терминов используемых при сборе требований. Модель архитектуры, описанная с помощью диаграмм прецедентов языка UML.
Участники потока работ по сбору требований: архитектор, системный аналитик, спецификатор сценариев использования, проектировщик интерфейса пользователя.
Деятельности потока работ: поиск актеров и сценариев использования, определение приоритетов для сценариев использования, детализация сценариев использования, создание прототипа интерфейса пользователя, структурирование модели сценариев использования.
Тема 6. Поток работ по анализу системы.
Роль модели анализа в жизненном цикле программного обеспечения.
Артефакты потока работ: описание архитектуры системы, анализ класса, анализ реализации сценария использования, анализ пакетов.
Участники потока работ: архитектор, разработчик прецедентов, разработчик компонентов.
Деятельности потока работ: архитектурный анализ, анализ сценариев использования, анализ классов, анализ пакетов.
Тема 7. Поток работ по проектированию системы.
Роль потока работ проектирования в жизненном цикле программного обеспечения.
Артефакты потока работ: описание архитектуры (вид потока проектирования), проект класса, проект реализации прецедента, проект подсистемы, проект интерфейса, описание модели внедрения системы.
Участники потока работ: архитектор, разработчик прецедентов, разработчик компонентов.
Деятельности потока работ: проектирование архитектуры, проектирование прецедентов, проектирование классов, проектирование подсистем.
Тема 8. Поток работ по реализации системы.
Роль потока работ по реализации в жизненном цикле программного обеспечения.
Артефакты потока работ: описание архитектуры, компоненты, подсистема реализации, интерфейсы, план интеграции для реализации.
Участники потока работ: архитектор, разработчик компонентов, системный интегратор.
Деятельности потока работ: реализация архитектуры, интеграция системы, реализация подсистемы, реализация класса, выполнение тестирования для единицы компиляции.
Тема 9. Поток работ по тестированию системы.
Роль потока работ по тестированию в жизненном цикле программного обеспечения.
Артефакты потока работ: описание архитектуры, набор тестов, процедура тестирования, компонента тестирования, план тестирования, дефекты, оценка теста.
Участники потока работ: проектировщик теста, разработчик компонента, тестировщик интеграции, тестировщик системы.
Деятельности потока работ: планирование теста, проектирование теста, реализация теста, выполнение тестирования интеграции, выполнение тестирования системы, оценка теста.
Преподаватель: Vladimir Romanov