更新时间:2024-10-08 19:25
主要特点是由一组评审者按照规范的步骤对软件需求、设计、代码或其他技术文档进行仔细地检查,以找出和消除其中的缺陷。技术评审为新手提供软件分析、设计和实现的培训途经,后备、后续开发人员也可以通过正规技术评审熟悉他人开发的软件。评审小组至少由3人组成(包括被审材料作者),一般为4至7人。通常,概要性的设计文档需要较多评审人员,涉及详细技术的评审只需要较少的评审人员。
正规技术评审(Formal Technical Review),是一种的同行审查技术。其主要特点是由一组评审者按照规范的步骤对软件需求、设计、代码或其他技术文档进行仔细地检查,以找出和消除其中的缺陷。正规技术评审也称作“正规审查”(Formal Inspection)或简称“审查”(Inspection)。
正规技术评审目的
(1)发现软件在功能、逻辑、实现上的错误;
(2)验证软件符合它的需求规格;
(3)确认软件符合预先定义的开发规范和标准;
(4)保证软件在统一的模式下进行开发;
(5)便于项目管理。
此外,正规技术评审为新手提供软件分析、设计和实现的培训途经,后备、后续开发人员也可以通过正规技术评审熟悉他人开发的软件。
评审小组成员
评审小组至少由3人组成(包括被审材料作者),一般为4至7人。通常,概要性的设计文档需要较多评审人员,涉及详细技术的评审只需要较少的评审人员。
评审小组应包括下列角色:
评审员(Reviewer、Inspector)
评审小组中的每一成员,无论他(她)是否是主持人、作者、宣读员、记录员,都是评审员。他们的职责是在会前准备阶段和会上检查被审查材料,找出其中的缺陷。
合适的评审员人选包括被审材料在生命周期中的前一阶段、本阶段和下一阶段的相关开发人员。例如,需求分析评审员可以包括客户和概要设计者,详细设计和代码的评审员可以包括概要设计者、相关模块开发人员、测试人员。
主持人(Moderator)
主持人的主要职责,在评审会前负责正规技术评审计划和会前准备的检查;在评审会中负责调动每一个评审员在评审会上的工作热情,把握评审会方向,保证评审会的工作效率;在评审会后负责对问题的分类及问题修改后的复核。
宣读员(Reader)
宣读员的任务是在评审会上通过朗读和分段来引导评审小组遍历被审材料。除了代码评审可以选择作者作为宣读员外,其他评审最好选择直接参与后续开发阶段的人员作为宣读员。
记录员(Recorder)
记录员负责将评审会上发现的软件问题记录在“技术评审问题记录表”。在评审会上提出的但尚未解决的任何问题以及前序工作产品的任何错误都应加以记录。
作者(Author)
被审材料的作者负责在评审会上回答评审员提出的问题,以避免明显的误解被当作问题。此外,作者须负责修正在评审会上发现的问题。
正规技术评审
正规技术评审活动过程
1、计划
由项目经理指定的主持人检查作者提交的被审材料是否齐全,是否满足评审条件,例如,代码应通过编译后才能参加评审。主持人确定评审小组成员及职责,确定评审会时间、地点。主持人向评审小组成员分发评审材料。评审材料应包括:被审材料、检查要点列表(Checklist)和相关技术文档。
2、预备会
如果评审小组不熟悉被审材料和有关背景,主持人可以决定是否召开预备会。在预备会上,作者介绍评审理由、被审材料的功能、用途及开发技术。
3、会前准备
在评审会之前,每一位评审员应根据检查要点逐行检查被审材料,对发现的问题做好标记或记录。主持人应了解每一位评审员会前准备情况,掌握在会前准备中发现的普遍问题和需要在评审会上加以重视的问题。会前准备是保证评审会效率的关键之一。如果会前准备不充分,主持人应重新安排评审会日程。
4、评审会
评审会由主持人主持,由全体评审员共同对被审材料进行检查。宣读员逐行朗读或逐段讲解被审材料。评审员随时提出在朗读或讲解过程中发现的问题或疑问,记录员将问题写入“技术评审问题记录表”。必要时,可以就提出的问题进行简短的讨论。如果在一定时间内(由主持人控制)讨论无法取得结果,主持人应宣布该问题为“未决”问题,由记录员记录在案。在评审会结束时,由全体评审员作成评审结论。主持人在评审会结束后对“技术评审问题记录表”中问题进行分类。
5、修正错误
作者对评审会上提出的问题进行修正。
6、复审
如果被审材料存在较多的问题或者较复杂的问题,主持人可以决定由全体评审员对修正后的被审材料再次举行评审会。
7、复核
主持人或主持人委托他人对修正后的被审材料进行复核,检查评审会提出的并需要修正的问题是否得到解决。主持人完成“技术评审总结报告”。
正规技术评审注意事项
(1)评审应针对被审材料而不是被审材料的作者。评审会的气氛应该保存轻松、愉快,指出问题的语气应该温和。
(2)每次评审会的时间最好不要超过2小时。当被审材料较多时,应将被审材料分为若干部分分别进行评审。
(3)限制争论和辩驳。在评审会上,对于一时无法取得一致意见的问题,应先记录在案,另行安排时间进行深入讨论。
(4)阐明问题而不要试图解决问题。不要在评审会上解决发现的问题,可以在会后由作者自己或在个别人的帮助下解决这些问题。