此知识点要注意,《信息系统项目管理师教程(第三版)p150》与《系统集成项目管理工程师教程(第二版)p209》中关于V模型的介绍不一致。 V模型是在快速应用开发模型基础上演变而来,由于将整个开发过程构造成一个V字形而得名。V模型适用于传统信息系统应用的开发,而一些高性能高风险的系统、互联网软件,或一个系统难以被具体模块化的时候,则不建议使用V模型。
《系统集成项目管理工程师教程(第二版)p209》
V模型的左边下降的是开发过程各阶段,与此相对应的是右边上升的部分,即各测试过程的各个阶段。在不同的组织中对测试阶段的命名可能有所不同。 在 模型图中的开发阶段一侧,先从定义业务需求、需求确认或测试计划开始,然后要把这些需求转换到概要设计、概要设计的验证及测试计划,从概要设计进一步分解 到详细设计、详细设计的验证及测试计划,最后进行开发,得到程序代码和代码测试计划。接着就是测试执行阶段一侧,执行先从单元测试开始,然后是集成测试、 系统测试和验收测试。 V模型的价值在于它非常明确地标明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发各阶段的对应关系。
(1)单元测试的主要目的是针对编码过程中可能存在的各种错误,例如用户输入验证过程中的边界值的错误。
(2)集成测试主要目的是针对详细设计中可能存在的问题,尤其是检查各单元与其他程序部分之间的接口上可能存在的错误。
(3)系统测试主要针对概要设计,检查系统作为一个整体是否有效地得到运行,例如在产品设置中是否能达到预期的高性能。
(4)验收测试通常由业务专家或用户进行,以确认产品能真正符合用户业务上的需要。 在不同的开发阶段,会出现不同类型的缺陷和错误,所以需要不同的测试技术和方法来发现这些缺陷。
《信息系统项目管理师教程(第三版)p150》
V 模型从整体上看来,就是一个V字形结构,由左右两边组成。左边的下画线分别代表了需求分析、概要设计、详细设计、编码。右边的上画线代表了单元测试、集成 测试、系统测试和验收测试。看起来V模型就是一个对称的结构,它的重要意义在于,非常明确的表明了测试过程中存在的不同的级别,并且非常清晰的描述了这些 测试阶段和开发阶段的对应关系。
(1)单元测试:验证软件单元是否按照单元规格说明(详细设计说明)正确执行,即保证每个最小的单元能够正常运行。单元测试一般由开发人员来执行,首先设定最小的测试单元,然后通过设计相应的测试用例来验证各个单元功能的正确性。
(2)集成测试:检查多个单元是否按照系统概要设计的方式协同工作。集成测试主要关注点是系统能够成功编译,实现了主要的业务功能,系统各个模块之间数据能够正常通讯等。
(3)系统测试:验证整个系统是否满足需求规格说明。
(4)验收测试:从用户的角度检查系统是否满足合同中定义的需求或者用户需求。
V模型的特点:
(1)V模型提现的主要思想是开发和测试同等重要,左侧代表的是开发活动,而右侧代表的是测试活动。
(2)V模型针对每个开发阶段,都有一个测试级别与之向对应。
(3)测试依旧是开发生命周期中的阶段,与瀑布模型不同的是,有多个测试级别与开发阶段相对应。
(4)V模型适用于需求明确和需求变更不频繁的情形。