看板方法是精益/敏捷开发方法中的一种实践,来源于丰田精益生产(TPS)。
丰田精益生产包含“一个目标”、“两大支柱”和“一大基础”;“一个目标”是低成本、高效率、高质量地进行生产,最大限度地使顾客满意;“两大支柱”是准时化生产和自働化;“一大基础”是持续改善。
看板方法也继承了这些原则,通过如下几个方面来体现:
1、工作可视化
在软件开发时,因为大家的工作都是在计算机上,工作成果不是可见的实物,所以经常会出现做了很多事情,其他人不知道的情况,也会出现一个人在做很费力的事情,而这个事情另外一个人很容易就能够实现。这种时候,把大家的工作可视化是很重要的。
工作可视化包含以下这些:
谁在干什么?
你正在处理的工作?
进行中的工作数量?
通过可视化工作,我们可以知道每个人当前的工作,每项工作当前的状态。这时,我们需要映射工作流。
工作流映射是指把每项工作的状态在白板上映射出来,每一列表示一个工作状态。当我们把工作流映射出来后,可以把工作按照他们当前的状态,在白板上进行排列,这样可以:
识别工作进入团队,到离开团队的所有工作状态;
识别潜在的问题,比如某个工作状态下堆积的工作,太多未完成的工作;
那么怎么表示每一项工作呢?我们可以用工作项来表示,采用一张小卡片,记录工作名称和描述、完成期限、当前处理人、工作项类型。
通过白板、工作流映射、工作项,我们实现了工作可视化。可视化工作后,我们可以看到问题所在。看到问题所在之后,我们需要去解决问题,这就来到我们的第二步。
2、限制在制品
我们经常遇到交付延期、估算不准、优先级不分、大家忙得不可开交。那么,怎么破解这种困境呢?
根据约束理论,我们同时做的工作越多,每项工作的交付周期就越长。所以我们需要限制在制品。
同时进行的工作越少,交付周期越短;先提升流动效率,而不是资源效率。
3、管理流动
需求来自四面八方,那么多的工作项需要做,怎么限制在制品呢?看板方法采用拉取的方式来管理流动。拉取的意思是,站在工作流的右边,从它的上一个工作状态拉取工作项。如果当前工作没完成,就不能去拉取上一个工作。如果当前工作项超出了在制品限制,那也不能拉取新的工作。这样我们可以把目标集中在交付上,而不是集中在代办上。通过拉取的方法是工作项在工作状态间流动。
为什么要管理流动,关注交付呢?为了消除浪费。部分完成的工作是最大的浪费,没有交付的工作项就是浪费。只有消除了浪费,我们的效率才能够提升。
一个团队的能力,在各个工作状态下可能是不均衡的,这个时候,管理流动,可能会降低部分人的资源效率,比如说流动卡在测试工作上,这是开发人员工作有空闲,却不能去领新的任务。这时,怎么提升资源效率呢?跨职能团队是一个很好的实践。在跨职能团队里,每个人都可以参与其他的工作,如果测试工作是瓶颈,其他人就可以参与测试工作;如果需求分析工作是瓶颈,那么其他人也可以参与需求分析工作。
在管理流动时,我们需要管理好瓶颈,打破约束。
网友评论