本文讨论回顾(Retrospective),使用英文做文章标题有两个方面原因:一个是回顾这个词现在很多人都在用,从中文字面上看可能对它并不感冒,觉得回顾是一件很简单可做可不做的事情,但事实上做回顾很难也很重要,所以用一个看上去很多人都不一定认识的英文单词来做强调;另一方面文章的副标题用的是“the way to make things better”,个人很喜欢这句话,觉得我们日常的工作、学习、为人处世不就是想把事情做好一点吗,所以用这句话和大家共勉。
回顾这个词最近见得比较多的一个可能原因是因为敏捷开发的如火如荼,对敏捷领域而言,尤其是Scrum,回顾是作为整个框架中的一个步骤来执行的,很多学者认为回顾是敏捷开发中最需要做的一件事情,个人也深表赞同。尤其是在团队尚在成长期,面临研发过程中诸多问题的时候,回顾就是我们手中的武器,是要紧紧握在手里,时刻不能丢掉的。同时,因为回顾在敏捷领域受到的广泛关注,平时在团队中推行回顾的时候很大程度上参考了现有的一些著作和资料,其中受Esther Derby和Diana Larsen合著的《Agile Retrospectives: Making Good Teams Great》启发最大,本文中也大量参考和引用该书中的一些思路和做法。
一. 为什么我们要做回顾?
在项目/产品研发过程中的某个时段,结合并不成熟的团队状况,或多或少会面临研发管理不合理的现状,比较典型的有:
- 多项目交叉
- 分布式、多部门协作
- 开发资源、任务并行
- 项目缺乏计划性
- 产品缺乏创新点
这些现象导致的结果归根结底就是进度上的问题,无论是项目按计划验收还是产品根据市场快速做出反应,时间永远是软件企业最需要把控的一个核心要素,对互联网公司更是如此。但当因为研发过程中产生这种那种的问题导致进度不尽理想时,大家有想到要做些什么吗?
要做的事情有很多,个人认为首当其冲的就是“Stop And Thinking”,包括两个主要方面:- 检视(Inspect):检查和诊视。通过分析现状、收集数据、头脑风暴等方式总结和梳理团队目前存在的问题,包括需要量化的过程记录性数据作为过程改进的输入以及流程改进点本身存在的问题这两个主要方面。
- 调整(Adapt):过程改进。有了量化的数据和流程改进的突破点,就可以确定调整策略和下一步的工作计划,并落实责任人。
“Stop And Thinking”体现的就是回顾思想,个人认为回顾是过程改进中诸多方法论和实践的一个集合体,也和质量管理领域中的主流思想是一致的,回顾本身也是如下PDCA环(戴明环)的一种具体体现: