流程图和UML活动图有什么区别?

20

我知道活动图是:

  1. 更简单;
  2. 更标准化;
  3. 支持并发流程。

与流程图相比。

但除了上述原因之外,使用活动图而不是流程图的可能原因是什么?

4个回答

24

活动图并不比流程图简单。流程图是活动图的一个更简单(早期)版本。

流程图比活动图早发明至少20年,常用于由非程序员记录工作流程。任何需要人们做出决策的业务过程都可以描述为一个流程图。例如,一个负责处理复杂信息文件的职员可能在墙上贴有流程图。

因为流程图是活动图的子集,所以实际上没有必要做出决策。如果需要添加更复杂的描述,流程图自然会演变成活动图。

Sparx提供了一份很好的解释,介绍了在活动图中可以描述的范围。


这里没有提到UML 2活动图与着色彼得里网的相似之处。我本来想回答,但手头没有相关信息。 - Jim L.
@JimL 我猜状态图更相关于Petri网。而AD是另一个后代。虽然我没有我的真相来源;-) - qwerty_so
你说流程图是活动图的子集,而user2864740则认为活动图是流程图的子集。个人认为后者更合理,因为你自己也说过流程图先于活动图出现 - 如果后者出现得更晚,那么流程图怎么可能成为活动图的一种类型呢? - Lou
流程图是活动图的“子集”,因为它具有更简单的语义。活动图是在UML中创建的,用于填补相同的角色。 - Andy Dent

10

一个UML活动图"流程图"的一种,带有额外的细节和功能。没有所谓的"UML流程图"。如果使用UML,则为活动图; 如果使用其他内容,则使用其他内容。

【UML】活动图是支持选择、迭代和并发的逐步活动和操作工作流程的图形表示形式。

可以将活动图视为一种流程图。

不管好坏,UML都是一种标准化。这很好,因为它被“标准化”,但也意味着它并不适用于所有任务:所选的“流程图”模型(及其扩展)可能更适合特定问题/领域。


这个答案是否已经过时了近15年,是关于UML 1的? - Jim L.
第一个链接说的是UML 1。 - Jim L.
“UML活动图是流程图的一种”这句话不是反过来吗?也就是说,流程图是UML活动图的一种类型? - Mehdi Charife

1
活动图使用泳道将协作中涉及的对象分配职责。因此,该图清楚地显示了每个对象在协作中需要完成的工作。

0
流程图和活动图都用于展示工作流程,但活动图通过泳道概念可以为对象分配责任。

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