预订演示
前页 后页

历史

A History State used in StateMachine diagrams modeled using Sparx Systems Enterprise Architect.

描述

UML中定义了两种历史伪状态:浅历史和深历史。 A历史子状态用于表示复合状态最近活跃的子状态;如果存在,则此伪状态不会递归到此子状态的活动配置中。可以A单个连接器来描述默认的浅历史状态,以防从未输入过复合状态。

相比之下,深层历史A状态反映了复合状态的最新活动配置。这包括所有区域的活动子状态,并递归到这些子状态的活动子状态(如果它们存在)。复合状态中只能存在一个深历史和一个浅历史。您可以使用“高级”元素上下文菜单将浅历史子状态重新分配为深层历史子状态。

An example of using a Composite State and a History State in a StateMachine modeled in Sparx Systems Enterprise Architect.

工具箱icon

History element

了解更多

OMG UML规范:

OMG Unified Modeling Language规范 (v2.5. 1 , p.309) 指出:

状态历史的概念是由大卫哈雷尔在最初的状态图形式主义中引入的。这是一个与复合状态区域相关联的便利概念,其中区域跟踪它上次退出时所处的状态配置。这允许轻松返回到相同的状态配置,如果需要,下一次区域变为活动状态(例如,在从处理中断返回之后),或者如果存在本地转移

回到它的历史。

提供了两种类型的历史伪状态。

深度历史(区域)代表最近访问包含区域的完整状态配置。效果和转移

一样转移

终止于状态Pseudostate 相反,终止于保留状态配置的最内层状态,包括执行沿途遇到的所有入口行为。

浅历史(状态)表示只返回最近状态配置的最顶层子状态,使用默认进入规则进入。