状态机图
状态机图描述了一个单一对象的行为,并阐述了对象在其生命周期中对事件的响应过程中经历的事件序列。
元素介绍
元素名 | 图标 | 含义 |
|---|---|---|
Initial |
| 用来指明其默认起始位置的伪状态。 |
Choice |
| 选择。 |
Trigger |
| 触发器。是转换的发起者,并被映射到触发的事件。 |
Junction |
| ( 结合状态)作为一个综合转换一部分的伪状态。它在转换执行中不打断运行至完成步骤。 |
Fork/Join |
| (Fork)复杂转换中,一个源状态可以转入多个目标状态,使活动状态的数目增加。 (Join)状态机活动图或顺序图中的一个位置,在此处有两个或以上并列线程或状态归结为一个线程或状态。 |
Deep History |
| 历史状态可以记忆浅历史和深历史。深历史状态记忆组成状态中更深的嵌套层次的状态。要记忆深状态,转换必须直接从深状态中转出。 |
Shallow History |
| 浅历史状态保存并激活与历史状态在同一个嵌套层次上的状态。 |
Entry Point |
| 进入某一状态时执行的动作。 |
Terminate |
| 结束。 |
State |
| 对象的生命中的满足一定条件,执行一定操作,或者等待某事件的条件或者情况。 |
Signal |
| 对象之间异步通讯的声明。信号可以带有表示为属性的参数。 |
StateMachine |
| 状态机是展示状态与状态转换的图。通常一个状态机依附于一个类,并且描述一个类的实例对接收到的事件所发生的反应。 |
Final |
| 组成状态中的一个特殊状态,当它处于活动时,说明组成状态已经执行完成。 |
Synch |
| 一个特殊的状态,它可以实现在一个状态机里的两个并发区域之间的控制同步。 |
Exit Point |
| 离开某一状态时执行的动作。 |
Transition |
| 转换用实线箭头表示,从一个状态(源状态)到另一个状态(目标状态),用一条转换线标注。 |
关键元素
状态
状态(State)是关于行为的集合,在与当前时间相关行为完成之前,不会接收和处理新的事件。三种行为包括:
- entry(进入):进入状态时马上执行的行为。
- do(执行):当系统处于状态中时执行的行为或直到状态自然结束。
- exit(退出):当系统离开这个状态时马上执行的行为。
在State元素的属性 > 状态,选择绑定工程树中的活动(Activity)、交互(Interaction)、状态机(StateMachine)三种元素。

触发器
触发器(Trigger)是转换的发起者,并被映射到触发的事件,有四种类型:
Call:选择绑定方法。
Change:自定义文本。
Signal:选择绑定Signal元素。
Time:自定义文本。

连线关系
转换
转换(Transition)是对关联事件的响应,使对象从一个对象转换到另一个状态。配置后页面格式为:触发器[守卫条件]/触发效果。
- 约束配置
触发效果:选择绑定工程树中的活动(Activity)、交互(Interaction)、状态机(StateMachine)三种元素。

- 触发器
名称:选择绑定Trigger元素。
类型:显示Trigger元素的类型。
规格:显示Trigger元素的规格。

建模步骤
- 在状态机图工具栏拖动State元素到画布中命名为Off,拖动Initial元素到图中并使用Transition连接。

- 创建State元素命名Operate,使用Transition进行连接。

创建Trigger元素命名为start,Transition连线右键属性,触发器选择绑定start。

- 参考示例创建元素完成状态机图。
此状态机图用于描述车辆制动过程中的状态。Initial使车辆从Off状态过渡到Operate(on)状态的触发器。



















