1

我想在 Enterprise Architect 的通信图中实现这样的目标:

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

但我面临两个问题:

  1. 似乎我必须始终在 2 个对象之间建立联系(我不能让 start() 消息突然出现,就像我想要的那样)。
  2. 我无法控制我想要的编号。有什么办法可以让我自己设置编号吗?如果我定义一个演员正在调用 ,当我希望消息 1 成为start()RGController,它将调用它消息 1 User.create()
4

2 回答 2

1

您是否正在尝试绘制使用前端控制器或外观来处理传入请求的架构?如果是这样,那么客户端将调用 start()。例如,对于 ASP.net 应用程序,它将是 UI 代码或表示逻辑。

Client/User/Customer ---start()---> RGBController--- create() ---> u: User

于 2010-06-06T07:42:27.023 回答
1

A) 哪个对象正在向 RGController 发送 start() 消息?将其添加到图表中并在这两个对象之间创建连接。

或者,您可以从 Inital 元素(在活动工具箱中)发送初始消息。

您还可以通过创建一个空的形状渲染脚本来破解一个不可见的开始元素。

只需在 Settings->UML...->Stereotypes 中创建一个新的 Stereotype,将名称设置为 hidden,apply to ,并将形状脚本设置为:

shape main {
}

然后将此原型应用于您的初始元素。它应该呈现为不可见。

B)我不确定如何手动设置消息标签。您知道邮件编号设置吗?

  • 右键单击其中一个消息标签并选择“序列通信消息”。

  • 在 Message Properties->Sequnce Expressions 部分中选中“start new group”。

于 2010-06-06T07:49:24.623 回答