Диаграмма активности UML — как разработать?

СДЕЛАТЬ БРОНИРОВАНИЕ - это действие, в котором говорится следующее:

Клиент связывается с сотрудником службы бронирования по поводу аренды автомобиля.

Клиент указывает необходимые даты начала и окончания, предпочитаемый автомобиль и пункт выдачи.

Сотрудник службы бронирования просматривает файл с ценами и указывает цену. Заказчик согласен с ценой.

Наличие транспортного средства проверяется, чтобы увидеть, доступен ли соответствующий автомобиль в требуемое время в требуемом офисе.

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

Сотрудник по бронированию выдает клиенту номер аренды. Затем в файле аренды создается договор аренды, включая номер аренды, период аренды, тип транспортного средства и пункт выдачи.

Исключения

  1. В пункте самовывоза подходящего автомобиля нет. Клиенту предлагается альтернативный автомобиль.
  2. Клиент не согласен с ценой и просит другой автомобиль и/или период.

Я разработал диаграмму действий для действия выше, но я не знаю, должен ли я поставить вопрос в узле принятия решения или выше в потоке управления? В моем случае согласие на цену должно быть на узле принятия решения или на стрелке потока управления, которая вводит узел?

Кроме того, если вариант использования указывает только условие, например «Если транспортное средство доступно, клиенту предлагается транспортное средство и указывается цена. Если клиент соглашается, инициируется аренда». как выглядит узел принятия решения?

Кроме того, что, если есть три разных актера, должна ли быть дорожка, представляющая актеров, или диаграмма активности может быть построена без нее?

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

Забронировать


person Max Bummer    schedule 16.03.2013    source источник


Ответы (1)


Я не знаю, должен ли я поставить вопрос в узле принятия решения или выше в потоке управления?

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

Кроме того, если вариант использования указывает только условие, например «Если транспортное средство доступно, клиенту предлагается транспортное средство и указывается цена. Если клиент соглашается, инициируется аренда». как выглядит узел принятия решения?

Это выглядит так, как показано на вашем рисунке, но должен быть узел действия для запроса клиента перед узлом принятия решения, потому что единственное назначение узла принятия решения — выбор из нескольких возможных потоков. В рамках выполнения узла решения не выполняются никакие действия.

Узел решения с узлом действия перед

Кроме того, что, если есть три разных актера, должна ли быть дорожка, представляющая актеров, или диаграмма активности может быть построена без нее?

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

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

person Javier    schedule 16.03.2013
comment
Наличие транспортного средства проверяется, чтобы убедиться, что соответствующее транспортное средство доступно в течение необходимого времени в требуемом офисе. Если запрошенное транспортное средство доступно в назначенном пункте выдачи, то оно резервируется для клиента. Запись делается в наличии автомобиля при регистрации бронирования. Я написал это как узел решения, должно ли это быть действие, из которого каким-то образом выходит узел решения? Кроме того, могу ли я написать да- проверить наличие? Например, установить параметр узла принятия решений, а также отправить другое действие в том же потоке управления? - person Max Bummer; 18.03.2013