Читаем Rational Rose 2000 и UML. Визуальное моделирование полностью

Каждый раз, когда я веду занятия, у слушателей возникает вопрос: «Насколько сложной может быть диаграмма последовательности действий?» Я отвечаю всегда одинаково: «Сохраняйте ее простой». Прелесть этой диаграммы в ее простоте — можно легко понять и увидеть объекты, взаимодействия объектов, сообщения между ними и функциональность, задаваемую сценариями.

Следующий вопрос выглядит так: «Что делать с условной логикой?» (с логикой ЕСЛИ-ТО-ИНАЧЕ, которая существует в реальном мире). Ответ на него также субъективен. Если логика проста и требует небольшого количества сообщений, я обычно добавляю ее к одной диаграмме и использую примечания и скрипты для указания выбора, который нужно сделать. С другой стороны, если логика ЕСЛИ-ТО-ИНАЧЕ требует сложных сообщений, я обычно рисую отдельные диаграммы: одну для случая ЕСЛИ, одну для ТО и одну для ИНАЧЕ.

Это делается для сохранения простоты диаграмм. Если нужно, их можно связать друг с другом. Это позволит пользователям перемещаться по набору диаграмм.

Для связывания диаграмм в программе Rational Rose:

1. Щелкните по кнопке Note (Сноска) на панели инструментов.

2. Щелкните по диаграмме, чтобы поместить на нее сноску.

3. Выберите в списке браузера диаграмму, которую нужно связать с текущей, и перетащите ее на сноску.

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

Диаграммы взаимодействий

Диаграмма взаимодействий (collaboration diagram) — это альтернативный способ отображения сценариев. Такой тип диаграммы показывает взаимодействие объектов, организованное вокруг них, и их связи друг с другом. Диаграмма взаимодействий содержит:

  объекты, изображаемые в виде прямоугольников;

  связи между объектами, изображаемые в виде линий;

  сообщения в виде текста и стрелки, направленной от клиента к поставщику.

Нотация языка UML для объектов, связей и сообщений на диаграмме взаимодействий показана на рис. 5.10.

Последовательность создания диаграмм взаимодействий из диаграмм последовательности действий в программе Rational Rose:

1. Дважды щелкните по диаграмме последовательности действий в списке браузера, чтобы открыть диаграмму.

2. Выберите команду меню Browse => Create collaboration diagram (Просмотр => Создать диаграмму взаимодействий) или нажмите клавишу F5

.

3. Расположите объекты и сообщения на диаграмме нужным образом.


Рис. 5.10. Нотация языка UML для объектов, связей и сообщений на диаграмме взаимодействий


Диаграмма взаимодействий показана на рис. 5.11.

Можно сначала создать диаграмму взаимодействий. В этом случае диаграмма последовательности действий может быть получена из нее. Для этого необходимо выбрать команду меню Browse => Create Sequence Diagram (Просмотр => Создать диаграмму последовательности действий) или нажать клавишу F5.


Рис. 5.11. Диаграмма взаимодействий

Зачем нужны две разные диаграммы

Диаграмма последовательности действий используется для просмотра сценария во временном порядке: что происходит сначала, что происходит затем. Заказчики легко могут читать и понимать такие диаграммы. Поэтому они очень полезны на стадии анализа. Диаграмма взаимодействий представляет общую картину сценария, так как взаимодействия на ней организованы между связанными друг с другом объектами. Такой тип диаграмм чаще используется на этапе проектирования, когда планируется реализация отношений.

Диаграмма последовательности действий для системы регистрации курсов

Продолжим анализ сценария добавление учебного курса (Add a Course Offering). Диаграмма показана на рис. 5.12.


Рис. 5.12. Диаграмма последовательности действий для сценария добавление учебного курса


Диаграммы классов могут быть также прикреплены к реализациям прецедентов. Они содержат представления классов, участвующих в выполнении прецедентов (participating classes).

Последовательность создания представления участвующих классов в программе Rational Rose:

1. Щелкните правой кнопкой мыши по реализации прецедента в окне браузера.

2. В появившемся контекстно-зависимом меню выберите команду New => Class Diagram (Создать => Диаграмма классов).

3. Введите имя новой диаграммы.

4. Дважды щелкните по новой диаграмме в списке браузера, чтобы открыть ее.

5. Выберите класс в логическом представлении модели и перетащите его на диаграмму с помощью мыши.

6. Аналогичным образом поместите на диаграмму другие нужные классы.

Участвующие классы для прецедента выбор предметов для обучения показаны на рис. 5.13.


Рис. 5.13. Схема классов, участвующих в прецеденте

Резюме

Перейти на страницу:

Похожие книги

C++: базовый курс
C++: базовый курс

В этой книге описаны все основные средства языка С++ - от элементарных понятий до супервозможностей. После рассмотрения основ программирования на C++ (переменных, операторов, инструкций управления, функций, классов и объектов) читатель освоит такие более сложные средства языка, как механизм обработки исключительных ситуаций (исключений), шаблоны, пространства имен, динамическая идентификация типов, стандартная библиотека шаблонов (STL), а также познакомится с расширенным набором ключевых слов, используемым в .NET-программировании. Автор справочника - общепризнанный авторитет в области программирования на языках C и C++, Java и C# - включил в текст своей книги и советы программистам, которые позволят повысить эффективность их работы. Книга рассчитана на широкий круг читателей, желающих изучить язык программирования С++.

Герберт Шилдт

Программирование, программы, базы данных