2、降低成本
测试人员尽早介入项目是有效的基本测试原则之一。测试人员在软件开发生命周期的早期介入,可以尽早参与发现软件工作产品中的缺陷,从而节省时间和降低成本。因为在项目的早期发现缺陷,可以大大的减少缺陷修复的成本。
评审可以降低测试和开发的成本,因为在项目的早期发现和修复缺陷的成本比在测试执行阶段发现和修复缺陷的成本小的多。下表是统计得到的在不同阶段修复缺陷的成本比例。
3、提升能力
首先,通过有效的评审,评审团队成员之间,包括作者和评审人员之间,都相当于参加了一次培训,有助于在将来的项目中,产生更好质量的文档。有效的文档评审过程,也是一次相互学习的过程,因为评审过程、规则和实践等在评审团队成员之间进行了共享。同时,通过评审成员之间的分析和讨论,项目技术相关的知识和技能,也可以在团队之中进行传播。
其次,通过有效的评审,可以提高项目和测试的预测性,从而提高测试管理的效率和有效性。动态测试是整个测试过程中最难预测和最难管理的活动之一,其原因主要表现在:
1)缺陷数目、缺陷修复时间以及缺陷相关信息的随机性和不确定性,导致计划和分配测试资源非常困难;
2)动态测试过程中发现的缺陷数目越多,测试就越难于管理;
因此,通过开发生命周期的早期开展评审活动,一方面可以尽早发现和修复软件产品中的缺陷,减少遗留到后续阶段的缺陷数目;另一方面,也可以根据评审活动中发现的缺陷数目和缺陷类型等数据,评估测试对象的质量和缺陷分布,从而减轻动态测试活动的不可控性和不可预测性。
3)通过评审,可以收集评审过程和评审对象相关的信息和数据,为将来的项目改进提供数据和经验,从而不断的改进开发过程、测试过程和评审过程等,在将来的项目中达到缺陷预防的目的,例如:通过评审过程中学习到的知识技能和经验,可以改进评审相关的检查表,从而不断提高测试团队和测试人员的能力。
4、加快进度
评审不仅可以在早期发现测试对象中的大量缺陷,降低缺陷修复的成本,减少遗留到后期的缺陷数目(例如:测试执行阶段),减少动态测试执行的时间。同时,评审可以不断的为能力改进提供信息和数据,不断提升整个团队和个人的能力,从而更好的输出高质量的工作产品,不断提高测试的效率和有效性。能力水平的提高和产品质量的提高都会更好更快的促进软件版本的发布。