验证和确认软件测试的工作归结起来就是两个V,Verification和Validation。Verification翻译为验证,在在ISO9000中,“验证”的严格定义是:验证是通过检查和提供客观证据,表明规定要求已经满足的认可。Validation翻译为确认,在ISO9000中,“确认”的严格定义是:确认是通过检查和提供客观证据,表明一些针对某一特定预期用途的要求已经满足的认可。从定义上可以看出“验证”关注是否满足规定,即需求规格说明书,“确认”关注的是是否满足预期用途,即用户的真正需求。我们知道,软件的设计,编码实现都是依据软件的需求规格说明书。对于软件测试来说单元测试,集成测试,系统测试的目的是验证软件是否符合软件的需求规格说明,因此都可归于验证过程。然而需求规格说明书并不能代表用户的真正需求,而且依据需求的设计也往往同需求会有些偏差,所以得出的软件产品在经过了系统测试以后还需要进行,确认测试。测试软件产品是否就是用户想要的产品。总之,验证针对的是需求说明书,检验软件是不是根据需求来设计实现的,确认针对的是用户,检验软件能否满足用户的需求。BOEHM对V&V的最著名又最简单的解释是:Verification:Are we building the product right?是否按需求做出了正确的产品Validation:Are we building the right product?是否作出了用户想要的产品
软件测试V&V
