Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование автоматизированных информационных систем на основе о..pdf
Скачиваний:
27
Добавлен:
15.11.2022
Размер:
10.45 Mб
Скачать

Если соответствующая операция класса уже определялась, созда­ вать ее заново не требуется - достаточно выбрать ее из контекстного меню линии сообщения.

На рис. 7.10 представлена ранее созданная диаграмма, содержа­ щая ряд ссылок на операции классов.

7.3. Подведение итогов

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

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

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

7.4.Контрольные вопросы

1.Для чего служат диаграммы последовательностей?

2.Какие виды сообщений выделяют в UML?

3.Возможна ли передача объектом сообщения самому себе?

4.Каким образом можно показать временную задержку при пере­ даче сообщения?

5.Какую роль на диаграммах играет фокус управления?

6.Как правильно оформляются логические ветвления на диа­ грамме последовательности действий?

7.5.Контрольные задачи

1.На каком из вариантов изображено асинхронное взаимодейст вие объектов?

2. Доработайте диаграмму, представленную на рис. 7.3. Необходимо выделить транзакцию в отдельный объект и отобразить

на диаграмме динамическое создание и уничтожение этого объекта.

3. Используя систему Rational Rose, разработайте диаграмму по­ следовательностей для реализации сценария «Добавление новой дис­ циплины» прецедента «Ведение каталога дисциплин».

Сценарий для прецедента следующий:

-сотрудник деканата посредством системы заполняет элек­ тронную форму для ввода новой дисциплины;

-система контролирует корректность введенных данных, вклю­ чая проверку на возможность дублирования уже существующей дис­ циплины;

-система добавляет в каталог новую дисциплину.

Во взаимодействии принимают участие четыре объекта: «Со­ трудник деканата», «Форма», «Контроль» и «Дисциплина».

8.ДИАГРАММА СОТРУДНИЧЕСТВА

8.1.Теоретическая часть

Диаграмма сотрудничества (collaboration diagram) представляет альтернативный способ описания взаимодействия объектов.

Диаграмма сотрудничества акцентирует внимание на организации объектов, принимающих участие во взаимодействии [1]. Построение диаграммы начинается с расположения взаимодействующих объектов в виде вершин графа, а затем в установлении связей в виде дуг между объектами-вершинами этого графа. Каждая связь доопределяется со­ общениями, которыми обмениваются объекты диаграммы.

Объекты изображаются на диаграмме сотрудничества точно так же, как и в случае с диаграммой последовательностей (рис. 8.1).

Рис. 8.1. Элементы диаграммы сотрудничества

Связь (link) является экземпляром произвольной ассоциации. Связь изображается отрезком прямой линии, соединяющей два пря­ моугольника объектов (см. рис. 8.1).

Связь может иметь некоторые стереотипы, которые записывают­ ся рядом с одним из ее концов и указывают на особенность реализа­ ции данной связи. В языке UML для этой цели могут использоваться следующие стереотипы [2]:

- «association» - ассоциация (предполагается по умолчанию, по­ этому этот стереотип можно не указывать);

-«parameter» - параметр метода. Соответствующий объект мо­ жет быть только параметром некоторого метода;

-«local» - локальная переменная метода. Ее область видимости ограничена только соседним объектом;

-«global» - глобальная переменная. Ее область видимости рас­ пространяется на всю диаграмму сотрудничества;

-«self» - рефлексивная связь объекта с самим собой, которая допускает передачу объектом сообщения самому себе. На диаграмме сотрудничества рефлексивная связь изображается петлей в верхней части прямоугольника объекта.

Связи между объектами сопровождаются стрелками, указывающи­ ми направление передачи сообщения. Для обозначения временной по­ следовательности перед названием сообщения может быть поставлен номер. В качестве отображения вложенности используется десятичная

нотация (1 - первое сообщение; 1.1 - первое сообщение, вложенное в сообщение 1; 1.2 - второе сообщение, вложенное в сообщение 1).

На рис. 8.2 приведена диаграмма сотрудничества для примера, опи­ сывающего работу клиента с банком с помощью банкомата (см. разд. 7).

7:транзакция авторизована

12:уведомление

Рис. 8.2. Пример диаграммы сотрудничества

В общем случае строка сообщения может содержать номера пре­ дыдущих сообщений, сторожевое условие, передаваемые аргументы,

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]