同级评审实践常常会落入一些陷阱而导致失败,例如:缺乏明确过程定义的非正式评审由于容易引起误解而无法达到跟踪。当评审组长不能有效地发挥其作用时,许多这样的问题会发生。如何识别和避免这些陷阱?本文将介绍常见的5个陷阱及其对策。

  陷阱1:评审过程没有被遵循

  在采取纠正措施之前,找出评审过程没有被遵循的原因。在找出潜在的原因之后选择适当的措施纠正。如果评审过程过于复杂,参与者可能会放弃或采用其它的方法来替代。如果管理者没有通过政策来传达他们的期望,参与者只会在方便的时候或当从个人的角度对其有重要作用时进行评审。如果质量对于一个项目来说不是成功的驱动力,那么从同级评审中所获得的质量的提高不会成为推动实施同级评审的主要原因。然而,同级评审所带来的对生产力的提高能够支持项目满足目标并加快产品的提交。在一个已经陷入进度超期、需求混乱、人员疲惫之困境的项目中引入同级评审是很艰苦的,但是如果评审能将项目引入正常轨道,那么这是完全值得的。

  陷阱2:参与评审的人不了解评审过程

  这种陷阱的一个症状是开发组成员不能使用准确的、一致的词汇来描述各种类型的同级评审,或者各评审小组之间不能遵循一致的评审过程。因此培训、实践和文档化的评审过程是必需的。所有潜在的评审人员都必须理解什么是评审,为什么、怎样、何时和谁来进行评审。Stephen Allott 关于高效审查组的习惯的描述向我们提供了深入的经验报告(Allott 1999),这些习惯包括:

  把审查放在自己的工作之上

  谨慎地选择审查人员

  要求审查员努力、勤奋和

  控制讨论过程,以佳的评估标准记录缺陷

  信任作者,但是还是要核查改正情况

  确保度量的可信度

  陷阱1:评审过程没有被遵循

  在采取纠正措施之前,找出评审过程没有被遵循的原因。在找出潜在的原因之后选择适当的措施纠正。如果评审过程过于复杂,参与者可能会放弃或采用其它的方法来替代。如果管理者没有通过政策来传达他们的期望,参与者只会在方便的时候或当从个人的角度对其有重要作用时进行评审。如果质量对于一个项目来说不是成功的驱动力,那么从同级评审中所获得的质量的提高不会成为推动实施同级评审的主要原因。然而,同级评审所带来的对生产力的提高能够支持项目满足目标并加快产品的提交。在一个已经陷入进度超期、需求混乱、人员疲惫之困境的项目中引入同级评审是很艰苦的,但是如果评审能将项目引入正常轨道,那么这是完全值得的。

  陷阱3:适合的人没有参加评审

  不合适的参与者包括没有被作者邀请的管理人员和没有明确目的的观察人员。参加者不是来学习的,而是应当能发现问题的人。

  对于小项目,一个人要担任几个角色,因此可以邀请一些同事代表其他人的观点。对于有些评审来说,若代表关键视角的人没有出现,那么评审是不全面的。例如:对某需求规格说明书的评审需要从用户的角度判断其正确性和完整性,并快速解决含糊和冲突问题,客户可以是真正的终用户或其替代者,如市场人员。

  陷阱4:评审会陷入到对问题的解决上。

  除非特别要求评审成为一次头脑风暴会议,评审组应该把焦点放在发现问题而不是解决问题上。当评审会转向寻找问题解决方案时,对产品的检查变得停止了。如果参加者对于所讨论的问题不感兴趣,他们停止了思考。当评审者意识到评审会的结束时间到了,他们会很快的翻过剩下的材料,宣布评审的成功。事实上,这些材料中很可能隐藏了主要缺陷,将会在未来长期侵扰开发组。评审组长的失败是产生这一问题的主要原因。

  陷阱4:评审的焦点放在文档形式而不是内容本身上

  一份只记录文档形式问题的问题日志表明评审者被形式问题搞乱了,他们缺乏充足的准备,或者只做了表面的检查。为了避免这种陷阱,应当对其他文档事先定义编码标准、标准模板。编码规范规定了代码版面格式、命名约定、注释、避免采用的编程语句和其他一些提高可读性和可维护性的规则。作为检查该工作成品是否符合准入条件的一项任务,可指定一名标准核查员检查该产品是否符合相关的标准。标准的代码版面格式可以使评审者将注意力放在重要的逻辑,功能和语义问题上。

  陷阱5:评审会陷入到对问题的解决上。

  除非特别要求评审成为一次头脑风暴会议,评审组应该把焦点放在发现问题而不是解决问题上。当评审会转向寻找问题解决方案时,对产品的检查变得停止了。如果参加者对于所讨论的问题不感兴趣,他们停止了思考。当评审者意识到评审会的结束时间到了,他们会很快的翻过剩下的材料,宣布评审的成功。事实上,这些材料中很可能隐藏了主要缺陷,将会在未来长期侵扰开发组。评审组长的失败是产生这一问题的主要原因。