На кооперативной диаграмме

advertisement
Лекция № 9. Виды диаграмм
1. Диаграммы взаимодействия
2. Другие виды диаграмм
Вопрос №1
Диаграммы взаимодействия (interaction diagrams)
являются моделями, описывающими поведение
взаимодействующих групп объектов.
Диаграмма взаимодействия охватывает поведение
объектов в рамках только одного варианта
использования. На такой диаграмме отображаются
ряд объектов и те сообщения, которыми они
обмениваются между собой.
Вопрос №1
Существуют два вида диаграмм взаимодействия:
диаграммы последовательности (sequence
diagrams) и кооперативные диаграммы
(collaboration diagrams).
Вопрос №1
На диаграмме последовательности объект
изображается в виде прямоугольника на вершине
пунктирной вертикальной линии. Эта вертикальная
линия называется линией жизни (lifeline) объекта.
Она представляет собой фрагмент жизненного цикла
объекта в процессе взаимодействия. Каждое
сообщение представляется в виде стрелки между
линиями жизни двух объектов.
Вопрос №1
Сообщения появляются в том порядке, как они
показаны на странице — сверху вниз. Каждое
сообщение помечается, как минимум, именем
сообщения; при желании можно добавить также
аргументы и некоторую управляющую информацию
и, кроме того, можно показать самоделегирование.
Вопрос №1
Самоделегирование (self-delegation) - сообщение,
которое объект посылает самому себе, при этом
стрелка сообщения указывает на ту же самую линию
жизни.
Вопрос №1
Вопрос №1
Виды управляющей информации:
1. Условие, показывающее, когда посылается
сообщение. Сообщение посылается только при
выполнении данного условия.
2. Маркер итерации, показывающий, что сообщение
посылается много раз для множества объектовадресатов.
Вопрос №1
Диаграмма может содержать возврат, означающий
не новое сообщение, а возврат из сообщения. На
диаграмме возврат отличается от обычных
сообщений тем, что его стрелка не сплошная, а
имеет вид пары линий.
Вопрос №1
Диаграммы последовательности можно также
использовать для представления параллельных
процессов.
Вопрос №1
Другие элементы диаграммы последовательности:
1. Активизации, появляющиеся явно в том случае,
когда метод становится активным либо во время
его выполнения, либо при ожидании результата
выполнения какой-либо процедуры.
2. Половинные стрелки обозначают асинхронные
сообщения. Асинхронное сообщение не
блокирует работу вызывающего объекта.
3. Удаление объекта показано с помощью
большого знака "X".
Вопрос №1
На кооперативной диаграмме экземпляры объектов
показаны в виде пиктограмм. Как и на диаграмме
последовательности, здесь стрелки обозначают
сообщения, обмен которыми осуществляется в
рамках данного варианта использования. Их
временная последовательность, однако, указывается
путем нумерации сообщений.
Вопрос №1
Вопрос №1
Нумерация сообщений делает восприятие их
последовательности более трудным, чем в случае
расположения линий на странице сверху вниз.
С другой стороны, такое пространственное
расположение позволяет более легко отразить
некоторые другие моменты, например можно
показать взаимосвязь объектов, перекрывающиеся
компоненты или другую информацию.
Вопрос №1
В диаграмме последовательности делается акцент
именно на последовательность сообщений: легче
наблюдать порядок, в котором происходят
различные события.
На кооперативной диаграмме можно использовать
пространственное расположение объектов для того,
чтобы показать их статическое взаимодействие.
Вопрос №2
Диаграммы состояний определяют все возможные
состояния, в которых может находиться конкретный
объект, а также процесс смены Состояний объекта в
результате наступления некоторых событий.
С состоянием можно связывать следующие данные:
• деятельность,
• входное действие,
• выходное действие и
• событие.
Вопрос №2
Вопрос №2
Деятельность (activity) - это поведение,
реализуемое объектом, пока он находится в данном
состоянии.
Деятельность - это прерываемое поведение. Оно
может выполняться до своего завершения, пока
объект находится в данном состоянии, или может
быть прервано переходом объекта в другое
состояние.
Вопрос №2
Деятельность изображают внутри самого состояния;
ее обозначению должно предшествовать слово do
(делать) и двоеточие.
Вопрос №2
Входное действие (entry action) - это поведение,
которое выполняется, когда объект переходит в
данное состояние.
Входное действие также показывают внутри
состояния, его обозначению предшествуют слово
entry (вход) и двоеточие.
Вопрос №2
Выходное действие (exit action) подобно входному.
Однако оно осуществляется как составная часть
процесса выхода из данного состояния.
Выходное действие изображают внутри состояния,
его описанию предшествуют слово exit (выход) и
двоеточие.
Вопрос №2
Переходом (transition) называется перемещение
объекта из одного состояния в другое. На диаграмме
все переходы изображают в виде стрелки,
начинающейся на первоначальном состоянии и
заканчивающейся последующим.
Переходы могут быть рефлексивными. Объект
может перейти в то же состояние, в котором он в
настоящий момент находится. Рефлексивные
переходы изображают в виде стрелки,
начинающейся и завершающейся на одном и том же
состоянии.
Вопрос №2
Событие (event) - это то, что вызывает переход из
одного состояния в другое.
Ограждающие условия (guard conditions)
определяют, когда переход может или не может
осуществиться.
Ограждающие условия изображают на диаграмме
вдоль линии перехода после имени события,
заключая их в квадратные скобки.
Ограждающие условия задавать необязательно.
Вопрос №2
Диаграммы деятельностей особенно полезны в
описании поведения, включающего большое
количество параллельных процессов. Самым
большим достоинством диаграмм деятельностей
является поддержка параллелизма.
Вопрос №2
Диаграммы компонентов показывают, как
выглядит модель на физическом уровне. На них
изображены компоненты программного
обеспечения и связи между ними. При этом на такой
диаграмме выделяют два типа компонентов:
исполняемые компоненты и библиотеки кода.
Вопрос №2
Диаграмма размещения отражает физические
взаимосвязи между программными и аппаратными
компонентами системы. Она показывает
размещение объектов и компонентов в
распределенной системе.
Download