软件过程模型

定义

      软件过程模型又称为软件开发模型,它是软件开发全部过程、活动和任务的结构框架。

 

分类

 

瀑布模型

      瀑布模型是一种线性的过程,瀑布模型要求有明确的需求分析,而要达到这一点在现实开发中几乎不可能。这种模型是最早也是应用最广泛的软件过程模型。

      优点:容易理解,管理成本低;强调开发的阶段性早期计划及需求调查和产品测试。

    缺点:1、用户不确定需求

          2、开发人员不确定

          3、开发人员用户很难沟通

    适用对象:以文档为驱动,适合于软件需求很明确的软件项目。

 

增量模型

    融合了瀑布模型的基本成分和原型实现的迭代特征。增量模型强调每一个增量均发布一个可操作的产品。增量模型在各个阶段并不交付一个可运行的完整产品,而是交付满足客户需求的一个子集的可运行产品

     优点:1、人员分配灵活

          2、第一个可交付版本所需要的成本和时间很少

    缺点:1、软件具备开放式体系结构

          2、容易退化为边做边改,使软件过程的控制失去整体性。

          3、至始至终开发者和客户纠缠在一起,直到完全版本出来。

 

演化模型

1)原型法

 

      最大特点就是它采用了一种动态定义需求的方法。即不需要有明确的需求。被开发的原型应交付客户使用,并收集客户的反馈意见,可在下一轮中对原型进行改进。

    原型又分为探索型、实验性和演化型。

    探索型原型的目的是要弄清楚目标的要求,确定所希望的特性,并探讨多种方案的可行性。

    实验型原型的目的是验证方案或算法的合理性,是在大规模开发和实现前,用于考查方案是否合适、规格说明是否可靠等。

    演化型原型的目的是将原型作为目标系统的一部分,通过对原型的多次改进,逐步将原型演化成最终的目标系统。

    优点:能够快速、低成本地构建原型

    缺点:没有考虑软件的整体质量和长期的可维护性

    适用对象:开发初期用户需求是不完整、不准确的

 

2)螺旋模型

      结合了瀑布模型演化模型的优点,最主要的特点在于加入了风险分析。它是由指定计划、风险分析、实施工程、客户评估这一循环组成的,它最初从概念项目开始第一个螺旋。

    优点:支持用户需求的动态变化。

    缺点:1、需要开发人员具有相当丰富的风险评估经验和专门知识。

          2、增加开发成本和延迟提交时间。

          3、支持用户需求的动态变化

    使用对象:庞大、复杂且具有高风险的系统。

 

喷泉模型

   以用户需求为动力,已对象作为驱动的模型。适用面向对象的开发过程,最核心的特点是迭代无间隙性。所有的开发活动没有明显的边界,允许各种开发活动同步进行。

    优点:提高软件项目的开发效率,节省开发时间。

    缺点:1、需要大量的开发人员,不利于项目的管理。

          2、要求严格管理文档,使得审核的难度加大。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值