StateChart和Activity Diagram之间的区别

时间:2011-04-05 22:09:43

标签: uml diagram activity-diagram statechart

我真的无法理解这两个图之间的真正区别。我的意思是这两个交易都是“状态”,但我不确定是什么处理什么?

4 个答案:

答案 0 :(得分:28)

看起来似乎如此。但区别在于,活动图描述了活动,状态图描述了状态。所以这些模型是正交的 - 你可能会想象两个状态之间存在一种活动(在转换过程中出现的某些状态),你可能会说两个活动之间存在状态。这是一个简化,但我认为它可能足以解释差异,这主要是焦点,两个图都用于描述行为。

答案 1 :(得分:13)

活动图是状态图表的特例,其中状态是活动(“功能”) 两种状态:
- 行动状态:
- 不能再进一步分解。
- 关于模型中使用的抽象级别“瞬间”发生

- 活动状态:
- 可以进一步分解
- 活动由另一个活动图表

建模

试一下电梯。
状态图表可能包含以下状态:
进入,静止,退出,到达。

这些状态转换是由活动图事件引起的。

活动图中的事件可能是:
走进电梯,按下按钮纠正地板,走出电梯。

我想说这两个图相互重叠。

答案 2 :(得分:4)

活动图用于记录单个操作/方法的逻辑,单个用例或业务流程的逻辑流程。它等同于结构化开发的流程图和数据流程图。 状态图描绘(显示)对象的状态,因为它们的属性从状态变为另一个状态。状态图建模用于显示对象经过的状态序列,导致从一个状态转换到另一个状态以及状态更改导致的操作。

答案 3 :(得分:1)

活动图是没有触发(事件)机制的函数流,状态机由触发状态组成。