如何在UML序列图中表示监听器

时间:2011-09-26 11:45:03

标签: java uml listener sequence diagram

在序列图中,您将如何表示事件触发的侦听器? 它不仅仅是一个常规的方法调用,所以这样的显示似乎不正确。

我尝试制作包含JMS侦听器的系统的序列图。我可以通过系统的send()调用启动生命线到JMS队列(显示系统调用send()作为业务角色),或者我可以在onMessage()调用时启动生命线。 (将JMS队列显示为业务角色) 或者我应该忽略图中的整个JMS队列?

为了它的价值:我正在使用Astah Community来创建图表。

2 个答案:

答案 0 :(得分:1)

如果您使用“事件”或显式“方法调用”,通常并不重要。 您的观众是什么?您如何为JMS水箱建模?我认为JMS Listener只是另一个演员,如果你的观众处于“需求”级别,我只会使用一个事件(序列图中的消息通常可以是各种“类型”,如事件,消息或方法呼叫)。

答案 1 :(得分:0)

找到的消息是已知接收事件发生的消息,但没有(已知的)发送事件发生。我们将此解释为是因为消息的来源超出了描述的范围。例如,这可能是我们不想详细描述的噪声或其他活动。语义只是trace(receiveEvent)

丢失的消息是已知发送事件发生的消息,但没有接收事件发生。我们认为这是因为消息从未到达目的地。语义只是跟踪(sendEvent)。