常用软件开发模型的介绍

一、瀑布模型:

       瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

       在瀑布模型中,软件开发的各项活动严格按照线性方式进行,当前活动接受上一项活动的工作结果,实施完成所需的工作内容。当前活动的工作结果需要进行验证,若验证通过,则该结果作为下一项活动的输入,继续进行下一项活动,否则返回修改。

 

优点:(1)有利于大型软件开发过程中人员的组织和管理;

           (2)有利于软件开发方法和工具的研究和使用,从而提高大型软件项目开发的质量和效率。

缺陷:(1)由于开发模型呈线性,所以当开发成果尚未经过测试时,用户无法看到软件的效果,这样软件与用户见                     面的时间较长,增加了一定的风险。

           (2)早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。

           (3)各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。

           (4)在软件需求分析阶段,完全确定用户的所有需求是比较困难的,甚至可以说是不太可能的。


二、增量模型:

增量模型有两种形式:基于瀑布模型的渐增模型(也叫演化模型)和基于原型的快速原型模型(也叫原型模型)。

1、渐增模型:实际上,我们可以将其看作是重复多个瀑布模型。


优点:人员分配灵活,刚开始不用投入大量人力资源。如果核心产品很受欢迎,则可增加人力实现下一个增量,客户可以不断地看到所开发的软件,从而降低开发风险 。

缺点:
(1)由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构。
(2)在开发过程中,需求的变化是不可避免的。此模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而是软件过程的控制失去整体性。

2、原型模型:

快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。

优点:减少由于软件需求不明确带来的开发风险。

缺陷:

(1)所选用的开发技术和工具不一定符合主流的发展;

(2)快速建立起来的系统结构加上连续的修改可能会导致产品质量低下。


三、螺旋模型:

螺旋模型将瀑布模型和增量模型结合起来,主要有四个方面的活动:

(1)制定计划——确定软件目标,选定实施方案,弄清项目开发的限制条件。

(2)风险分析——分析所选方案,考虑如何识别和消除风险。

(3)实施工程——实施软件开发。

(4)客户评估——评价开发工作,提出修正建议。


优点:

(1)设计上的灵活性,可以在项目的各个阶段进行变更.

(2)以小的分段来构建大型系统,使成本计算变得简单容易

(3)客户始终参为保证了项目不偏离正确方向以及项目的可控性

(4)客户始终掌握项目的最新信息,从而他或她能够和管理层有效地交互.

(5)客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品

缺陷:

(1)采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失。

(2)过多的迭代次数会增加开发成本,延迟提交时间。


四、喷泉模型:

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

      

优点:该模型的各个阶段没有明显的界限,开发人员可以同步进行开发,故而可以提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程。

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


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 20
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值