Динамические модели ооп систем. Диаграммы взаимодействия 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Динамические модели ооп систем. Диаграммы взаимодействия

Диаграммы взаимодействия подразделяются на два основных типа диаграмм: диаграммы последовательности (sequence diagrams) икооперативные диаграммы (collaboration diagrams). Диаграммы последовательности и кооперативные диаграммы несут в себе одну информацию, но выраженную разными способами. Диаграммы последовательности показывают взаимодействие объектов во времени и отражают последовательность происходящих событий. На диаграмме не отражаются связи между объектами. Кооперативные диаграммы позволяют пространственно располагать объекты, для того чтобы лучше представить взаимодействие между объектами. Временная последовательность передаваемых сообщений отражается при помощи нумерации сообщений.

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

Объект на диаграмме изображается в виде прямоугольника на вершине вертикальной пунктирной линии, называемой линией жизни объекта. Если объект уничтожается не в конце диаграммы, то момент его уничтожения помечается большим крестиком "Х". При сообщении, вызывающем уничтожение объекта (или самоуничтожение), в конце возвращается сообщение об уничтожении объекта.

Сообщения (message) связывают объекты между собой и передают информацию о выполняемом действии.

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

Объединенный набор сообщений может быть маркирован как итерация (iteration). Маркером итерации служи символ *.

Переходы (transition) рисуются как многократные стрелки, проведенные в одну точку, помеченные условием перехода. Переход может быть именован.

Диаграммы последовательности полезны для представления параллельных процессов. Для этого в диаграммах последовательности вводятся активации (activation). Активация показывает период времени, в течение которого объект выполняет действия непосредственно или через зависимую процедуру.

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

2. Кооперативные диаграммы (collaboration diagrams) предоставляют возможность пространственно располагать объекты. В отличие от диаграмм последовательности, на кооперативных диаграммах экземпляры объектов показываются в виде пиктограмм. На диаграмме отображаются лишь те объекты, что прямо или косвенно участвуют в выполнении данного варианта использования. Так же как на диаграмме последовательности, линии со стрелкой на конце обозначают сообщения, обмен которыми осуществляется в рамках данного варианта использования. Их временная последовательность, однако, указывается путем нумерации сообщений.

Для пометки различных сообщений могут использоваться следующие типы стрелок:

- Линия с заполненной стрелкой. Обозначает вызов процедуры. Может использоваться также между параллельно работающими активными объектами для посылки сигналов и ожиданий.

- Линия с половинкой стрелки. Асинхронный поток управления. Используется для явного указания на асинхронный обмен сообщениями между двумя объектами.

- Другие разновидности. Могут представлять другие разновидности управления, например, "balking" или "timeout", но они обычно воспринимаются как дополнительные возможности UML.



Поделиться:


Последнее изменение этой страницы: 2024-07-06; просмотров: 39; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.198 (0.006 с.)