如何可视化业务流程
如何可视化一条业务流程:选出能回答你们那个问题的视图——顺序、归属、时间还是例外——并由同一个来源生成它,而不是画四张图。
运作方式
先把问题写下来
一句话:看完这个之后,一个人应该能回答什么?“一份订单的时间花在哪里?”和“谁审批一批货的放行?”会画出两张不同的图,而先把问题问出来,正是让你们不至于两张都做、又两边都不讨好的关键。
选出能回答它的最小视图
关于顺序的问题不需要泳道。关于归属的问题需要泳道,但不需要耗时。不要因为工具支持就多加一个维度——每多一层,都要花掉读者身上那份答案本来需要的注意力。
把它做成一行行数据,视图才便宜
在 QueryChart 里,图表就是一张表:步骤、连接、形状,以及两个泳道列。加上或去掉归属这一维度,是改一列,而不是重画一遍——正是这一点,让做第二个视图成为一件合理的事,而不是一个项目。
把时间标在交接处
当问题是关于时长时,请在泳道之间的跨越处加注数字,而不是给每一个步骤都加。在几乎每一条业务流程里,团队之间的排队时间都大于实际作业时间,而把数字放在排队发生的地方,会让这一点立刻可见。
把例外画出来,或者说明你们没画
如果你们是有意只画顺利路径——比如为了一份培训材料——请在图上注明。一张没有注明的顺利路径图,日后会被当作流程本身来用,而用它的人通常正在决定人员编制。
发布一个链接,而不是五份导出
把图表分享出去,而不是把一张图片贴进演示文稿。导出的图片正是让四个视图变成四个版本的那套机制,每一个都冻结在某人需要它的那一天。
常见问题
可视化业务流程最好的方式是什么?
从问题出发。如果要的答案是关于先后顺序的,一张流程图就够了。如果是关于责任或交接的,就用泳道。如果是关于失效路径的,就把每个决策不顺利的那条路都画到一个真正的结论。如果是关于时间的,就在交接处加注数字,而不是另画一样东西。最好的可视化,是能回答所提问题的那个最小的可视化,并且它建立在一个日后还能生成其他视图的来源之上。
可视化流程应该用 BPMN 吗?
只有当下游确实有东西要读它时才用。BPMN 的精确性——带类型的事件、网关、消息流——在一个工作流引擎或一个集成项目要读这个模型时是有价值的。而对于一张给人读的图,这种精确性是一项税:这套记法必须先教,而没被教过的读者只能猜。大多数业务流程用泳道、普通形状和写明名称的决策来表达会更合适。
怎样做出一张人们真的会用的流程图?
把它控制在一屏之内,只回答一个问题,并且把它放在工作实际发生的地方,而不是一个文档文件夹里。然后让它保持现行:流程图之所以没人用,几乎从来不是因为看不懂,而是因为大家已经学会了这张图是过期的。一张在流程变化时会被改的图会被查阅;一张三月份很完美的图不会。
一份流程可视化应该有多少细节?
够回答那个问题就好,不要更多,并且保持同一个颗粒度。十五到二十五个步骤能放进一屏,也能留在读者脑子里。当确实还有更多要说时,请链接一条子流程,而不是把字号调小——一张必须放大才能读的图,早就已经不是一份可视化了。