软件生命周期模型:是从一个特定角度提出的对软件过程的简化描述,是对软件开发实际过程的抽象,它包括构成软件过程的各种活动、软件工件以及参与角色等。

瀑布模型的优点:

有利于大型软件开发过程中人员的组织、管理,有利于软件开发方法和工具的研究,从而提高了大型软件项目开发的质量和效率。

瀑布模型的缺点:

(1)开发过程一般不能逆转,否则代价太大;

(2)实际的项目开发很难严格按该模型进行;

(3)客户往往很难清楚地给出所有的需求,而该模型却要求如此。

(4)软件的实际情况必须到项目开发的后期客户才能看到,这要求客户有足够的耐心。

瀑布模型的使用范围:

(1)用户的需求非常清楚全面,且在开发过程中没有或很少变化;

(2)开发人员对软件的应用领域很熟悉;

(3)用户的使用环境非常稳定;

(4)开发工作对用户参与的要求很低。

快速原型模型的优点:

(1)可以得到比较良好的需求定义,容易适应需求的变化;

(2)有利于开发与培训的同步;

(3)开发费用低、开发周期短且对用户更友好。

快速原型模型的缺点:

(1)客户与开发者对原型理解不同;

(2) 准确的原型设计比较困难;

(3) 不利于开发人员的创新。

快速原型模型的使用范围:

(1)对所开发的领域比较熟悉而且有快速的原型开发工具;

(2)项目招投标时,可以以原型模型作为软件的开发模型;

(3)进行产品移植或升级时,或对已有产品原型进行客户化工作时,原型模型是非常适合的。

增量模型的优点:

(1)采用增量模型的优点是人员分配灵活,刚开始不用投入大量人力资源;

(2)如果核心产品很受欢迎,则可增加人力实现下一个增量;

(3)可先发布部分功能给客户,对客户起到镇静剂的作用。

增量模型的缺点:

(1)并行开发构件有可能遇到不能集成的风险,软件必须具备开放式的体系结构;

(2)增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而是软件过程的控制失去整体性。

增量模型的使用范围:

(1)进行已有产品升级或新版本开发,增量模型是非常适合的;

(2)对完成期限严格要求的产品,可以使用增量模型;

(3)对所开发的领域比较熟悉而且已有原型系统,增量模型也是非常适合的。

螺旋模型的优点:

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

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

(3)客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性;

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

螺旋模型的缺点:

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

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

螺旋模型的使用范围:

螺旋模型只适合于大规模的软件项目。

1.7 什么是软件生命周期模型?试比较瀑布模型,快速原型模型,增量模型和螺旋模型的优缺点,说明每种模型的适用范围相关推荐

  1. 【软件工程】软件过程各种模型的理解[ 瀑布模型 快速原型模型 增量模型 螺旋模型 喷泉模型 ]

    什么是软件过程? 软件过程是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤. 软件生命周期 瀑布模型 瀑布模型优点 : 1.为项目提供了按阶段划分的检查点 2.当前活动 ...

  2. 【软件工程】几种模型概念:瀑布模型,快速原型模型,增量模型,螺旋模型,喷泉模型

  3. mcq 队列_MCQ | 软件生命周期模型

    mcq 队列 Q1. Which of the following models is best suited when the requirements of the software are no ...

  4. 软件工程生命周期模型_软件生命周期模型比较| 软件工程

    软件工程生命周期模型 软件生命周期模型 (Software Lifecycle Models) There are five software lifecycle models that are co ...

  5. 软件生命周期模型 -------- 瀑布模型 和 原型模型

    文章目录 瀑布模型(Waterfall Model) 模型概述: 核心思想: 模型特点: 优点: 缺点: 分类: 1.传统瀑布模型: 2.加入迭代的瀑布模型: 原型模型: 优点: 缺点: 瀑布模型(W ...

  6. 软件开发生命周期中的设计阶段_什么是软件生命周期模型?软件测试和软件开发的关系分析!...

    软件生命周期这个词,对于大部分人应该比较陌生,但却不容忽视!正因为它的重要性,才有许多不同的软件开发生命周期模型,但是它们都有一个共同的特点,那就是在生命周期中的某一时刻,软件都会被测试.今天我就和大 ...

  7. 什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点,说明每种模型的使用范围。

    软件生命周期模型是跨越整个生存期的系统开发.运作和维护所实施的全部过程.活动和任务的结构框架. 瀑布模型  优点:它提供了一个模板,这个模板使得分析.设计.编码.测试和支持的方法可以在该模板下有一个共 ...

  8. 软件生命周期模型——瀑布模型

    模型概述 瀑布模型是一个经典的软件生命周期模型,也叫预测型生命周期.完全计划驱动型生命周期.在这个模型里,在项目生命周期的尽早时间,要确定项目范围及交付此范围所需的时间和成本. 在这个模型里,项目启动 ...

  9. 软件生命周期模型(瀑布型、V模型、W模型、敏捷开发模型)

    软件生命周期 软件生存周期的各项活动:需求分析.概要设计.详细设计.coding.测试.交付.验收.维护 软件开发模型 瀑布模型 定义:瀑布模型(Waterfall Model)是将软件生存周期的各项 ...

最新文章

  1. 嵌入式linux硬件成本,嵌入式Linux驱动和固件有何区别?供应商是如何用固件压缩成本的?...
  2. 【最详细】数据结构(C语言版 第2版)第三章课后习题答案 严蔚敏 等 编著
  3. php分页代码 页数太多,php分页函数示例代码分享
  4. poj2104 k-th number 主席树入门讲解
  5. c++11多线程学习笔记之一 thread基础使用
  6. HDOJ:1533-Going Home(最小费用流)
  7. linux设置ipsan_linux挂载ipsan服务器
  8. RouterOS PPTP和L2TP的配置
  9. matlab output()函数,matlab 函数y=f(input,output)该如何实现?
  10. Supported media formats (支持的媒体格式)
  11. 学钢琴时如何提高识谱能力
  12. [Leetcode 每日精选](本周主题-股票) 714. 买卖股票的最佳时机含手续费
  13. 盘点最令人难忘的十大谍战剧经典
  14. 六个方法帮你写走心的文案
  15. 优化器介绍—SGD、Adam、Adagrad
  16. 1.GraspNet-API之Grasp Lable Format
  17. Redis开启远程访问及密码认证
  18. 口音英语识别能力评测,你的AI升级了吗?
  19. 苟延残喘,回光返照:从Cheetah 10K.7到Cheetah NS
  20. 【珠穆朗玛峰编程练习题】

热门文章

  1. 2020604 Java基础复习
  2. 学习笔记转汉字区位码查询与算法
  3. 如何将nes游戏刻录到vcd光盘中玩?
  4. Android、Java要收费了!学霸程序员怒捅马蜂窝,沙特记者命运?GitHub挂了!
  5. python日志模块 超量处理_Python logging日志处理模块
  6. 成都计算机专科学院分数线,成都计算机工业职业技术学校2019年招生录取分数...
  7. server2008网卡驱动包_网卡工作原理详解
  8. matlab趋势分析法,趋势分析法案例.pdf
  9. SEO人员,怎么将网站关键词排进SERP前十名?
  10. 【Python】面向对象,封装