计算机科学

首页 > 计算机科学

软件验证及确认

在软件项目管理、软件工程及软件测试中,验证及确认verification and validation,简称V&V)是指检查软件是否匹配规格及其预期目的的程序。验证及确认也被视为一种软件质量管理,是软件开发过程的一部分,一般归类在软件测试中。

验证及确认有时会由公正的第三方单位进行,此情形下的验证及确认称为独立验证及确认,简称IV&V

目录

  • 1 定义
  • 2 相关概念
  • 3 分类
    • 3.1 测试用例
  • 4 监管环境
  • 5 有关条目
  • 6 参考资料

定义

确认(validation)的目的是检查产品设计是否匹配其预期的目的,软件确认的目的是检查软件是否匹配用户的需求而言,可以由动态检查英语dynamic testing或是其他方式的审查来达成。

依照能力成熟度模型(CMMI-SW v1.1)的定义:

  • 验证(verification):是在特定开发阶段中,评估软件是否匹配阶段开始前所定义条件的程序(IEEE-STD-610)。
  • 确认(validation): 是在开发阶段后,评估软件是否匹配规格需求的程序(IEEE-STD-610)。

换句话说,确认程序确保产品匹配客户需求,而且一开始的规格正确无误,而验证程序确保产品匹配要求及设计规格。确认程序确保“制造出正确的产品”(you built the right thing),而验证程序确保“以正确的方式制造产品”(you built it right)。

建模与模拟英语modeling and simulation社群中,确认、验证及资格认可英语accreditation的定义类似:

  • 确认是评估建模或模拟及其相关数据是否准确表达其预期机能的程序[1]
  • 资格认可是认证建模与模拟可以用在特定用途的正式认证过程[1]
  • 验证是评估计算机建模或模拟及其相关数据是否准确描述开发者概念描述及规格的程序[1]

相关概念

验证及确认都是属于软件质量保证的一部分,但只靠验证及确认无法确保软件质量,需配合计划、需求可追溯性、配置管理及其他软件工程的概念才能确保软件质量。

分类

对于要求完美性能的任务关键系统,会使用形式方法确认系统的正确性,不过形式方法的成本相当的高[2],若是非任务关键系统,一般会使用其他的验证及确认方式,例如句法方法英语syntactic methods等。

测试用例

测试用例是验证及确认过程中使用的工具,测试用例一组条件或变量,测试者根据它来确定应用软件或软件系统是否正确工作。

测试用例是为了验证而准备,其目的是评估后续建构产品的程序是否正确。

测试用例是为了确认而运行,是评估产品是否依照用户的需求而设计及制造的程序,若在软件开发生命周期的前面,会用其他方法(例如软件评审)进行确认。

监管环境

有一些产业的验证及确认需匹配相关法令的兼容性要求,一般会由政府机构[3][4]或是产业主管部分进行指导。例如美国食品药品监督管理局要求医疗设备的软件及补丁均需经过确认的程序。[5]

有关条目

  • 编译器正确性英语Compiler correctness
  • 形式验证
  • 机能性规格英语Functional specification
  • 医疗软件英语Medical software
  • 独立验证及确认机构英语Independent Verification and Validation Facility
  • 国际软件测试认证委员会
  • 软件验证英语Software verification
  • 软件需求规格
  • 确认 (药品生产)英语Validation (drug manufacture)
  • 验证及确认英语Verification and validation

参考资料

  1. ^ 1.0 1.1 1.2 Department of Defense Documentation of Verification, Validation & Accreditation (VV&A) for Models and Simulations. Missile Defense Agency. 2008. 
  2. ^ M. Archer, C. Heitmeyer and E. Riccobene. Proving invariants of I/O automata with TAME. Automated Software Engineering, 9, 201-232 (2002). 
  3. ^ General Principles of Software validation; Final Guidance for Industry and FDA Staff (PDF). Food and Drug Administration. 11 January 2002 [12 July 2009]. 
  4. ^ Guidance for Industry: Part 11, Electronic Records; Electronic Signatures — Scope and Application (PDF). Food and Drug Administration. August 2003 [12 July 2009]. 
  5. ^ Guidance for Industry: Cybersecurity for Networked Medical Devices Containing Off-the Shelf (OTS) Software (PDF). Food and Drug Administration. 14 January 2005 [12 July 2009]. 

上一篇:概念验证
相关推荐