“看板方法”是一个制造业的术语,由David Anderson 引入到软件开发领域。David 在其的著作《看板方法》一书中这样描述看板方法与精益之间的关系:“看板方法带来了一套复杂的适应性系统,该系统的目的就是在一个组织中催生出精益的效果。”
1. 看板方法
正如David Anderson所说,看板方法本身并不是一种软件开发流程或者项目管理方法。使用看板方法之前,你必须已经具备某种流程或方法,而看板方法的作用就在于逐渐改变你已有的流程或方法。所以可以认为看板方法是敏捷团队用来改进流程的一个方法。事实上,我们也可以把看板方法看作和精益思想一样是一个消除浪费的方法,因为对于软件开发消除浪费就是流程改进的主要目的。从这点上,看板方法和Scrum有较大区别,因为Scrum主要提供的是过程管理框架,关注于需要做哪些工作,何时做以及谁来做等项目管理类问题。
看板方法为流程管理提供了最基本的工具就是看板,看板的作用在于把整个开发流程可视化。如图8-所示就是一张典型的看板(Kanban Board),看板上的栏目是:输入队列、分析(处理中)、分析(已完成)、可开发、开发(处理中)、开发(已完成)、可构建、测试和可发布。使用这个看板的团队的工作流程可能是这样的:每个特性都需要经过分析、开发、构建和测试这几个环节。所以,团队可能会从类似下图那样的一个看板开始,在各栏目中贴上贴纸来代表经过系统中的各个工作项。
我们知道Scrum中有任务板(Task Borad)的概念,看板与任务板表现形式非常