关于软件测试中的检验(verification)和有效性验证(validation)的问题

来源:百度知道 编辑:UC知道 时间:2024/06/06 21:08:48
我看到中文网上把软件测试中的
检验(verification)和有效性验证(validation)
这两个词语的意思颠倒了
Boehm在书中曾经很明确的说过
Validation:Are we building the right product?
Verification:Are we building the product right?
说明
verificaiton应该是指逻辑上正确与否
validation指的是是否满足用户需求

不知道大家有什么意见????
这是中文的描述:
软件测试主要工作内容是验证(verification)和确认( validation ),下面分别给出其概念:
验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(Do the right thing)
确认(validation)是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件(Do it right)

我怎么觉得你的中文描述的意思正好相反呢?

Validation:Are we building the right product?
这句的Right是对Product来说的,所以是“正确的产品”

Verification:Are we building the product right?
这句的right是对building来说的,所以是“正确的方式来做产品”

它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness) 、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。

软件测试的目标:

(1)测试是为了发现程序中的错误而执行程序的过程;

(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;

(3)成功的测试是发现了至今为止尚未发现的错误的测试。

软件测试的内容:

软件测试主要工作内容是验证(verification)和确认( validation ),下面分别给出其概念:

验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(Do the right thing)

1.确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;

2.程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;

3.评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。

确认(validation)是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件(Do it right)

1.静态确认,不在计算机上实际执行程序,通过人工或程序分析来证明软件的正确性;