验证与确认过程域区别
上一篇 /
下一篇 2014-10-22 11:48:14
/ 个人分类:CMMI
验证(Verification)
1、验证:按照IEEE/ANSI的定义,是为确定某一开发阶段的产品是否满足在该阶段开始时提出的要求而对系统或部件进行评估的过程。
2、是否在正确的制造产品?
确认(Validation)
1、按照IEEE/ANSI的定义,是在开发过程中或结束时,对系统或部件进行评估,以确定其是否满足需求规格的过程。
正式的确认包括实际软件或仿真模型的运行,确认是“基于计算机的测试”过程,它经常暴露错误的现象。2、是否制造了正确的产品?
目标:
- 发现缺陷,并确定软件系统是否实现了需要的功能和特性。
- 验证和确认是互补的,发现错误的效果会由于它们中的一个或另一个没有完成而受到损失,它们是为捕获不同类型问题而设计的过滤器。
验证和确认紧密联系在一起,一般采用的方法也差不多。
验证和确认工作的好处有哪些?
①尽可能早地在软件的生命周期中发现错误;
②确保要求的软件质量被计划并在系统中被实现;
③预测中间和最后的产品满足用户需求的程度;
④保证遵循标准要求;
⑤确定安全性和保密性功能;
⑥帮助避免在产品发布的最后时刻发现问题;
⑦提高可行度的软件可靠性;
⑧为管理提供决策的标准;
⑨降低操作变化的频率;
⑩评估验证和确认活动提出的修改建议的影响。
软件验证和确认计划(Software Verification and Validation Plan,SVVP)
SVVP被认为是项目计划中不可分割的一部分。在我们的实际工作中SVVP的计划包括测试计划,和项目计划的各评审点和检查点。
目的:有效地利用验证和确认资源,监督和控制验证和确认过程,确保每个参与者的角色和职责被标识。
要素:
验证和确认任务
方法和标准
输入和输出
进度表
资源
风险和假设
角色和职责
生命周期各阶段的活动
验证和确认的管理贯彻于整个生命周期阶段,主要任务是计划、评审和监控。
验证和确认的目标是验证系统需求的分配,确认所选择的解决方案,确保不成立的假设不被引入方案之中。该阶段的任务包括概念文档评估、危险程度分析、硬件需求/软件需求/用户需求分解分析、可跟踪情况分析。
需求阶段主要关注软件需求分析。(需求包括功能类、外部接口类、性能类、设计约束类和质量属性类。)
验证和确认的目标是确保正确性、完整性、准确性、可测试性和需求的一致性。
该阶段的任务包括可跟踪性分析、软件需求评估、接口分析、危险程度分析、系统测试计划、确认测试计划、配置管理评估、冒险分析和风险分析。
设计阶段主要进行框架、软件单元、接口和数据的设计。
该阶段的任务包括可跟踪性分析、软件设计评估、接口分析、危险程度分析、构件测试计划、接口测试计划、测试设计、冒险分析和风险分析。
该阶段的任务要考虑项目计划所连带的责任(如支持关键设计的评审)、设计方法学、设计标准、设计中的关键点和高难度部分、需要证明的设计假设(或证明的引用)、设计层次等。
实现阶段是从设计文档到调试形成软件产品的阶段。验证和确认的目标是确定代码的质量。
该阶段的任务包括可跟踪性分析、源代码和源代码文档评估、接口分析、危险程度分析、测试用例、测试程序、构件测试执行、冒险分析和风险分析。
在测试阶段,软件产品被评估以确定是否满足需求。所有被计划的测试阶段的验证和确认活动都应该完成。
该阶段的任务包括可跟踪性分析、确认V&V测试过程的制定和校验、集成V&V测试的执行和校验、系统V&V测试的执行和校验、确认V&V测试的执行和校验、冒险分析和风险分析。
该阶段的任务包括安装配置审计、安装检验、冒险分析、风险分析和V&V最终报告等。
该阶段的任务包括评估新的约束和限制、变更建议评议、操作程序评估、异常评估、危险程序分析、移植评议、更换评议、冒险分析、风险分析、任务反复等。
收藏
举报
TAG: