4.2 软件同行评审流程及最佳实践
按照被评审的对象进行划分,可以分为对代码的走查和对各种工作产品(Work Product)的评审。这里工作产品的意思是指在软件开发生命周期中所产生的各种对象,包括各种文档、组件等。
代码走查依据的是每个公司颁布的编码规范等技术标准,可以通过事先制订好的检查表(Check List)进行检查。
评审从形式上可以分为正式评审和非正式评审。非正式评审更加简单,其过程可以针对正式评审的流程进行裁剪。
4.2.1 同行评审计划阶段
在标准的软件开发流程中,项目启动时项目经理就需要根据本项目的规模、周期、项目团队成员的技能等因素,确定本项目有哪些工作产品需要被同行评审,还要指明要在项目的哪个阶段进行评审。项目经理可以将这些信息记录在项目进度计划的Gantt图中,以便安排每次评审的具体日期和时间。换句话说,软件的同行评审是被计划的。在软件开发过程中,常见的同行评审如表4-1所示。
表4-1 软件开发生命周期中常见的同行评审
软件生命周期 | 待评审的工作产品 | 评审方式 |
项目立项阶段 | 项目立项书 | 评审 |
需求调研阶段 | 软件需求说明书 | 评审 |
项目计划阶段 | 评审 | |
项目设计阶段 | 概要设计文档 | 评审 |
编码开发阶段 | 代码 | 走查 |
评审 | ||
系统测试阶段 | 系统测试用例 | 评审 |
验收交接阶段 | 产品验收结果 | 评审 |
当项目经理选定本项目所需要开展哪些同行评审后,就需要为这些评审进行必要的准备。首先要根据项目组的情况安排每次评审的参与人员,但要尽量做到参与评审的人员在工作角色或掌握技能等方面进行互补。表4-2给出了同行评审中核心人员的参与列表,见下一页。