首页/开发/系统分析与架构设计速查/状态机图(State Machine Diagram)
需求分析与建模61 条

状态机图(State Machine Diagram)

描述对象在生命周期内的状态与转换:转换由事件触发、可带守卫条件与动作,含初始伪状态与终止状态,适合订单、工单、设备等有明确状态的领域。

Mermaid 状态图示例

Mermaid 状态图示例
stateDiagram-v2
  [*] --> Created
  Created --> Paid : pay()
  Created --> Cancelled : cancel()
  Paid --> Shipped : ship()
  Shipped --> [*]
四要素源状态、事件[守卫]/动作、目标状态
常见动作entry/ 进入动作、exit/ 退出动作、do/ 持续活动
状态名用业务语言(已支付、已发货),避免用数据库字段值或接口名。

易错点

  • 漏画终止与取消等异常状态,实现时到处补 if 判断
  • 把动作写成大段伪代码,状态机退化成流程说明

数据来源与参考

  • OMG UML 2.5.1 规范
  • David Harel 状态图相关论文(1987)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌