如何制作决策流程图
如何制作决策流程图:把每个决策写成一个问题,让出口穷尽且互斥,把判定标准写在图上,并给每一种结果一个结束。附缺陷分级实例演示。
运作方式
先列问题,再列答案
把流程里包含的每一次选择都写成问题。然后按“各自能省掉多少工作量”排序:用最小的力气关掉最多事项的那个问题排在最前。把昂贵的问题问在最前面的分级图,浪费掉的正是它本来要节省的那些力气。
让每个问题都答得上来
确认读者能用眼前已有的东西回答它。“这是重复的吗?”在有一个可搜索的缺陷跟踪系统时是成立的;“这是已知问题吗?”则不成立,除非图上写明已知问题记录在哪里。
把判定标准写在决策本身上
把门槛写进该步骤的备注里:什么样的缺陷算严重、什么算充分的证据、多大金额会触发那道额外的审批。没有写明标准的决策,产出的是看起来一致的图和实际上并不一致的决策。
检查出口覆盖每一种情况——且只覆盖一次
对每个决策自问:有没有哪一种处境不匹配任何一条出口?有没有哪一种同时匹配两条?两者都是缺陷。三路分支完全没问题——标准、常规、紧急——只要每一种情况恰好落在一处。
如实地画出回环
评审不通过、验证不通过、关闭后又重开:它们各自都在某个特定步骤上回到流程之中。假装工作是线性的,正是让估算最后描述出一个谁也没经历过的流程的原因。
拿真实案例来检验
取上个月走完这个流程的十个事项,逐个放进图里走一遍。那些走不通的事项,会告诉您缺了一条出口,或者某条标准其实只存在于某个人的主观判断里。
常见问题
什么是决策流程图?
一种结构以决策点为主、而非以顺序活动为主的流程图:每个菱形提出一个问题,每条标注过的出口通向不同的处理方式。分级、资格审查、升级规则和审批路由,都属于决策流程图。真正把它们区分出来的设计约束是:每个决策的各条出口必须把每一种情况恰好覆盖一次,这样任何按图行事的读者都会走到同一个结果。
一个决策可以有两个以上的结果吗?
可以,只要这些结果穷尽且互斥。一个变更申请分成标准、常规、紧急,就是一个干净的三路决策。真正会带来麻烦的,是带五六条出口的决策,它往往其实是套在一个菱形里的两个决策——拆成两个之后,两个都更好回答,日后也更容易修改。
决策标准应该写在哪里?
写在决策本身上,而不是附录里。在 QueryChart 中,每个步骤都带一个备注字段,门槛、定义或对制度条款的引用就该写在那里。放在另一份文档里的标准,只会被查阅一次、被大致记住、然后被不一致地使用——这正好抵消了把决策记录下来的全部意义。
怎样表示一个回跑的决策?
把这条出口指向它所返回的那个步骤的行号。代码评审不通过退回开发,或者验证不通过重开缺陷,两者都只是一条连回图中间的连线。回环是正常的,把它们画出来,正是让决策流程图对流程真实包含多少返工保持诚实的方式。