Концепция: Фаза развития
Вторая из четырех фаз жизненного цикла проекта, во время которой производится работа с архитектурно-значимыми рисками.
Взаимосвязи
Основное описание

Назначение этой фазы состоит в том, чтобы создать базовую архитектуру системы и предоставить стабильную основу для массового приложения сил по разработке в следующей фазе.

Ниже приведены цели фазы Развития, которые помогают устранять риски, связанные с требованиями, архитектурой, затратами и сроками [KRO03]:

  • Добейтесь как можно более глубокого понимания требований. Having a good understanding of the majority of requirements allows you to create a more detailed plan and to get buy-in from stakeholders. Be sure to gain an in-depth understanding of the most critical requirements to be validated by the architecture.

  • Спроектируйте, реализуйте и проверьте (validate) базовую архитектуру. Спроектируйте, реализуйте и протестируйте каркас системы. Не смотря на то, что функциональность Design, implement, and test a skeleton structure of the system. Although the functionality is not complete yet, most of the interfaces between the building blocks are implemented and tested. This is referred to an executable architecture.

  • Устраните наиболее важные риски и разработайте точный план-график и оценку затрат. Многие технические риски устраняются в результате детальной проработки требований и тщательного проектирования, реализации и тестирования архитектуры. Refine and detail the high-level project plan.

В данной таблице приведены цели и соответствующие каждой цели виды деятельности в фазе Развития:

Цели и виды деятельности в фазе Развития

Цели фазы

Виды деятельности для достижения цели

Добиться детального понимания требований Управление требованиями
Проектирование, реализация, проверка (validate) базовой архитектуры

Определение архитектуры
Разработка решения (для требования)(в контексте)
Проверка правильности сборки

Устранение наиболее важных рисков и составление точного плана-графика и оценки затрат Управление итерацией

Ключевые положения

Количество итераций в фазе Развития зависит, среди прочего, от таких факторов, как то, является ли данный проект разработкой "с чистого листа" или выполняется развитие старого проекта, ведется ли разработка абсолютно новой системы или используются хорошо известные технологии и архитектура, и т.п.

Обычно во время первой итерации необходимо спроектировать, реализовать и протестировать небольшое количество самых критичных сценариев. Это позволит определить, какие архитектура и архитектурные механизмы требуются, и устранить наиболее важные риски. Также необходимо уточнить наиболее "рисковые" требования, требующие внимания на ранних стадиях проекта. Тестирование должно быть достаточным для достижения уверенности, что архитектурные риски устранены.

В последующих итерациях вы будете исправлять то, что оказалось неправильным в предыдущих итерациях. Нужно будет спроектировать, реализовать и протестировать другие архитектурно важные сценарии, обязательно проверяя все основные аспекты системы (архитектурное покрытие), чтобы как можно раньше обнаружить потенциальные архитектурные риски. [KRO03]