从UML序列图中的成员方法调用外部方法

时间:2012-08-10 12:07:31

标签: uml sequence-diagram

EXAMPLE DIAGRAM

您好,

我对UML不是很有经验,所以这可能是一个非常简单的问题。如何从成员方法调用中描述对不同类的方法调用?或者我应该表明这一点?

例如,Foo类有一个“FooMethod”。 Class Bar有一个“BarMethod”。 Foo调用FooMethod,它在返回之前调用BarMethod。

为了表明这一点,我在Foo的生命线中绘制了一个自我方法调用。然后我在Foo的自我调用的开始和结束之间的差距中绘制了一个方法调用Bar。顶部链接中的图表描述了这种情况。这是对的吗?

由于

1 个答案:

答案 0 :(得分:2)

首先,我认为有一些链接是相关的:

self message(non recursive) vs self recursive message

Difference between types of messages in sequence diagrams

Drawing Call Flow with sequence Diagram leads to ambiguity

这就是我要绘制你想要建模的东西:

Example Sequence Diagram with 'recursive' message

如果你阅读了许多UML教程,你会发现UML并不是一门精确的科学(尽管应该是这样),而且还有很多解释。更糟糕的是,不同的工具可以为您提供相同概念的不同实现。因此,两个图可能看起来完全不同,但模拟组件之间的相同交互。

例如,对于同步调用,返回消息是可选的:

uml 2.0 sequence diagram: is a reply message obligatory when modeling a synchronous message

我的示例显示了“递归”消息的返回行。但这可能会被忽略。