Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры-2модуль-ТРПО.doc
Скачиваний:
95
Добавлен:
21.03.2015
Размер:
1.2 Mб
Скачать

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

Диаграммы деятельности можно применять для описания вариантов использования. Рассмотрим ВИ, связанный с обработкой Заказа. Он заключается в следующем:

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

Диаграмма деятельностей для этого ВИ приведена на рисунке 2.19.

Рисунок 2.19. Получение заказа

На этой диаграмме появился маркер множественности «*». Он показывает, что при получении Заказа нужно выполнить деятельность Проверить Позицию Заказа для каждой строки заказа. За деятельностью Получить Заказ следует один вызов деятельности Проверить Платеж и много вызовов деятельности Проверить Позицию Заказа. Все эти вызовы производятся параллельно. Таким образом, параллельные деятельности могут быть связаны не только с линейкой синхронизации, но и с множественной активизацией. Для множественной активизации нужно показать на диаграмме её основу. В нашем примере это - «для каждой строки заказа». Линейка синхронизации перед деятельностью Выполнить Поставку сопровождается условием. Оно проверяется каждый раз при выполнении входящей в линейку деятельности. Если условие истинно, то выполняется выходная деятельность.

Диаграмма деятельностей не обязательно должна включать явно определенную конечную точку. В данном примере указание конечной точки не дает никакой пользы. Данный пример содержит тупик – деятельность Повторно заказать Позицию. Для диаграммы, не имеющей конечной точки это нормально. У деятельности Проверить Позицию Заказа только один выход, который содержит условие. Если условие не выполняется, то ничего не произойдет – такая ветвь отсутствует. Мы не можем выполнить заказ, пока не пополнится запас на складе. Этой деятельности может соответствовать отдельный ВИ.

Когда производится поставка на склад, мы просматриваем невыполненные заказы, чтобы узнать, какие из них можно удовлетворить. Каждый из поступивших товаров распределяется по соответствующим заказам. После выполнения этих заказов оставшиеся товары направляются на склад. Этот ВИ отражен на диаграмме (рисунок 2.20)

Рисунок 2.20. Получение комплектующей поставки.

Каждый из двух вариантов использования отражает свою часть общей картины. Их можно объединить в одну диаграмму (рисунок 2.21).

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

Рисунок 2.21. Получение заказа и комплектующей поставки