12.6. Разработка диаграммы состояний в среде Rational Rose
Переходя к рассмотрению диаграммы состояний, следует отметить, что в среде Rational Rose этот тип диаграмм относится только к отдельному классу. Для того чтобы построить диаграмму состояний для класса, его вначале необходимо создать и специфицировать. После этого выделить на диаграмме классов или в браузере. Начать построение диаграммы состояний для выбранного класса можно одним из следующих способов:
• Раскрыть логическое представление в браузере (Logical View), выделить рассматриваемый класс и выбрать пункт контекстного меню Open State Diagram (Открыть диаграмму состояний), раскрывающегося по щелчку правой кнопкой мыши.
• Через пункт меню Browse-»State Diagram (Браузер-»Диаграмма состояний).
После выполнения указанных действий в окне диаграммы появится чистое изображение для размещения элементов этой диаграммы, выбираемых с помощью специальной панели инструментов (рис. 12.12).
![Самоучитель UML pict_146.jpeg](https://litlife.club/books/133827/read/images/pict_146.jpeg)
Рис. 12.12. Внешний вид специальной панели инструментов для диаграммы состояний
Как видно из этого рисунка, в среде отсутствуют некоторые из рассмотренных ранее элементов диаграммы состояний. Процесс добавления и удаления состояний и переходов на диаграмму состояний аналогичен этим же действиям с элементами других диаграмм. Ниже приводится пример построенной диаграммы состояний (рис. 12.13).
После добавления состояния или перехода на диаграмму состояний можно открыть спецификацию выбранных элементов и определить их специальные свойства, доступные на соответствующих вкладках. При необходимости можно визуализировать вложенность состояний и подключить историю отдельных состояний.
![Самоучитель UML pict_147.jpeg](https://litlife.club/books/133827/read/images/pict_147.jpeg)
Рис. 12.13. Пример графического изображения диаграммы состояний в среде Rational Rose
12.7. Разработка диаграммы последовательности в среде Rational Rose
Диаграмма последовательности может быть активизирована одним из следующих способов:
• Щелкнуть на кнопке с изображением диаграммы последовательности на стандартной панели инструментов.
• Через пункт меню Browse – Interaction Diagram (Браузер – Диаграмма взаимодействия).
После выполнения указанных действий в окне диаграммы появится чистое изображение для размещения элементов диаграммы последовательности, выбираемых с помощью специальной панели инструментов (рис. 12.14).
![Самоучитель UML pict_148.jpeg](https://litlife.club/books/133827/read/images/pict_148.jpeg)
Рис. 12.14. Внешний вид специальной панели инструментов для диаграммы последовательности
Построение диаграммы последовательности сводится к добавлению или удалению отдельных объектов и сообщений, а также к их спецификации. Доступ к спецификации этих элементов организован либо через контекстное меню, либо через пункт меню Browse – Specification (Браузер – Спецификация). При добавлении сообщений на диаграмму последовательности они получают по умолчанию свой номер в последовательности. Ниже приводится пример построенной диаграммы состояний (рис. 12.15).
![Самоучитель UML pict_149.jpeg](https://litlife.club/books/133827/read/images/pict_149.jpeg)
Рис. 12.15. Пример графического изображения диаграммы последовательности в окне диаграммы среды Rational Rose
При необходимости можно изменить порядок следования сообщений и их спецификацию, а также сопоставить сообщения с операциями. Дополнительно можно устанавливать синхронизацию сообщений, связать с сообщением примечание (комментарий) с помощью скриптов.
12.8. Разработка диаграммы кооперации в среде Rational Rose
Диаграмма кооперации является другим способом визуализации взаимодействия в модели и, как и диаграмма последовательности, оперирует объектами и сообщениями. Особенность работы в среде Rational Rose заключается в том, что этот вид канонической диаграммы создается автоматически после построения диаграммы последовательности и нажатия клавиши
После того как диаграмма кооперации активизирована, специальная панель инструментов приобретает следующий вид (рис. 12.16).
![Самоучитель UML pict_150.jpeg](https://litlife.club/books/133827/read/images/pict_150.jpeg)
Рис. 12.16. Внешний вид специальной панели инструментов для диаграммы кооперации
На этой панели имеются кнопки с пиктограммами объектов и различных типов сообщений. Работа с диаграммой кооперации состоит в добавлении или удалении объектов и сообщений, а также их специфицировании. При этом изменения, вносимые в диаграмму кооперации, автоматически вносятся и в диаграмму последовательности, что можно увидеть, активизировав последнюю нажатием клавиши
Ниже представлен пример диаграммы кооперации (рис. 12.17), которая была автоматически сгенерирована средой после построения диаграммы последовательности (см. рис. 12.15).
![Самоучитель UML pict_151.jpeg](https://litlife.club/books/133827/read/images/pict_151.jpeg)
Рис. 12.17. Пример графического изображения диаграммы кооперации, соответствующей построенной ранее диаграмме последовательности
Как и для диаграммы последовательности, для диаграммы кооперации можно изменять порядок следования сообщений, добавлять потоки данных, определять устойчивость объектов на основе активизации соответствующих спецификаций.
12.9. Разработка диаграммы компонентов в среде Rational Rose
Диаграмма компонентов является частью физического представления модели и играет важную роль в процессе ООАП. Активизация диаграммы компонентов может быть выполнена одним из следующих способов:
• Щелкнуть на кнопке с изображением диаграммы компонентов на стандартной панели инструментов.
• Раскрыть компонентное представление в браузере (Component View) и дважды щелкнуть на пиктограмме Main (Главная).
• Через пункт меню Browse-»Component Diagram (Браузер-»Диаграмма компонентов).
После активизации диаграммы компонентов специальная панель инструментов приобретет следующий вид (рис. 12.18).
![Самоучитель UML pict_152.jpeg](https://litlife.club/books/133827/read/images/pict_152.jpeg)
Рис. 12.18. Внешний вид специальной панели инструментов для диаграммы компонентов
Добавление и удаление элементов происходит аналогично, однако для каждого компонента можно определить различные детали, такие как стереотип, язык программирования, декларации, классы. Работа с этими деталями компонентов осуществляется через спецификацию компонента, доступную после вызова контекстного меню.
Ниже приводится пример графического изображения элементов диаграммы компонентов (рис. 12.19).
При работе с диаграммой компонентов можно создавать пакеты и компоненты, изменять их спецификацию и зависимости между различными элементами диаграммы. При установлении реализации классов на компоненте можно выделить класс в браузере и перетащить его на нужный компонент диаграммы.
![Самоучитель UML pict_153.jpeg](https://litlife.club/books/133827/read/images/pict_153.jpeg)
Рис. 12.19. Пример графического изображения диаграммы компонентов в среде Rational Rose