Диаграмма последовательности
Для моделирования взаимодействия объектов во времени в языке UMLиспользуются диаграммы последовательности. Пример приведен на рисунке 12.
Рисунок 12. Пример диаграммы последовательности
На диаграмме последовательности изображаются только те объекты, которые непосредственно участвуют во взаимодействии.
Графически каждый объект изображается прямоугольником и располагается в верхней части своей линии жизни. Внутри прямоугольника записываются имя объекта и имя класса, разделенные двоеточием. При этом вся запись подчеркивается, что является признаком объекта.
Вторым измерением диаграммы последовательности является вертикальная временная ось, направленная сверху вниз.
Линия жизни объекта (object lifeline) изображается пунктирной вертикальной линией.
Фокус управления изображается в форме вытянутого узкого прямоугольника, верхняя сторона которого обозначает начало получения фокуса управления объекта (начало активности), а его нижняя сторона - окончание фокуса управления (окончание активности).
Сообщения на диаграмме последовательности изображаются горизонтальными стрелками, соединяющими линии жизни или фокусы управления двух объектов.
Диаграмма кооперации
Диаграмма кооперации позволяет графически представить последовательность взаимодействия и все структурные отношения между объектами, участвующими в этом взаимодействии. Пример приведен на рисунке 13.
На диаграмме кооперации в виде прямоугольников изображаются участвующие во взаимодействии объекты, содержащие имя объекта, его класс и, возможно, значения атрибутов; указываются ассоциации между объектами в виде различных соединительных линий.
В отличие от диаграммы последовательности, на диаграмме кооперации изображаются только отношения между объектами, играющими определенные роли во взаимодействии.
Кооперация определяет структуру поведения системы в терминах взаимодействия участников этой кооперации.
Простой класс на диаграмме кооперации обозначается прямоугольником класса, внутри которого записывается строка текста.
Рисунок 13 - Пример диаграммы кооперации
Объект (object) является отдельным экземпляром класса, который создается на этапе выполнения программы.
Связь на диаграмме кооперации изображается отрезком прямой линии, соединяющим два прямоугольника объектов. Рядом с линией в ее средней части может записываться имя соответствующей ассоциации.
Сообщения на диаграмме кооперации специфицируют коммуникацию между двумя объектами и обозначаются одним из четырех видов стрелок:
- галошная линия с треугольной стрелкой обозначает вызов процедуры или другого вложенного потока управления. Может быть также использована совместно с параллельно активными объектами, когда один из них передает сигнал и ожидает, пока не закончится некоторая вложенная последовательность действий. Обычно все такие сообщения являются синхронными, т. е. инициируемыми по завершении некоторой деятельности или при выполнении некоторого условия;
- сплошная линия с V-образной стрелкой обозначает простой поток управления. Каждая такая стрелка изображает один этап в последовательности потока управления. Обычно все такие сообщения являются асинхронными;
- сплошная линия с полустрелкой используется для обозначения асинхронного потока управления. Соответствующие сообщения формируются в произвольные, заранее не известные моменты времени, как правило, активными объектами. Обычно сообщения этого типа являются начальными в последовательности потока управления и чаще всего инициируются актерами;
- пунктирная линия с V-образной стрелкой обозначает возврат из вызова процедуры. Стрелки этого типа зачастую отсутствуют на диаграммах кооперации, поскольку неявно предполагается их существование после окончания процесса активизации некоторой деятельности.
Диаграмма компонентов
Для физического представления моделей систем используются диаграммы реализации (implementation diagrams), которые включают в себя диаграмму компонентов (рисунок 14) и диаграмму развертывания (рисунок 15).
Рисунок 14 - Пример диаграммы компонентов
Рисунок 15 - Пример диаграммы развертывания
Диаграмма компонентов описывает особенности физического представления системы. Основными графическими элементами диаграммы компонентов являются компоненты, интерфейсы и зависимости между ними.
Графический компонент - прямоугольник со вставленными слева двумя более мелкими прямоугольниками. Внутри большого прямоугольника записывается имя компонента и, при необходимости, некоторая дополнительная информация.
Интерфейс графически изображается окружностью, которая соединяется с компонентом отрезком линии без стрелок. Имя интерфейса должно начинаться с заглавной буквы I и записываться рядом с окружностью.
Зависимость служит для представления только факта наличия такой связи, когда изменение одного элемента модели оказывает влияние или приводит к изменению другого элемента модели. Отношение зависимости на диаграмме компонентов изображается пунктирной линией со стрелкой, направленной от клиента (зависимого элемента) к источнику (независимому элементу).