Диаграмма кооперации предназначена для спецификации структурных аспектов взаимодействия. Главная особенность диаграммы кооперации заключается в возможности графически представить не только последовательность взаимодействия, но и все структурные отношения между объектами, участвующими в этом взаимодействии.
На диаграмме кооперации в виде прямоугольников изображаются участвующие во взаимодействии объекты, содержащие имя объекта, его класс и, возможно, значения атрибутов. Далее указываются ассоциации между объектами в виде различных соединительных линий. При этом можно явно указать имена ассоциации и ролей, которые играют объекты в данной ассоциации. Дополнительно могут быть изображены динамические связи — потоки сообщений. Они представляются также в виде соединительных линий между объектами, над которыми располагается стрелка с указанием направления, имени сообщения и порядкового номера в общей последовательности инициализации сообщений.
Основные компоненты диаграммы кооперации:
- объекты;
- связи;
- сообщения.
Объект является отдельным экземпляром класса, который создается на этапе реализации модели (выполнения программы)
Мультиобъект представляет собой множество объектов, которые могут быть образованы на основе класса.
n В контексте языка UML объекты делятся на активные и пассивные.
n Активный объект имеет свой собственный поток управления и может инициировать деятельность по управлению другими объектами.
n Пассивный объект оперирует только данными и не может инициировать деятельность по управлению другими объектами. Однако пассивные объекты могут посылать сигналы в процессе выполнения запросов, которые они получают.
n Составной объект предназначен для представления объекта, имеющего сложную структуру и внутренние потоки управления.