通常,失败会让大家觉得沮丧、愤怒进而互相指责。然而,如果不能从失败中学到点什么,那么这真的将是彻头彻尾的失败。可是敏捷团队怎么才能让失败成为成功之母呢?
James Shore 觉得与其怒火中烧,不如认可大家的努力,大家都已经尽力而为了。
我不会去指责大家,我会去检讨一下流程。是什么样的工作方式让我们有了犯错误的可能?为了不再重蹈覆辙,我们应该怎么改进我们的流程?这就是所谓的根本原因分析。
万一失败了,那么一个最有效的根本原因分析法就是“五个为什么”技术。“五个为什么”分析法源自于精益制造。它主要通过识别症状,随后五次不断地提问“为什么”来找出问题的根本原因。据观察,通常问了五个为什么以后,相应的解决方案也逐渐明朗了。
敏捷团队经常使用的另外一种技术叫做鱼骨图,这项技术可以让我们系统全面地分析发生的问题。事实上,为了直观地展示“五个为什么”的过程,鱼骨图是非常有用的。还有一个有趣的相关的技术是由Joel Spolsky 提出的“二步修复法(Fix it Twice)”:先制定一个快速的方案修复问题,这样团队可以继续工作、不被耽搁,接着再找出一个可以长治久安的方法,避免问题重现。
那么进行根本原因分析的最好的方式是什么呢?
- 找到正确的人。
- 营造良好的氛围,解决问题而不是互相指责。
- 在识别出真正的问题和相应的解决方案之前,绝不停止探究。
- 不要满足于一个简单的根本原因。事实上还有很多更加复杂的情况。
- 仅仅是人员问题?那可能不是我们想要的结果。
类似的,援引 Douglas Squirrel 的话,Gojko Adzic 觉得,当所有相关人员都聚在一起,就应该有个民意投票来识别出问题。一旦问题找到了,就可以按照“五个为什么”的方法来分析,直至找到原因。找不出原因,那么就说明使用方法有误。在识别出问题之后,非常重要的一点就是要去定义出解决这些问题所对应的任务。
不要鬼迷心窍,“不要因为系统停止工作 5 分钟就去重新培训你的整个开发团队”,Squirrel 说道,“相反,你应该根据问题定义出相关的任务”。Squirrel 说:“你不一定需要立刻就解决所有问题,但你需要不断前进。”他觉得,与其找到一个“镀金”方法, 不如快速响应。“如果你一开始走了弯路,问题很快又会出现。”一个周期很长的方案永远也不会有完成的那一天,所以 Squirrel 建议更多地考虑一周之内你能做什么,甚至是一个小时之内,下次问题出现的时候,再去制定相应的解决方案。
Jim 也认为真正的工作是在分析了根本原因之后才开始。人们会让你容易忘记失败,又回到原来的交付模式中去。然而,我们需要积极地去管理那些根本原因分析后制定的任务,在待办事项列表中追踪它们的状态。我们需要收集相应的度量指标,也需要让大家都意识到正确的方式是什么。
你将需要使用一些度量指标和成本数据来引领大家的行为方式,引领变化以及来帮助你决策——怎么样去推动团队,多久推动一次:变化太频繁了?团队太松散了?还是变化的成本太高了?抑或你矫枉过正了?
这样看来,最棒的方式就是把失败当成学习提高的好机会。最重要的是,我们要识别出根本原因,积极地管理好那些能够解决问题的方案任务,直到全部完成。
查看英文原文: All Right It Failed, What Next?
评论