Использование компонентных диаграмм

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

Компонентные диаграммы показывают отношения:

- периода компиляции (среди текстовых компонентов);

- периода сборки, линковки (среди объектных двоичных компонентов);

- периода выполнения (среди машинных компонентов).

Рассмотрим типовые варианты применения компонентных диаграмм.

Моделирование программного текста системы

При разработке сложных систем программный текст (исходный код) разбросан по многим файлам исходного кода.

При использовании Java исходный код сохраняется в .java-файлах.

При использовании C++ — в .h-файлах и .срр-файлах.

При использовании C# — в .cs-файлах.

При использовании Pascal, Delphi – в .pas-файлах.

При использовании PHP – в .php-файлах.

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

 

Рисунок А.14.6 - Моделирование исходного кода

 

Рисунок А.14.7 - Моделирование исходного кода

с использованием пиктограмм

 

Рисунок А.14.8 – Пример диаграммы компонентов

(моделирование исходного кода)

 

Моделирование реализации системы

Реализация системы может включать большое количество разнообразных компонентов:

- исполняемых элементов;

- динамических библиотек;

- файлов данных;

- справочных документов;

- файлов инициализации;

- файлов регистрации;

- сценариев;

- файлов установки.

Моделирование этих компонентов, отношений между ними — важная часть управления конфигурацией системы.

 

Рисунок А.14.9 - Моделирование реализации системы

 

Рисунок А.14.10 - Моделирование реализации с использованием пиктограмм

 

Рисунок А.14.11 – Пример диаграммы компонентов

(моделирование реализации)

 

Диаграммы размещения

Диаграмма размещения (развертывания) — вторая из двух разновидностей диаграмм реализации UML, моделирующих физические аспекты объектно-ориентированных систем. Диаграмма размещения показывает конфигурацию обрабатывающих узлов в период работы системы, а также компоненты, «живущие» в них.

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

Узлы

Узел — физический элемент, который существует в период работы системы и представляет компьютерный ресурс, имеющий память, а возможно, и способность обработки. Графически узел изображается как куб с именем (рисунок А.14.12).

Рисунок А.14.12 - Обозначение узла

 

Как и класс, узел может иметь дополнительную секцию, отображающую размещаемые в нем элементы (рисунок А.14.13).

Рисунок А.14.13 - Размещение компонентов в узле

 

Сравним узлы с компонентами. Конечно, у них есть сходные характеристики:

- наличие имени;

- возможность быть вложенным;

- наличие экземпляров.

Теперь обсудим отличия узлов от компонентов. Во-первых, они принадлежат к разным уровням иерархии в физической реализации системы. Физически система состоит из узлов, а узлы — из компонентов. Во-вторых, у каждого из них свое назначение. Компонент предназначен для физической упаковки и материализации набора логических элементов (классов и коопераций). Узел же является тем местом, где физически размещаются компоненты, то есть играет роль «квартиры» для компонентов.

Отношение между узлом и компонентами, которые он размещает, можно отобразить явно. Отношение зависимости между узлом Контроллер и компонентами Вводы.ехе, Выводы.ехе иллюстрирует рисунок А.14.14. Правда, чаще всего такие отношения не отображаются. Их удобно представлять в отдельной спецификации узла.

 

Рисунок А.14.14 - Зависимость узла от компонентов

 

Группировку набора объектов или компонентов, размещаемых в узле, обычно называют распространяемым модулем.

Для узла, как и для класса, можно задать свойства и операции. Например, можно определить свойства БыстродействиеПроцессора, ЕмкостьПамяти, а также операции Запустить, Выключить.



/li>