软件工程之美39讲——项目总结:做好项目复盘,把经验变成能力
软件工程之美39讲——项目总结:做好项目复盘,把经验变成能力
项目复盘流程
第一步:回顾项目目标
其中的关键就在于,对目标的描述要尽可能准确和客观。因为只有做到准确和客观,在后续你才能对目标的完成情况进行准确地评估。识。
第二步:评估项目结果
在对项目的目标进行回顾后,就可以来看看项目的实际结果和当初的目标有多少差异了。这里需要列出两方面的差异:好的差异和坏的差异
好的差异
- 上线后质量很稳定
- 严重 Bug 很少
- 没有出现需求遗漏
- 开发和测试能及时同步需求的变更
坏的差异
- 功能发生了变化
- 中间有比较多的需求变更
- 项目发生了延期
第三步:分析原因
在结果评估完了后,就可以来分析原因了,分析的时候也可以主要从两方面着手:是什么原因导致了好的差异,什么原因导致了坏的差异。比如说,导致好的差异的原因:
- 增加了自动化测试代码的比例
- 改进了开发流程
- 代码合并之前有代码审核
- 并且要通过自动化测试
- 增加了工具的使用,比如持续集成系统的搭建,每次提交后可以清楚的看到测试结果;
- 改进了项目流程,对于所有的需求细分后,都创建成了 Ticket,基于任务跟踪系统记录了起来,这样可以及时了解任务进程,有需求变更的情况,相关人员也能及时了解。
导致坏的差异的原因
- 老板对于产品干预过多,导致需求变更频繁
- 项目周期过长,难以响应需求的变化
- 设计时没有考虑到需求的变更,导致需求变更发生后,很多设计需要修改,最终导致延期。
在分析的时候,可以营造一个宽松的氛围,让团队成员能畅所欲言,讨论时要做到对事不对人,尽可能客观地分析清楚成功和失败的原因。只有分析清楚原因,才能总结出规律。
第四步:总结规律,落实行动
接着上面的案例你可以继续总结规律:
- 需求变更是导致项目延期的主要源头,需要在后续项目中控制好需求的变更;
- 自动化测试加上代码审查,再配合持续集成工具,可以有效提升产品质量;
- 任务跟踪系统可以方便地跟踪需求的执行情况,也能保证项目成员能及时同步需求的变更。
总结出来规律后,还需要落实成行动,才能真正做出有效的改变,帮助你在以后的项目中做的更好。落实行动的关键就是:
对于好的实践,继续保持;
对于不好的实践,停止并寻求改变。
- 针对需求变更,我们将缩短项目周期,采用快速迭代的开发模式,及时响应需求变更,同时在一个迭代中,没有特殊情况,不做需求上的变更,有变更放到下一个迭代中;
- 继续增加自动化测试代码的比例,代码在合并前要对代码进行审查,用好持续集成工具;
- 继续使用任务跟踪系统,对需求任务进行跟踪,并且可以尝试对于一些临时性的任务也用任务跟踪系统跟踪起来。