质量研发模型(V模型)
V模型强调软件开发的协作和速度,将软件实现和验证有机结合起来,在保证较高的软件质量情况下缩短开发周期。
通过对该模型的水平和垂直的关联和比较分析,理解软件开发和测试的关系,该模型具有面向客户、效率高、质量预防意识等特点,能帮助建立一套更有效、更具有可操作性的软件开发过程,如下图:
1、水平对应关系看
左边是设计和分析,是软件设计实现的过程,同时伴随着质量保证活动,如审核(静态测试);右边是对左边结果的验证,是动态测试过程,即对设计和分析的结果进行测试,以确保满足用户需求。
(1)需求分析和功能设计对应验收测试。在需求分析、产品功能设计的同时,测试人员就可以阅读、审查需求分析的结果,从而了解产品的设计特点、用户真正需求,确定测试目标,准备测试用例并策划测试活动。
(2)当系统设计人员在做系统设计时,测试人员可以了解系统是如何实现的,基于什么平台,这样可以设计系统的测试方案和测试计划,并事先准备测试环境。
(3)当系统人员在做详细设计时,测试人员可以参与设计,对设计进行评审,找出设计的缺陷,同时设计功能、新特征等方面的测试用例,完善测试计划,并基于这些测试用例开发测试脚本。
(4)在编码的同时进行单元测试,尽快找出bug。
总结:V模型的特点是质量保证活动和项目同时开展,避免了瀑布模型带来的误区---软件测试是在代码完成后进行。
2、垂直方向看
(1)水平虚线上部表明,需求分析、定义和验收测试主要工作是面向用户,要和用户进行充分沟通、交流。
(2)水平虚线下部分工作,基本是技术工作,在组织内部进行。
(3)垂直方向看,越在下面,白盒测试方法使用越多,到了集成、系统测试,更多是将白盒测试和黑盒测试结合起来使用,形成灰盒测试。在验收测试过程中,由于用户要参与,所以使用黑盒测试。