Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции / 10_UML_new!!!.ppt
Скачиваний:
1
Добавлен:
11.02.2026
Размер:
5.52 Mб
Скачать

Диаграмма кооперации

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

Кооперация (collaboration) — спецификация

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

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

особенности реализации отдельных вариантов использования или наиболее значимых операций в системе.

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

На диаграмме кооперации размещаются объекты, представляющие собой экземпляры классов, связи между ними, которые в свою

очередь являются экземплярами ассоциаций и сообщения.

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

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

-Связи могут дополняться именами ролей, которые играют объекты в данной взаимосвязи.

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

-Одна и та же совокупность объектов может участвовать в реализации различных коопераций.

-В зависимости от рассматриваемой кооперации, могут изменяться как связи между отдельными объектами, так

ипоток сообщений между ними.

-Именно это отличает диаграмму кооперации от диаграммы классов, на которой должны быть указаны все без исключения классы, их атрибуты и операции, а также все ассоциации и другие структурные отношения между элементами модели

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

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

Диаграмма кооперации

- Диаграммы компонентов(component diagrams)

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

Компоненты сборки и конфигурационного управления обычно представляют собой файлы с исходным кодом, динамически подгружаемые библиотеки, HTML-странички и пр. Компоненты развертывания — это компоненты Enterprise JavaBeans, CORBA, COM и т.д

Компонент изображается в виде прямоугольника с несколькими прямоугольными или другой формы «зубами» на левой стороне.

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

На диаграмме компонентов можно также увидеть пакеты, изображаемые в виде «папок», точнее — прямоугольников с прямоугольными «наростами» над левым верхним углом.

Пакеты являются пространствами имен и средством группировки диаграмм и других модельных элементов UML — классов, компонентов и пр. Они могут появляться на диаграммах классов и компонентов для указания зависимостей между ними и отдельными классами и компонентами.

Иногда на такой диаграмме могут присутствовать только пакеты с зависимостями между ними.