软件审查是指对 软件产品进行全面评估的重要环节,旨在确保软件的质量、安全性和合规性。其意义在于提高软件的可靠性,降低潜在风险,并促进软件产业的健康发展。
软件审查通常由一个在指定开发阶段对产品进行检测的小组来执行,审查小组一般有4~5个成员,包括协调人或负责人、记录人、代表开发者并提供审查材料的阅读者、验证和确认人员、相关专家。审查通常有五个阶段构成:总体规划、准备、审查、返工和追查。
软件审查的优点包括:
1. 在一次审查中可能会发现许多不同的缺陷,而在测试中,一个缺陷可能会掩饰另一个缺陷,因此需要执行多次测试。
2. 软件审查可以重用领域知识与编程知识,因此评审人员可以发现那些经常出现的错误类型。
3. 软件审查可以对错误类别进行全面统计。
4. 软件审查有利于提高产品质量。
5. 软件审查对各种规模的项目都非常有效。
尽管软件审查有这些优点,但也存在一些缺点,例如:
1. 审查可以检查软件与规格说明之间的一致性,但无法检查软件与客户真实需求之间的一致性。
2. 审查不能检测非功能特征,例如性能、可用性等。
3. 审查人员必须独立于编程人员。
4. 编程人员可能会感觉审查是对其工作的个人攻击。
5. 审查是一项耗时的工作。
此外,代码审查是软件工程中的一个步骤,指对计算机源代码系统化地审查,常用软件同行评审的方式进行,其目的是在找出及修正在软件开发初期未发现的错误,提升软件质量及开发者的技术。