一个进程的多个来源

时间:2013-02-19 23:37:22

标签: enterprise-architect sequence-diagram

我在Enterprise Architect中有一个序列图。

这是一个可以由两个来源之一启动的过程:定时器过程或手动过程(用户点击GUI屏幕上的按钮)。

如何在图表中显示?

2 个答案:

答案 0 :(得分:1)

序列图不允许您显示同一操作的两个备用调用。您可以使用导致相同活动的两个不同接收事件在活动图中实现此目的,但在序列图中,您无法将两个消息绘制到相同的序列。

您可以做的是从序列中调用其他序列。

首先绘制流程的顺序,不是显示流程的启动方式,也不显示流程的执行方式,而是仅显示流程中发生的情况。

然后为两个不同的案例绘制两个单独的序列图,并在每个案例中拖动第一个序列图并将其作为“交互发生”。

最后,您从actor向交互事件中绘制一条消息。可以在图中双击该事件,这将打开描述该过程的序列图。

enter image description here

当然,一个相关的问题是,没有标准的方法来显示序列图中的自发事件(超时),因为它们关注于调用者和被调用者之间的交互(通常是级联)。解决这个问题最简单的方法是创建一个演员“时钟”或类似的,让它启动这个过程。

答案 1 :(得分:0)

您可能希望引入一个定时器进程和手动调用通用的接口(或超类),并将其设置为用户,因为调用(我假设)可能会调用相同的基本方法。

如果他们的行为完全不同,我会按照Uffe的建议去创建2个图表。

某些工具还允许在序列图中使用片段(see corresponding help text for Enterprise architect)。 然后你可以使用例如“alt”片段。但请注意给定链接中的建议:“序列图不用于显示复杂的过程逻辑”。