【软件测试】常见的开发模型和测试模型


前言

软件的生命周期可以分为需求分析——计划——设计——编码——测试——运行维护
针对软件生命周期,开发了一些模型供大家进行参考,不同的模型适用于不同的场景。


一、瀑布模型

瀑布模型的流程如下
开始——>需求分析——>计划——>设计——>编码——>测试——>结束
我们可以看到瀑布模型的特点:每个流程只执行了一次,并没有重复执行的情况。
而这样的开发流程就会导致可以运行的产品要经过很长的时间才能让人看到。
对于测试人员:前**面各阶段如果出现了问题并不能及时发现,只能等到测试阶段才能发现问题。失去了及早修复的机会。**如果开发人员技术不好可能会不断返工延误了产品上线时间。
瀑布模型适用场景:需求固定的小项目。

二、螺旋模型

我们可以先看看螺旋模型的示例图。
我们可以看到螺旋模型的特点:

  • 在每个阶段都引入了风险分析和原型。 因此出现了一个新的职业:风险分析师。负责减少各阶段遗留的风险问题。
  • 全过程风险管理
  • 强调各开发阶段的质量。
    对于螺旋模型,项目可能存在的风险与风险管理人员的水平直接挂钩,对于整个项目的成本提高了许多。
    适用场景:规模庞大、复杂度高、风险大的项目。
    在这里插入图片描述

三、增量模型和迭代模型

在增量模型中,引入了软件持续构建机制,对项目进行逐块建造。
在这里插入图片描述
迭代模型是对于项目进行反复求精的一个机制。
增量模型和迭代模型通常都是结合使用的。我认为下面的图片可以更好的对两个模型进行理解。
增量模型和迭代模型适用场景:大型项目,需求不明确。
在这里插入图片描述

四、敏捷模型

在瀑布模型中我们知道它较为“迟钝’的开发流程,而如今的软件变更是十分迅速的。为了帮助项目快速适应变更请求,就引入了敏捷模型。
在敏捷模型中,需求被分解成许多可以增量开发的小部分。敏捷模型采用迭代开发。每个增量部分都是在迭代中开发的。每次迭代都旨在小而易于管理,并且只能在几周内完成。⼀次为客户计划、开发和部署⼀个迭代。没有制定长期计划。
敏捷模型的特点:轻文档,轻流程,重目标,重产出

Scrum

Scrum模型是敏捷模型中较为流行的一种。在该模型中,一共有三个角色和五个会议。
三个角色分别为:产品经理、项目经理、研发团队
五个会议:计划会议、迭代计划会议、每日例会、演示会议、回顾会议

  • 产品负责⼈负责整理user story,形成左侧的product backlog。
  • 计划会议:产品经理讲解user story,对其进行估算和排序
  • 迭代计划会议:项目团队对每一个story进行任务分解,并估计工时
  • 每日例会:成员回答每日任务和计划
  • 演示会议:迭代结束之后召开演示会议进行成果评估。
  • 回顾会议:对本期迭代进行总结,制定改进计划用于下一次迭代。
    在Scrum中测试人员的任务:由于轻文档的原因,测试人员尽量采用思维导图、探索性测试、自动化测试的方式进行测试。

五、测试模型

测试模型中比较具有代表性的就是V模型和W模型

V模型

如下图所示,明确的标注了测试过程中不同类型的测试。
它的缺点如瀑布模型一样,没有在需求阶段就接入测试,而是在编码之后才开始测试。
在这里插入图片描述

W模型(双V模型)

W模型增加了软件各开发阶段中应同步进行的验证和确认活动。
特点:测试的对象不仅是程序,需求、设计等同样需要测试,测试和开发是同步进行的。
有利于全面的发现问题,但需求、设计、编码等活动被视为串行,一个阶段的开发和测试结束后才能进行下一个阶段。
在这里插入图片描述

  • 16
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值