状态机图

状态机图

一、概念

Ⅰ. 活动图、状态图的区别:

活动图将流程分解为一个一个的活动,通过活动的先后顺序来展示流程

状态机图从某个事物的状态是如果变化的角度来展示流程。

Ⅱ. 活动图、状态机图圆角边框的区别

活动图 状态机图
图例 img img
文字表达 采用主动宾或动宾的表达方式,表示某某做什么事情 一般使用形容词或名词,表示某种状态
框框的形状 左右两边框全部都是弧线 只有四个角是弧线

Ⅲ. 转换(Transition)

状态与状态之间的箭头叫转换(Transition),箭头上的文字说明发生了什么事情导致状态发生变化。

转换一般都应该有文字说明,但有例外情况:

  • 不想说明或不好说明转换的具体原因,只想表达状态A可以转换为状态B,那么可以只画箭头,不加说明。
  • 达到该状态后,流程直接进入结束状态,这时只需要画箭头,不用加说明。

二、进阶

Ⅰ. 分支结构

监护(Guard)”,[......],表示某个条件,符合这个条件时走这个分支,这与活动图的监护类似。

  • 状态图表示分支结构的方式就是通过多个转换来表示的,转换还可以加上监护,表明执行这个转换应具备的条件。
  • 如果两个状态的后续处理方式都是一样的,我们就不应该拆分为两个状态,更多的状态可能或带来更多的分支结构,让流程更加复杂,如无必要,状态应该尽量少。

示例:请假申请二级审批

少于等于3天表明经理审批,超过3天还需要部门经理审批。

img

Ⅱ. 常见问题

【问题1】如何克服活动图的思维习惯?(应用状态机图需要记住什么?)

  • 流程是围绕什么事物开展的?
  • 这个事物有怎样的状态?
  • 当一个状态可以转换为两个或以上状态时,这表示分支结构。

【问题2】活动图的泳道状态机图可以用吗?

  • 活动图的每一条泳道,表示当中的活动都是有该泳道所代表的角色发动。
  • 状态机图中的圆角框代表的不是活动,而是某个事物的状态,这个状态是属于该事件的,而不是属于某个角色的,所以泳道在状态机图中不适应。

【问题3】活动图和状态机图只能选中其一吗?

如果流程是围绕某一事物的状态展开的,可首选状态机图。但不代表使用了其中一种另外一种就无法不能用。实际上跟建议使用两种图来分析

两种图分析的好处:

  • 你会对两种图有更深刻的认识,让你更加娴熟地应用这两种图。
  • 两种图是两种角度,用两种角度来分析问题,会有相得益彰的效果,让你分析问题更加全面透彻。

三、复杂的状态机图

Ⅰ. 状态机图的实践建议

  • 流程围绕某一事物展开时,可考虑使用状态机图来分析。
  • 不管用什么图来分析流程,都必须清楚流程的目的是什么,有什么角色参与,这些角色如何推动流程的发展?
  • 针对该流程的目的,列出流程中存在的问题。
  • 确定流程围绕说明事物展开,思考该事物在流程不同阶段有说明状态,状态为什么会发生变化?
  • 尝试用状态机图表达出当前流程的情况。
  • 根据流程的目的和当前存在的问题,思考状态应该如何调整。适当地增加、减少状态,引入适当的状态转换,可能会简化问题,达到流程的目标。
  • 用状态机图绘制出优化后的流程。

Ⅱ. 实践

img

img

根据上述描述所创建的缺陷管理状态机图

img

图中任未解决的问题:

  • 项目经理会指派缺陷给某位开发人员修改吗?
  • 对于某些缺陷,测试人员与开发人员意见不一致时,如何处理?

四、练习

Ⅰ. 增加“草稿”状态,重新绘制请假申请两级审批状态机图。

img

Ⅱ. 用活动图表达出缺陷管理流程,并且和状态机图做比较,列出你的心得

posted @ 2020-05-03 22:22  闰土与喳  阅读(1198)  评论(0编辑  收藏  举报