Вопрос: Диаграммы связи Enterprise Architect

Я хочу достичь чего-то подобного в диаграммах коммуникации Enterprise Architect:

   start()    ----------------    1. create()   ------------
------------> | RGController | ---------------> | U : User |
              ----------------                  ------------

Но я сталкиваюсь с 2 проблемами:

  1. Кажется, мне нужно всегда устанавливать связь между двумя объектами (у меня не может быть сообщения start(), просто появляющегося из ниоткуда, как я бы хотел).
  2. Я не могу контролировать нумерацию так, как хотел бы. Могу ли я просто установить нумерацию самостоятельно? Если я определю, что актер звонитstart() на RGController, это будет называться сообщением 1, когда я хочу, чтобы сообщение 1 было User.create(),

2 ответа

Решение

А) Какой объект отправляет сообщение start() в RGController? Добавьте его на диаграмму и создайте связь между этими двумя объектами.

В качестве альтернативы вы можете отправить исходное сообщение из начального элемента (в панели инструментов "Активность").

Вы также можете взломать невидимый начальный элемент, создав пустой скрипт для рендеринга фигур.

Просто создайте новый стереотип в "Настройки" -> "UML" -> "Стереотипы", установите имя "скрытый", примените к нему и установите скрипт формы следующим образом:

shape main {
}

Затем примените этот стереотип к вашему начальному элементу. Он должен быть представлен как невидимый.

Б) Я не уверен, как вручную установить маркировку сообщения. Вам известны настройки нумерации сообщений?

  • щелкнув правой кнопкой мыши одно из сообщений, можно выбрать "Последовательные сообщения".

  • отметьте пункт "начать новую группу" в разделе "Свойства сообщения" -> "Выражения последовательности".

Вы пытаетесь нарисовать архитектуру, которая использует Front-контроллер или Facade для обработки входящего запроса? Если так, то в этом случае клиент вызовет start(). Например, в случае приложения ASP.net это будет код пользовательского интерфейса или логика представления.

Клиент / Пользователь / Клиент ---start()---> RGBController--- create() ---> u: Пользователь

Другие вопросы по тегам