【Kanban】在制品限制

2019-03-22  本文已影响0人  小船哥说敏捷

实施Kanban的目的除了上一篇文章中介绍的可视化以外,还有一个重要的目的:在制品限制,本文接下来会介绍什么是在制品限制以及为什么要做在制品限制

1. 什么是在制品

在软件过程中,那些已经开始,但是还没有交付,没有产生客户价值的工作,例如已经开发的需求分析、正在研发的功能、等待测试的任务、待修复的缺陷等等,这些都是在制品。

2. 为什么限制在制品

我们可以借助利特尔法则再更加具体看下限制在制品能够带来的效率变化,利特尔法则使用下面的公式计算工作效率和周期:

周期=在制品数量/吞吐量

例如一个团队每个月可以完成的12个任务,那么吞吐量就是12,如果我们在制品数量是12那么可以得到:

周期=12个在制品/吞吐量12=1个月

而如果我们减少在制品,例如6个并行任务,那么:

周期=6个在制品/吞吐量12=0.5个月

可以看到通过降低在制品数量,就能很快的缩短交付周期,加快交付节奏。

3. 如何限制在制品

限制在制品通常有两种做法:按列限制在制品和按人员限制在制品。

3.1.1 基于列设定在制品

我们公司的做法,一般是限制“开发-待测试-测试”三列的故事数尽量维持在3个左右,最多不超过5个

Kanban

我们做了在制品限制以后,经常会遇到一个问题:开发阶段人员出现了空闲,应该做什么呢?

空闲时间能做什么?

规模化敏捷框架SAFe中对研发、测试和交付的能力要求都比较高,SAFe的叫法是Build-In Quality(内建质量)

Build-In Quality

所以在做了在制品限制以后,我们的工作流程可以变成这样:

在制品限制以后的工作方式

大家注意上图中红色的部分:

3.1.2 基于人设定在制品

我们公司采用的小团队敏捷方法是Scrum,团队里的研发和测试人员是不会属于多个团队的,所以只要限制了列的在制品个数,基本也就限制人的在制品,所以我们没有就这个限制做什么特殊的规定。

4. 限制在制品的具体做法

通常我们都是采用基于列的在制品限制,那么到底哪些列是需要限制在制品的?具体应该把数值设定为多少呢?可以告诉大家这没有一个统一的标准,要看具体情况。要通过对Kanban流转情况的一个动态观察,发现影响Kanban的瓶颈,从而通过限制在制品解决和避免瓶颈。这里没有固定的数字,Kanban开始的前期这个数字应该是经常变动的。一个比较快的确定一个限制数字的做法是:

如果某列经常同时有4-5个工作在做,你最初可以将在制品数量限定在8-10个,然后规律性的以20%的幅度将其递减,然后达到一个相对稳定的值,这也是持续改进的开始。

总归应该遵循两点:

好了,Kanban的在制品限制就说到这里吧,下一节主要说说Kanban中管理流动的原则!

上一篇下一篇

猜你喜欢

热点阅读