赞
踩
经过千辛万苦,产品上线了。项目组成员们往办公椅上一趟,长出一口气说终于结束了,项目组成员们都琢磨着去哪里吃上一顿大餐犒劳一下自己。但是这样真的已经结束了么?没有,恰恰相反,项目过程中的一个重要环节才刚刚开始,那就是:复盘,或者说总结。
有句话说得好:“失败是成功之母”,但是这句话应该还有半句话没说出来。那就是,不是每次失败都会是成功之母,而只有总结了经验教训之后的失败才能成为成功之母,才能说让自己不在同一个坑跌倒两次。
如何复盘的文章网上已经有一大把,我这里就不重复的引用,就基于基本的复盘步骤来聊一聊从程序员出身的项目经理的角度来看,怎么去做好这四个步骤。
这里再一次体现了目标的重要性。如果没有目标,复盘也无从说起,因为你都不知道什么是好,什么是坏。这也再一次强调了目标需要用SMART原则去衡量的重要性。因为如果目标不是可衡量的,在复盘的时候就无法对目标进行偏差的评估。
每个人都会有情绪,每个人都会选择自己的需要的内容去进行记忆。所以基于事实去评估结果我认为是复盘中最关键也是最难做的部分。
每个人在讲述过程的时候,都会选择对自己有利的角度去进行讲述,将对自己不利的部分忽略或者淡化。这是人之本性。因此,在项目过程中如实的记录就变得非常的关键。我认为项目过程中的记录可以在下面几个地方注意。
从上面的一些过程中发现了事实之后,我们就可以根据结果与目标之间的差距,参考过程中发生的事实,来分析成功和失败的原因了。
有了目标与结果的差距和事实依据之后,我们就可以来开始分析原因了。
一般来说我们能比较好的做好的经验的总结,而不太愿意做失败原因的总结,或者逃避,或者浅尝辄止。从我自己的经验来看,我们不愿意做教训的总结有下面几个原因:
所以说,我觉得做原因分析这个动作之前,有一些准备性的工作需要做,而且其中一些还是一些长期性的工作,为的就是一个目标:不让原因分析变成针对某个人或者某个团队的集中批判大会。
做原因分析的过程基本上是以问题来推进,其实就是多问几个为什么。直到暴露出最关键的问题。那么什么时候是停止继续问为什么呢?我个人的经验是这个问题的回答已经设计到某个人的某个具体动作。这样,我们才可以针对某个具体问题进行改进。
举个例子:
场景一:
Q:版本为什么发布失败了?
A:因为我们的本地和现场的配置文件不一致。
改进措施:下次我们一定要保证本地和现场的配置文件一致。
如果我们这样去做原因分析的话,那么下一次大概率会再次出现这个问题。因为这个改进措施完全是一句口号,没有具体的措施,动作和责任人。在复盘会议之后就会成为一纸空文。
场景二:
Q:版本为什么发布失败了?
A:因为我们的本地和现场的配置文件不一致。
Q:什么原因造成不一致?
A:测试人员发布没有比对,部署人员现场部署时也没有比对。
Q:怎么比对?技术上是否可以实现?流程上如何保证?
A:产品发布上增加比对节点,测试输出操作指导,配置文件版本好和改动范围作为节点输入。部署人员拿到操作指导后进行发布包和现场环境比对。配置文件可以采用beyond compare软件人工比对。后续可以考虑使用脚本自动比对发布。
Q:脚本工具是否谁负责开发,什么时候可以完成?
A:xxx在xx日前可以完成。
Q:流程节点如何保证宣贯到位?
A:xx负责在团队内部宣讲。xxxxx等步骤。
如果按照这样来分析的话,最起码可以保证我们针对这次的问题做出了具体的分析,并制定了改进计划。
具体来说,我们一般可以从下面几个维度上来分析原因:
还可以另外一种分法:
还可以有其他的分法,只有针对一个现象按不同的维度进行了分析之后,才会得到详细的改进计划。
改进计划就两个重点:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。