软件生命周期模型汇总

前言

枯燥但有用,近期开始整理

五大模型

瀑布模型

图片来自软件工程--张海藩
顾名思义,瀑布也就是从上至下依次进行,也就是说当水没有留下来之前,你永远不知道这水是什么样的

优势

  • 强迫开发人员采用规范的技术方法
  • 严格规定了每个阶段需要提交的文档
  • 每个阶段结束前都需要进行严格的技术审查和管理复审

劣势

  • 软件未设计完成之前,客户无法知道软件是什么样
  • 开发人员与客户缺乏有效沟通,从而导致开发的软件不能满足用户的需求

快速原型模型

图片来自软件工程--张海藩
这里可以看出,快速原型这里最大的改良就是先开发出一个软件原型,这个原型所实现的功能就是最终软件功能的子集,因此可以更好的满足用户的真实需求。

优势

  • 通常可以满足用户的真实需求
  • 开发过程基本上是线性顺序过程

增量模型

图片来自软件工程--张海藩

增量模型也称渐增模型。开发软件时将软件作为一系列增量构件来设计,编码,集成与测试。每个构件由若干个相互协作的模块构成,并且完成独立的功能。

这里就发现增量模型和快速原型模型有部分的相似,二者在最开始时创建的都是最终软件的一部分。但我个人认为二者的不同在于,快速原型需要在所有的需求确定之后才可以生成快速原型,而增量模型只需在确定一部分需求之后就可以开始设计。

优势

  • 较短时间向用户提交可完成的部分工作的软件
  • 逐步增加产品功能,从而使用户有比较充裕的时间进行学习。

可以看出,这种模型对于开发人员有着更高的要求,开发人员必须合理将软件的功能划分为多个独立的模块,从而使得一个模块完成一个功能,多个模块组合为一个完整软件,最好要满足高内聚与低耦合。

螺旋模型

图片来自软件工程--张海藩
该模型主要是使用原型及其他方法来尽量降低风险,要进行多个阶段,每个阶段可以认为是增加了风险评估的快速原型。

优势

  • 有利于已有软件的重用
  • 有助于把软件质量作为软件开发的一个重要目标
  • 减少了过多测试或测试不足的风险
  • 软件维护与软件开发没有区别

喷泉模型

在这里插入图片描述
由图可以看出,喷泉模型就是各阶段的迭代以及阶段内的迭代。其实可以认为是一个循环,可进行每个阶段的不断循环,也可以进行各个阶段的循环

总结

仅仅作为笔记整理。

  • 9
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小王不头秃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值