Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kratkaya_versia_2.docx
Скачиваний:
37
Добавлен:
19.09.2019
Размер:
1.12 Mб
Скачать

38.Диаграмма композитной структуры: композитные классы и их части, принципы построения

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

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

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

Соединитель – отношение, которое обеспечивает взаимосвязь или коммуникацию между двумя или более экземплярами классификаторов. Соединитель, по сути, является экземпляром ассоциации и может иметь имя.

Рисунок 2 – Изображение композитного класса с частями

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

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

Нотация порта: а) – обычный порт, б) – порт поведения

39.Диаграмма композитной структуры: кооперации и их использование

Для объяснения как работает система или некоторая ее подсистема в языке UML используется кооперация, которая позволяет определить поведение системы в терминах взаимодействия ее участников.

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

Изображение внутренней структуры кооперации

Во втором случае элементы кооперации присоединяются к эллипсу сплошными линиями с указанием ролей.

Рисунок 7 – Альтернативное представление кооперации

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

Рисунок 8 – Применение кооперации представляет поведение класса

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]