99
Объекты проблемы и соответствующие им диаграммы использования задают общую
архитектурную схему проблемы, в рамках которой осуществляется описание ее
структуры и специфики поведения компонентов, для понимания того, как построена
архитектура системы.
Стиль проектирования архитектуры в рамках унифицированного процесса RUP
состоит в том, чтобы предоставить все виды деятельности, которые команда
разработчиков системы использует на фазах процессов при построении моделей,
способных охватить систему, определить ее структуру и поведение в нотации UML.
В зависимости от модели проектирования ПО (каскадная, спиральная, иерархическая и
др.) созданная на начальном этапе архитектура ПО может расширяться и уточняться
итеративно (например, при изменении требований заказчиком) на последующих этапах,
что способствует получению полной и
надежной архитектуры.
Результат проектирования – архитектура, т.е ее каркас и архитектурная
инфраструктура, содержащая набор компонентов, из которых можно формировать
некоторый конкретный вид архитектурной схемы для конкретной среды выполнения
системы. Заканчивается проектирование описанием архитектуры ПО, в котором
отображены зафиксированные проектные решения, принятые в ходе работы
архитекторов системы, в том числе описание логической
и физической структуры и
данных, а также способов взаимодействия ее объектов.
В состав архитектура системы входят статические и динамические объекты, их связи
и интерфейс между компонентами других архитектурных уровней. В ней
представлены результаты анализа, декомпозиции системы на отдельные подсистемы и
компоненты, а также набор справочников, словарей и т.д. Описание архитектуры
имеет множество представлений, отражающих отдельные аспекты реализации
системы. Каждое представление детализирует проблему и отдельные ее части, а также
их связи и интерфейсы
Современные программные системы являются довольно сложными композициями
разнообразных функций, вместе с тем имеются тысячи модулей, выполненных как
готовые программные продукты, которые могут быть включены в любые программные
системы
для выполнения соответствующих им функций. При этом примитивные
функции могут составлять композиции, которые выполняют определенные
обобщенные функции. Они могут связываться в новые композиции и т.п. Для того,
чтобы совокупность современных готовых к использованию средств можно было
обозреть, введена определенная послойная их структуризация, суть которой состоит в
следующем
На этапе
инженерии требований создается совокупность объектов, которые
привязываются к определенному сценарию для реализации определенных функций в
этом сценарии.
В сложных программных системах количество выделенных объектов может
насчитывать сотни, их композиции не будут иметь выразительного представления,
даже с учетом того, что объекты разных сценариев могут совпадать, и потребуется
дополнительный анализ для их отождествления.
Основными рекомендациями для декомпозиции сложной системы на компоненты или
модули являются: