从敏捷看板到精益看板

20世纪40年代后期,丰田公司的一群工程师,

发现了在连续流动中进行少量生产的方法。


这种方法,可以像传统的大批量生产者,一批生产大量产品的方法,

一样有效率。


丰台的业务体系就是从这样的创新中发展起来的,

对美国和欧洲现存的汽车生产者提出了挑战。


精益思想背后的理论基础是,利特尔法则

限制在制品(work-in-progress)数量,可以有效的缩短平均等待时间

从而提高产能。


通过把大批量生产改造成流动性生产,

不但可以节省库存成本,而且还可以减少总的供货时间


1. 敏捷看板

看板也是丰田公司发明的,

它是一种可视化的管理系统,

目的是对生产过程做出持续,渐进的改善。


当可视化的表达方式,遇到了敏捷开发,

就衍生出了一种称为“敏捷看板”的概念。



敏捷看板一般由3列构成,

从左到右依次是,TODODOINGDONE

在敏捷团队中,可以清楚的看到每个工作事项所处的状态。


但这样的敏捷看板,其实是不能很好的反映精益思想的。

这是为什么呢?


2. 误解

2.1 对在制品的误解

在制品指的是正在加工,尚未完成的产品。


那么,在敏捷看板上,应该指的是DOING的部分吧,

其实不然。


事实上,所谓在制品,是针对整个产品的所有生产环节而言的,

如果某个产品,需要先A后B,两个具有依赖关系的环节,才能制造出成品。

那么,A做完的那些制品,对B来说才叫做在制品。


这样具有依赖关系的环节,通常称为工序



好,现在我们明白了,

精益思想说减少在制品,并不是说要减少DOING的那部分内容,

而是减少已经完成的制品在各个工序间的积压


减少了积压,前面工序就不用成批送货

后面工序,也就才能减少等待时间


从这种意义上来讲,一个只包含TODO,DOING和DONE的敏捷看板是不够的,

它只能反映当前一个工序上,各流水线的状态。

不能反映出工序之间在制品的积压情况。


2.2 对流动性的误解

精益思想认为,加快流动性,比提高批量生产效率更重要。

这其实是一种全局观点。


要么不做,要么快速做完。


这样解读是没有问题的。


但是如果没有站在全局观点,

而只站在某道工序的角度理解这句话,

就产生误解了。



人们会误以为,加快流动性,是想办法加快从TODO到DONE的过程,

其实并不是这样。

而是指,加快一个产品,从原材料经历所有工序到成品的过程。


一个产品的制造过程,不应该受批量生产限制而停顿。


因此,所谓加速流动性,

并不会要求对各道工序的原生产率进行改善,

而是改善,在制品在各工序之间的流转速度


2.3 对瓶颈的误解

习惯敏捷看板的开发团队,由于看板的可见性特点,

很容易识别出,当前的工作事项出现了哪些问题。


很简单,出现了问题,就不能DONE。

人们也会认为,这就是所谓开发过程中的瓶颈了。


其实也不然。

事实上,精益思想中提到的瓶颈,是一种资源瓶颈

指的是改成流动性生产之后,即使开启所有的流水线,

某道工序仍然无法提供下一道工序所需要的原材料。


资源指的是流水线。



解决问题的办法,就是提高瓶颈处工序的生产率,或者增加流水线,

显然,提高其他工序的生产率是没有作用的。


提高瓶颈之前工序的生产率,会造成瓶颈处TODO的进一步积压,

而提高瓶颈之后工序的生产率,则会使它闲置的时间更长。


这也是约束理论和核心内容,

任何非瓶颈资源究竟能使系统赚多少钱,不是由它自己的潜能所决定,

而是由系统中的其他制约因素所决定。


所以,落实到敏捷看板上来,

如果敏捷团队不是整个软件开发过程的瓶颈,

那么可能提高开发效率,对软件的最终交付是没有作用的。


不是整个系统的瓶颈所在。


3. 精益看板

软件开发团队中使用的看板系统,很容易受到以上两种误解的影响。

结果,软件在制品数量并没有减少,

虽然整体开发效率,由于看板增强了项目可见性,有所改善。


为了将精益思想应用到看板之上,我认为需要按照以下几个步骤来进行梳理。



3.1 识别工序

首先我们要识别出哪些任务是具有依赖关系的,

哪件事情必须要前一件事情做完后,才能开始处理。


这些事情,构成了整个软件开发过程的不同环节——工序。


3.2 识别在制品

有了工序,才能看到在制品的积压情况。


例如,软件功能必须开发完成后才能进行测试,

软件功能开发的结果,是测试的原材料,

因此,功能开发,测试,构成了两个有依赖关系的工序。


如果一次开发完全部功能,再交给别人测试,这就是批量生产方式。

精益开发思想,指的是避免积压

开发完一个独立的小功能点,就立即交给别人测试。


3.3 识别瓶颈

潘季驯“束水攻沙”治河之策

建立了流动性之后,扩大价值流就成了第一要务。

从成品一端开始,不断的扩大需求,就会给前面一连串工序提高流量要求


当某道工序开启了所有流水线之后,

仍然无法提供后面工序所需的原材料之时,

这道工序就成了系统的瓶颈。


这时候,提高瓶颈处TODO到DONE的效率,

才是对最终产品的交付有帮助。


消除了这个瓶颈之后,其他工序随着流动性增强,流量增大,

会产生另外一个瓶颈,不断解决,持续优化。


结语

本文阐述了敏捷看板,TODO,DOING和DONE,三列布局给我们带来的误解,

并与精益思想进行了对比,

从而对工序,在制品,瓶颈,有了新的认识。


与精益思想相符的是,只有站在产品整个生命周期的角度看待生产过程,

才能有效的减少浪费,发现系统级的瓶颈点。


参考

精益思想

精益开发与看板方法

Kanban in Action

精益生产

精益看板方法实施的三个层次