不论是 PDCA 理论,还是敏捷中的回顾会,都特别注重回顾复盘这个环节,如何有效地开展一次复盘活动,以便个人或者团队做出针对性的改进呢?本文结合笔者在之前团队做的复盘活动,做个总结并分享。
复盘源于古老的东方思维,这种思维不仅仅是一种思考和管理的工具,更是一种文化。这个词最早来源于棋类术语,也称 “复局”,指对局完毕后,复演该盘棋的记录,以检查对局中着法的优劣与得失关键。
复盘不是一次性的 “行为艺术”,它是一种持续性、连贯性、递进式的旋转向上的动作。这个行为可以一人参与,可以多人参与,但原则上是所有与之相关联的人和事都要参与。并且复盘的关键在于及时、迅速、有效、反复。
复盘的 4 个流程:
收集信息:收集与事件相关的数据、文件、记录等。
分析原因:分析事件发生的原因,找出问题所在。
总结经验:总结复盘过程中得到的经验教训,记录下来。
制定改进方案:根据经验教训制定改进方案,并实施。
营造安全环境:这个是开展复盘活动的基石。如果不能营造一个良好的氛围,复盘活动很容易陷入推脱、反驳、甩锅的状态中,从而失去了复盘的意义。
保持客观:尽可能客观地分析事件,避免主观臆断。在分析事件原因时,不要过于主观,而是要根据事实和数据分析。
全面分析:考虑到所有的因素和影响,不只是显而易见的因素。在进行复盘时,需要全面分析事件,包括影响事件发生的外部因素和内部因素。
细节把控:注重细节,找出细微的问题。在分析事件原因时,需要仔细甄别细节,找出存在的细微问题,并制定相应的解决方案。
多角度思考:从不同的角度思考问题,寻找更好的解决方案。在进行复盘时,需要多角度思考,分析事件的各种可能性和影响,并寻找更好的解决方案。
以笔者在之前做的某次团队质量活动复盘为例,背景是这样的:
经过几个迭代的内部测试,产品即将进入 UAT 环境让用户参与验收测试,但是在 UAT 环境中发现了大量的问题,交付质量不容乐观,为此,团队需要做一次复盘总结,发现并改进问题。作为负责人,我做了以下活动:
收集问题:把基于各测试环节的缺陷情况做了一个横向对比,会发现大量的缺陷在 UAT 测试时才被发现(打码的是各个不同的业务系统)。对 UAT 做了一轮针对性的缺陷分类,并提出了复盘会的主题:为什么我们自己发现不了缺陷。
在开复盘会前,作为负责人,需要针对性地做一些准备工作,而不能等到在会上再去梳理这些问题,事先需要做足功课。
分析原因:利用大白纸,分团队进行讨论并分析原因是什么,结合 5W1H 和鱼骨图,团队自行分析根因是什么,如何解决,后续的预防方案是什么等等。
经过充分、客观的讨论,我们最终做出了如下的一些结论:
测试用例没有引发团队的重视,各子项目的测试负责人对测试用例和测试报告没有很好的落地,导致测试人员无法有效地发现缺陷。
针对功能缺失、功能优化、设计问题这三类的缺陷,本质上是一类问题,就是需要质量如何保障,在测试后期,团队的产品和业务还在确认流程、业务逻辑,导致的质量偏差。
针对接口类问题,我们也进行了深入的原因分析,最终作出了对应的要求,对一些链路比较长的测试,大家也可以参考这种做法。
其他的问题就不一一展示了,各子系统也做出了对应的思考和改进项。
思考得再多,没有行动项也是没有意义的。在复盘会的后半部分,我们需要总结出改进项并落地执行,针对本次复盘会,我们制定出了如下的行动项:
以上,就是整个复盘会的全流程案例,由于保密的原因,部分细节没有展示出来,但不影响阅读,每个团队的问题也不一样,需要根据实际情况进行分解。在整个复盘活动中,作为负责人,要密切注意讨论氛围,不要让会议走向推脱、反驳、甩锅的状态中,这点非常考验负责人的经验和能力。
复盘的意义在于通过复盘,能够更好地认识自己,发现问题,改进方法,提高工作效率。核心有两点:安全的环境和可落地的改进项。前者可以让团队更充分地去发现根本问题,而不是表面问题,后者可以让复盘会得到价值最大化,没有改进项的复盘会是没有意义的。