软件测试之生命周期模型

什么是软件生命周期?

  软件生命周期是软件工程中非常重要的概念。

  软件生命周期:是指软件开发和测试全部过程、活动和任务的结构框架,是从可行性研究到需求分析、软件设计、编码、测试、发布后的维护的过程测试模型 

 一、 瀑布模型(无法回滚:主要是外包项目)

    生命周期模型图一瀑布模型:
    1、瀑布模型的特点
    1)为项目提供了按阶段划分的检查点。
    2)当前一阶段完成后,您只需要去关注后续阶段。
    3)可在迭代模型中应用瀑布模型。
    增量迭代应用于瀑布模型。迭代先解决最大的问题。每次迭代产生一个可运行的版本,同时增加更多的功能。每次迭代必须经过质量和集成测试。

    2、瀑布模型的缺点:
    1)在项目各个阶段之间极少有反馈。
    2)只有在项目生命周期的后期才能看到结果。
    3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。

              


二、 V模型(核心,新版本)

    1、V模型的特点

    1)V模型中的过程从左到右,描述了基本的开发过程和测试行为。
    2)V模型的价值在于它非常明确地标明了测试过程中存在的不同级别。
    3)能够清楚地描述这些测试阶段和开发过程期间各阶段的对应关系。

    2、V模型的缺点
    1)由于它的顺序性,正式进入测试时,有些bug不容易找到其根源,代码修改起来困难;
    2)由于需求变更较大,所以返工量大。
              

三、 W模型(机密项目)

    生命周期模型图_W模型:
    1、W模型的特点
    1)W模型由两个V字型模型组成,分别代表测试与开发过程,也就是说,测试与开发是同步进行的。  
    2)测试的对象不仅仅是程序,还包括需求和设计。
    3)尽早发现软件缺陷可降低软件开发的成本。
    2、W模型的缺点
    1) W模型存在局限性。在W模型中,需求、设计、编码等活动被视为串行的,并且测试和开发保持着一种线性的前后关系,上阶段完全结束,才能正式开始下阶段工作。
    2)无法支持迭代的开发模型。对于当前软件开发复杂多变的情况,W模型并不能解除测试管理面临的困惑。

    

四、 H模型()
    生命周期模型图一H模型(敏捷测试):
    1、H模型的特点
    H模型将测试活动完全独立出来,形成了一个完全独立的流程,贯穿于整个产品的生命周期,与其他流程并发地进行,某个测试点准备就绪时,就可以从测试准备阶段进行到测试执行阶段;软件测试可以进快尽早的进行;软件测试可以根据被测物的不同而分层次进行。
    2、H模型的缺点
    1)要有完整的测试团队。
    2)质量不亚于V ,瀑布。

              

五、 螺旋模型(核心项目)
    生命周期模型图一螺旋模 型:
    1、螺旋模型的特点:
    1)引入了其他模型不具备的风险分析,当存在重大风险时有机会停止,进行变更减小损失,特别适合于大型复杂的系统。
    2)以小的分段来构建大型系统,使成本计算变得简单容易。
    3)客户始终参与每个阶段的开发,保证项目不偏离正确方向
    4)随着项目推进,客户始终掌握项目的最新信息。
    5)对于新近开发,需求不明确的情况下,适合用螺旋模型进行开发,便于风险控制和需求变更!
    

          2、螺旋模式的缺点:
    建设周期长,而软件技术发展比较快,所以经常出现软件开发完毕后,和当前的技术水平有了较大的差距,无法满
足当前用户需求。

六 、X模型:探索性模型

刚出炉的小菜鸟
原文地址:https://www.cnblogs.com/zengch/p/13492742.html