Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
технология разработки ПО.doc
Скачиваний:
40
Добавлен:
31.03.2015
Размер:
193.54 Кб
Скачать

Диаграммы деятельностей

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

В теоретическом плане ДД – обобщенное представление алгоритма, реализующего анализируемый вариант использования. Основным решением в диаграмме является деятельность (состояние действия), которое изображается, как прямоугольник с закругленными боковыми сторонами (рисунок 1). Состояние действия считается атомарным, действие нельзя прервать и выполняются они за один квант времени, его также нельзя подвергнуть декомпозиции. Если нужно представить сложное действие, которое можно подвергнуть дальнейшей декомпозиции, то используют состояние поддеятельности, изображение состояния поддеятельности показано на рисунке 2 и содержит специальный значок в правом нижнем углу. Фактически в этом случае в данную вершину вписывается имя другой ДД, имеющей свою внутреннюю структуру.

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

Помимо основных вершин в диаграммах деятельностей используются вспомогательные вершины:

- решение (выбор) (ромбик с одной входящей стрелкой и несколькими исходящими)

- объединение (ромбик с одной исходящей вершиной и несколькими входящими)

- линейка синхронизации – есть разделение или слияние. Линейка синхронизации разделения – жирная горизонтальная линия с одной входящей стрелкой и несколькими исходящими, а слияние – жирная горизонтальная линия с несколькими входящими и одной исходящей стрелкой.

- Начальное состояние – черный кружок

- конечное состояние – черный кружок с не закрашенным внешним кружком чуть большего диаметра

ДД позволяют описывать альтернативные процессы, как и в блок-схемах и параллельные процессы, в этом особенность ДД в сравнении с блок-схемами. Для обозначения альтернативных процессов используют вершину решения. Исходящие стрелки помечают сторожевыми условиями ветвления.

С помощью блока решения можно построить и циклические процессы, множественность при активации деятельностей обозначают символом *

Этот символ помещается рядом со стрелкой активации деятельности и при необходимости уточняется надписью вида, например, «для каждой строки». Для обозначения параллельных процессов используют линейки синхронизации, условие синхронизации можно уточнить, указав его на диаграмме. На рисунке 3 показано, что деятельность 1 и деятельность 2 могут выполняться параллельно. На этапе определения спецификации имеет смысл уточнять с помощью диаграмм деятельностей только те варианты использования, краткое описание которых недостаточно для понимания сущности решаемых проблем. ДД можно использовать, либо вместо описания вариантов использования, либо в дополнении к ним.

На рисунке 4 показана диаграмма деятельности, уточняющая вариант использования с названием «выполнение задания системы решения комбинаторно-оптимизационных задач».

На рисунке 5 есть дорожка покупателя и дорожка магазина, разделенные вертикальной линией (параллельные процессы). На этом рисунке приведен пример ДД для описания деятельности покупателя в Интернет магазине. Представлены две точки ветвления: для выбора способа поиска товара и для принятия решения о покупке, присутствуют три линейки синхронизации: верхняя отражает разделение на два параллельных процесса, средняя – разделение и слияние процессов, а нижняя – только слияние процессов. Дополнительно на диаграмме показаны две параллельные дорожки в два параллельных процесса: дорожка покупатели и дорожка магазина, которые разделены вертикальной линией. Каждая дорожка имеет имя и фиксирует область деятельности конкретного лица, обозначая зону его ответственности.