活动图和时序图有什么区别?

57
我正在学习UML,但是我感到困惑。活动图和序列图有什么区别?我还没有抓住关键点。

3
请参阅 http://www.uml-diagrams.org/sequence-diagrams.html 和 http://www.uml-diagrams.org/activity-diagrams.html。这些网页提供了有关时序图和活动图的详细信息。 - qwerty_so
5个回答

48

它们都是行为图,但侧重点不同。

  • 活动图擅长描述控制从一个活动流向另一个活动,尤其擅长条件结构、循环和并发逻辑。
  • 序列图擅长描述消息从一个对象流向另一个对象的顺序,以及它们的消息/事件如何按照时间顺序交换。

请注意,序列图也可以使用保护符来表示条件、循环和并发,但它们不如活动图直观和方便。


37

活动图表示用例的流程。但是,时序图根据时间表示类或对象之间的交互。因此这两个图之间存在差异。

在转到活动图之前,需要绘制用例图。使用用例(系统行为)图可以识别出活动(行为)。

然后您需要绘制活动图以显示行为的流程。

然后您需要确定类并绘制类图。

使用类图,您可以绘制序列图以显示类之间的交互。

  1. 用例图
  2. 活动图
  3. 类图
  4. 序列图

5
您好,我想知道您对这个答案的有效性有多少信心?如果正确,它是一个相当简明扼要且有用的总结,但是当事情看起来过于美好/轻松时,我倾向于谨慎使用。它似乎有道理,但我还在加强学习。谢谢。 - samus
1
通过使用类图,您可以绘制序列图,以展示类之间的交互。嗯,其实您不需要携带完整类图的负担,速记应该就足够了,但我理解您的意思(首先需要识别类)。 - samus

21

活动图专注于行为中的操作

顺序图专注于行为中对象之间的交互(通信)。


1
相同的PDF,但具有可搜索的文本(而不是图像页面)https://resources.sei.cmu.edu/asset_files/TechnicalNote/2002_004_001_13934.pdf - dthal

2
看起来,序列图的主要区别在于演员在系统中执行信息流的顺序。活动图强调活动之间的工作流程GeeksforGeeks 上有详细介绍。

-3

一般而言:

  • 活动图 - 我们用它来建模代码过程(“步骤”)(我们使用活动作为抽象步骤或任务作为详细的过程步骤)

  • 交互图 - 我们用它来建模对象通过接口进行通信的一系列交互


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接