在UML状态机中是否可以有多于一个活动状态

问题描述:

我知道在一个组合状态下可以有正交区域并行运行。 UML状态机中可以有多个活动状态吗?在UML状态机中是否可以有多于一个活动状态

是的,只要运行完成步骤完成,就会有多于1个活动状态。实际上可以有一个活动状态的整棵树:

正如你所提到的,在复合状态的正交区域中可以有活动状态。复合状态也可以递归嵌套。这意味着如果嵌套状态处于活动状态,则其所有祖先也都处于活动状态。因此,正交区域和嵌套复合状态的组合可以导致整个活动状态树。

UML上层建筑规范,V2.4.1解释像这样(564页的章节15.3.11州):

活动状态的配置

在分层状态机器多于 一个状态可以同时处于活动状态。如果状态机处于包含在组合状态中的简单状态,则所有组合状态(直接或间接包含 简单状态)也处于活动状态。此外,由于状态机为 ,该层次结构中的整体和一些组合状态可以是正交的(即,包含区域),所以当前活动的“状态”实际上由以状态树开始的一组树状态表示 根区域的最顶部状态直至最内层活动的 子状态。我们将这种状态树称为状态配置。

可以有,如果你是挑剔的一个例外:

如果终止状态机,当然还有的离开了不活动状态,因此不可能有多个活跃状态,在这一点上。

注意

的UML上层建筑规范,V2.4.1是文件来检查,如果你有这样的问题。