Архитектор программного обеспечения предлагает технические детали и порядок выполнения итераций путем выбора
набора сценариев и вариантов использования для анализа и проектировки. Техническое предложение дополняется и уточняется
разными группами разработки с учетом загруженности сотрудников, требований заказчика к конечным продуктам, доступности
инструментов и продуктов COTS, а также требований других проектов.
Сценарии и варианты использования, имеющие важное значение для архитектуры, выбираются в соответствии с набором
рассмотренных ниже ключевых факторов.
-
Уровень выгоды заинтересованных лиц от этого сценария: критический, важный, полезный.
-
Воздействие сценария на архитектуру: нет, расширяет, изменяет. Критически важные варианты использования могут
оказывать незначительное влияние на архитектуру, тогда как варианты с низкой рентабельностью могут в значительной
степени воздействовать на архитектуру. Варианты использования с низкой рентабельностью и значительным воздействием
на архитектуру должны проверяться руководителем проекта на предмет удаления из проекта.
-
Уменьшаемые риски (производительность, доступность продукта и приемлемость компонента).
-
Проверка всей архитектуры (в конце этапа уточнения каждый компонент программного обеспечения должен быть описан в
представлении реализации).
-
Прочие стратегические цели или ограничения: демонстрация пользователям и т.д.
Разные сценарии могут относиться к одному и тому же компоненту и учитывать аналогичные риски. Если сначала реализовать
сценарий A, то сценарий B не будет иметь важного значения для архитектуры. Если сначала реализовать сценарий B, то
сценарий A не будет иметь важного значения для архитектуры. Таким образом, эти атрибуты могут зависеть от порядка
итераций и требуют повторного рассмотрения в случае внесения изменений в порядок или требования.
Если варианты использования, имеющие важное значение для архитектуры, описаны недостаточно подробно или с большой
вероятностью могут быть изменены, их следует передать для уточнения и стабилизации. В некоторых случаях перед
реализацией требования может потребоваться дополнительный анализ. В других случаях оптимальным образом подходит
определение прототипов.
|