软件测试理论基础(二)

软件测试模型

瀑布模型

定义
瀑布模型是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好“返回”上一个阶段并进行适当的修改,项目开发进程从一个阶段“流动”到下一个阶段,这也是瀑布模型名称的由来,瀑布模型也称软件生存周期模型

优点

  • 为项目提供了按阶段划分的检查点
  • 当一阶段结束后,只需要关注后续阶段即可
  • 可在迭代模型中应用瀑布模型

缺点

  • 在项目各个阶段之间极少有反馈只有在项目生命周期的后期才能看到结果
  • 通过过多的强制完成日期和里程碑跟踪各个项目阶段

V模型

V模型

定义
V模型,RAD(Rap Application Development,快速应用开发)模型是软件开发过程中的一个重要模型,由于其模型构图形似字母V,所以又称软件开发的V模型

优点

  • 缩短开发周期
  • 提高开发效率

缺点

  • V模型仅仅把测试过程作为在需求分析、系统设计及编码之后的一个阶段,忽视了测试对需求分析,系统设计的验证,需求的满足情况一直到后期的验收测试才被验证。
    解决思路
    解决的思路是,当一个软件开发的时候,研发人员和测试人员需要同时工作,测试在软件做需求分析的同时就会有测试用例的跟踪,这样,可以尽快找出程序错误和需求偏离,从而更高效的提高程序质量,最大可能的减少成本,同时满足用户的实际软件需求

W模型

W模型

定义
开发一个v模型;测试一个v模型组合起来的模型(w模型也叫双v模型)

优点

  • 开发伴随着整个开发周期,需求和设计同样要测试
  • 更早的介入测试,可以发现初期的缺陷,修复成本低
  • 分阶段工作,方便项目整体管理。

缺点

  • 开发和测试依然是线性的关系,需求的变更和调整,依然不方便
  • 如果没有文档,根本无法执行w模型;对于项目组成员的技术要求更高!

H模型

H模型
优点

  • 开发的H模型揭示了软件测试除测试执行外,还有很多工作
  • 软件测试完全独立,贯穿整个生命周期,且与其他流程并发进行
  • 软件测试活动可以尽早准备、尽早执行,具有很强的灵活性
  • 软件测试可以根据被测物的不同而分层次、分阶段、分次序的执行,同时也是可以被迭代的

缺点

  • 管理型要求高:由于模型很灵活,必须要定义清晰的规则和管理制度,否则测试过程将非常难以管理和控制
  • 技能要求高:H模型要求能够很好的定义每个迭代的规模,不能太大也不能太小
  • 测试就绪点分析困难:测试很多时候,你并不知道测试准备到什么时候是合适的,就绪点在哪里,就绪点的标准是什么,这就对后续的测试执行的启动带来很大困难
  • 对于整个项目组的人员要求非常高:在很好的规范制度下,大家都能高效的工作,否则容易混乱。例如:你分了一个小的迭代,但是因为人员技能不足,使得无法有效完成,那么整个项目就会受到很大的干扰。

原型模型

定义
原型模型会借用已有系统作为原型模型,通过“样品”不断改进,使得最后的产品就是用户所需要的。主要是通过向用户提供原型获取用户的反馈,使开发出的软件能够真正反映用户的需求。同时,原型模型采用逐步求精的方法完善原型,使得原型能够“快速”开发,避免了像瀑布模型一样在冗长的开发过程中难以对用户的反馈作出快速的响应。相对瀑布模型而言,原型模型更符合人们开发软件的习惯,是目前较流行的一种实用软件生存期模型

优点

  • 开发人员和用户在“原型”上达成一致。这样一来,可以减少设计中的错误和开发中的风险,也减少了对用户培训的时间,而提高了系统的实用、正确性以及用户的满意程度
  • 缩短了开发周期,加快了工程进度
  • 降低成本

缺点

  • 当告诉用户,还必须重新生产该产品时,用户是很难接受的。这往往给工程继续开展带来不利因素
  • 不宜利用原型系统作为最终产品。采用原型模型开发系统,用户和开发者必须达成一致:原型被建造仅仅是用户用来定义需求,之后便部分或全部抛弃,最终的软件是要充分考虑了质量和可维护性等方面之后才被开发

适用场景
原型模型适用于那些不能预先确切定义需求的软件系统的开发,更适用于那些项目组成员(包括分析员、设计员、程序员和用户)不能很好的交流或者通信的情况下

喷泉模型

定义
喷泉模型是一种以用户需求为动力,以对象为驱动的模型,主要用于描述面向对象的软件开发过程。该模型认为软件开发过程自下而上周期的各阶段是相互重叠和多次反复的,就像水喷上去又可以落下来,类似一个喷泉。各个开发阶段没有特定的次序要求,并且可以交互进行,可以在某个开发阶段中随时补充其他任何开发阶段中的遗漏

优点

  • 喷泉模型不像瀑布模型那样,需要分析活动结束后才开始设计活动,设计活动结束后才开始编码活动。该模型的各个阶段没有明显的界限,开发人员可以同步进行开发。其优点是可以提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程

缺点
由于喷泉模型在各个开发阶段是重叠的,因此在开发过程中需要大量的开发人员,因此不利于项目的管理。此外这种模型要求严格管理文档,使得审核的难度加大,尤其是面对可能随时加入各种信息、需求与资料的情况

V模型/W模型/H模型比较

  • V模型适用于中小企业
  • W模型适用于中大型企业(因为人员要求高)
  • H模型人员要求非常高,很少有公司使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值