分享

六、生命周期、周期模型、测试流程

 一束光线 2023-11-14 发布于浙江

1.软件生命周期(Software Life Cycle,SLC)是软件的产生直到报废或停止使用的生命周期。

  软件生命周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,也有将以上阶段的活动组合在内的迭代阶段,即迭代作为生命周期的阶段。

2.测试周期是指从测试项目计划建立到BUG提交的整个测试过程,包括软件项目测试计划,测试需求分析,测试用例设计,测试用例执行,BUG提交五个阶段。

  软件测试周期并行与软件生命周期,存在于软件生命周期的各个阶段。

  软件开发过程是将用户需求转换为软件的过程,通常包括:需求--设计--实现--测试。

3.软件测试生命周期模型:瀑布模型、V模型、螺旋模型、迭代模型、W模型、H模型、X模型

(1)瀑布模型:瀑布模型强调文档的作用,并要求每个阶段都要仔细验证。但是,这种模型的线性过程太理想化,已不再适合现代的软件开发模式,几乎被业界抛弃。

  优点:

  有利于大型软件开发过程中人员的组织及管理;

  提高了大型软件项目开发的质量和效率;

  缺点:

  由于开发模型呈线性,所以当开发成果尚未经过测试时,用户无法看到软件的效果,只有等到整个过程的末期才能见到开发成果,软件与用户见面的时间间隔较长,也增加了一定的风险;

  早期的错误可能要等到开发后期的测试阶段才能发现,可能会扩散,进而可能会造成整个软件项目开发失败;

  各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量(软件需求分析阶段,完全确定用户的所有需求是比较困难的,甚至可以说是不太可能的);

(2)V模型

  V模型大体可以划分为以下几个不同的阶段步骤:客户需求分析、软件需求分析、概要设计、详细设计、软件编码、单元测试、集成测试、系统测试、验收测试。

  局限性: 把测试作为编码之后的最后一个活动,需求分析等前期产生的错误直到后期的验收测试才能发现。

(3)螺旋模型

  螺旋模型是一种演化软件开发过程模型,它兼顾了快速原型的迭代的特征以及瀑布模型的系统化与严格监控。

  螺旋模型最大的特点在于引入了其他模型不具备的风险分析,使软件在无法排除重大风险时有机会停止,以减小损失。同时,在每个迭代阶段构建原型是螺旋模型用以减小风险的途径。螺旋模型更适合大型的昂贵的系统级的软件应用。 

  将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。

(4)迭代模型

  最早的迭代过程可能被描述为“分段模型(stagewise model)”。迭代模型是RUP推荐的周期模型。

  迭代包括产生产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布必需的所有其他外围元素。在某种程度上,开发迭代是一次完整地经过所有工作流程的过程:需求分析、设计、实施和测试工作流程。

  实质上,它类似小型的瀑布式项目。

  优点:与传统的瀑布模型相比较,迭代过程具有以下优点:

  1)降低了在一个增量上的开支风险。如果开发人员重复某个迭代,那么损失只是这一个开发有误的迭代的花费。

  2)降低了产品无法按照既定进度进入市场的风险。通过在开发早期就确定风险,可以尽早来解决而不至于在开发后期匆匆忙忙。

  3)加快了整个开发工作的进度。因为开发人员清楚问题的焦点所在,他们的工作会更有效率。

  4)由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。因此,迭代过程这种模式使适应需求的变化会更容易些。

(5)W模型:文档驱动

  优点: 

   将测试贯穿到整个软件的生命周期中,且除了代码要测试,需求、设计等都要测试。

  更早的介入到软件开发中,能尽早的发现缺陷进行修复。 

  测试与开发独立起来,并与开发并行。   

  缺点: 

  对有些项目,开发过程中根本没有文档产生,故W模型无法使用。 

  对于需求和设计的测试技术要求很高,实践起来很困难,文档驱动。

(6)H模型

  相对于V模型和W模型,H模型将测试活动完全独立出来,形成了一个完全独立的流程,将测试准备活动和测试执行活动清晰地体现出来。

(7)X模型

  目标是弥补V模型的一些缺陷。

4.测试基本过程

(1)一个规范化的软件测试过程包括以下基本的测试活动:

  拟定软件测试计划、方案;

  设计和生成测试用例、准备测试数据;

  执行测试,记录原始数据,对缺陷进行管理;

  生成软件测试报告、缺陷的统计和报表;

(2)软件测试过程与整个软件开发过程基本上是平行进行的;

(3)一个开发机构还应当制定软件测试规程,按照软件工程的规范,定义各项活动的目标和详细过程;

(4)测试基本过程示意图:

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多