Шаг 230.
Унифицированный язык моделирования UML.
Моделирование архитектуры системы

    На этом шаге рассмотрим типичные приемы моделирования архитектуры системы в UML.

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

    Для моделирования архитектуры системы необходимо:

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


    Рис.1. Моделирование архитектуры системы

  2. Специфицировать контекст системы, включая окружающие ее действующие лица.

    При необходимости декомпозировать систему на элементарные подсистемы.

    При моделировании системы в целом и ее подсистем вам понадобится:

  1. Специфицировать представление системы с точки зрения вариантов использования, которые описывают поведение системы, каким оно представляется конечным пользователям, аналитикам и тестировщикам. Для моделирования статических аспектов применить диаграммы вариантов использования, а для моделирования динамических – диаграммы взаимодействия, состояния и деятельности.
  2. Специфицировать представление системы с точки зрения проектирования, куда входят классы, интерфейсы и кооперации, формирующие словарь предметной области и предлагаемого решения. Для моделирования статических аспектов применить диаграммы классов и объектов, а для моделирования динамических – диаграммы взаимодействия, состояний и деятельности.
  3. Специфицировать представление системы с точки зрения взаимодействия, куда входят потоки, процессы и сообщения, формирующие механизмы параллелизма и синхронизации в системе. Использовать те же диаграммы, что и для представления проектирования, но основное внимание уделить активным классам и объектам, которыми представлены процессы и потоки, а также сообщениям и потоку управления.
  4. Специфицировать представление системы с точки зрения реализации, куда входят артефакты, используемые для сборки и выпуска физической системы. Для моделирования статических аспектов использовать диаграммы артефактов, для моделирования динамических – диаграммы взаимодействия, состояний и деятельности.
  5. Специфицировать представление системы с точки зрения размещения, куда входят узлы, формирующие топологию аппаратных средств, на которых работает система. Для моделирования статических аспектов применить диаграммы размещения, а для моделирования динамических – диаграммы взаимодействия, состояний и деятельности.
  6. Смоделировать архитектурные образцы и образцы проектирования, формирующие перечисленные модели, с помощью коопераций.

    Необходимо понимать, что системная архитектура не рождается сразу, под влиянием моментального озарения. Хорошо структурированный процесс применения UML подразумевает последовательное (итерационное и пошаговое) уточнение архитектуры на основе анализа вариантов использования.

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

    На следующем шаге рассмотрим типичные приемы моделирования системы систем в UML.




Предыдущий шаг Содержание Следующий шаг