什么是增量模型

增量模型融合了瀑布模型的基本成分(重复应用)和原型实现的迭代特征,该模型采用随着日程时间的进展而交错的线性序列,每一个线性序列产生软件的一个可发布的“增量”。当使用增量模型时,第1个增量往往是核心的产品,即第1个增量实现了基本的需求,但很多补充的特征还没有发布。客户对每一个增量的使用和评估都作为下一个增量发布的新特征和功能,这个过程在每一个增量发布后不断重复,直到产生了最终的完善产品。增量模型强调每一个增量均发布一个可操作的产品。采用增量模型的软件过程如下图所示:

增量模型与原型实现模型和其他演化方法一样,本质上是迭代的,但与原型实现不一样的是其强调每一个增量均发布一个可操作产品。早期的增量是最终产品的“可拆卸”版本,但提供了为用户服务的功能,并且为用户提供了评估的平台。

增量模型的特点

增量模型的特点是引进了增量包的概念,无须等到所有需求都出来,只要某个需求的增量包出来即可进行开发。虽然某个增量包可能还需要进一步适应客户的需求并且更改,但只要这个增量包足够小,其影响对整个项目来说是可以承受的。

增量模型的优缺点

1、增量模型的优点

  采用增量模型的优点是人员分配灵活,刚开始不用投入大量人力资源。如果核心产品很受欢迎,则可增加人力实现下一个增量。当配备的人员不能在设定的期限内完成产品时,它提供了一种先推出核心产品的途径。这样即可先发布部分功能给客户,对客户起到镇静剂的作用。此外,增量能够有计划地管理技术风险。

  2、增量模型的缺点

  增量模型存在以下缺陷:

  1) 由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构。

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

  3)如果增量包之间存在相交的情况且未很好处理,则必须做全盘系统分析,这种模型将功能细化后分别开发的方法较适应于需求经常改变的软件开发过程。

增量模型(Incremental Model)相关推荐

  1. 增量模型(incremental model) 设计核心功能+逐步累加

    由来: Mills等人于1980年提出 首先对系统最核心或最清晰的需求进行分析.设计.实现.测试并集成到系统中. 再按优先级逐步对后续的需求进行上述工作,逐步建设成一个完整系统的开发方法. 举例: 使 ...

  2. 增量模型与快速模型的异同。

    今天在讨论我们用的是什么模型开发网站的时候,我跟队友在快速原型与增量模型之间犹豫不定,对它们的异同并不是十分的清楚,所以我准备把分辨它们的异同作为作业. 增量模型 增量模型的特点是引进了增量包的概念, ...

  3. 【中级软考】软件开发生命周期模型 瀑布模型、增量模型、原型模型、螺旋模型、喷泉模型、RUP(Rational Unified Process 统一软件开发过程)、敏捷开发(开发方法,不是周期模型)

    文章目录 瀑布模型/改进的瀑布模型(Waterfall Model) 螺旋模型(Spiral Model) 增量和迭代模型(Incremental Model) 原型法(RAPId Prototype ...

  4. 软件测试(概念Ⅱ) · 开发模型 · 软件的生命周期 · 瀑布模型 · 螺旋模型 · 增量模型 · 迭代模型 · 敏捷模型 · scrum · 软件测试模型之 V 模型 W 模型

    一.开发模型的由来 二.软件的生命周期 三.瀑布模型(Waterfall Model) 四.螺旋模型(Spiral Model) 五.增量模型(Incremental Model) 六.迭代模型(Ra ...

  5. 软件开发模型 - 瀑布模型 快速原型模型 增量模型 螺旋模型 及优缺点详解

    一.软件开发过程模型 软件开发模型(Software Development Model)是指软件开发全部过程.活动和任务的结构框架.软件开发包括需求.设计.编码和测试等阶段,有时也包括维护阶段. 软 ...

  6. 软件开发传统模型——瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型

    软件开发模型: 定义: 软件开发的全部过程.活动和任务的结构框架,通过该模型能清晰.直观地表达软件开发全过程,明确地规定要完成的主要活动和任务,它奠定了软件项目工作的基础. 其中最为代表的就有此五类模 ...

  7. 基于pytorch的模型压缩和模型剪枝Model Prune示例

    神经网络和卷积神经网络的模型剪枝Model Prune 1,神经网络和卷积神经网络模型剪枝方法. 2,可指定剪枝率进行定向剪枝,并输出剪枝后参数统计和finetune. 3,支持MLP, Lenet, ...

  8. Django(五)模型(model)系统 -- 常用字段和字段参数

    Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据 ...

  9. 参数化模型(parametric model)和非参数化模型non-parametric model)的区别?哪些模型是参数化模型,哪些模型是非参数化模型?

    参数化模型(parametric model)和非参数化模型non-parametric model)的区别?哪些模型是参数化模型,哪些模型是非参数化模型? 统计学习模型又可以分为参数化模型(para ...

最新文章

  1. 数据结构与算法:08 Leetcode同步练习(三)
  2. Spring 5.3 正式GA,维护至2024年,4.3版本年末结束维护
  3. 倒排索引优化 - 跳表求交集 空间换时间
  4. 剑指offer二:字符串中的空格替换
  5. 趣味编程:函数式链表的快速排序(参考答案)
  6. 软件网络协议测试,网络协议测试方法是什么
  7. restlet_Restlet框架– Hello World示例
  8. 风格和个性!一组微质感图标设计灵感
  9. iZotope系列音频软件如何卸载
  10. 数据呈现—ListView x Adapter
  11. 数据处理中的过采样、下采样、联合采样和集成采样
  12. 迅为IMX6ULL开发板Linux系统移植-NXP官方Linux源码编译
  13. android viewpager实现画廊效果,ViewPager实现2D、3D画廊效果
  14. 计算机思维的概念知识点,大学计算机—基于计思维知识点.docx
  15. 高考数学必考知识点高中数学重点知识归纳
  16. C++中如何创建一个类?
  17. mysql查询各专业人数_查询各专业的学生数。
  18. java caller_java中callee获取caller
  19. 调gensim库,word2vec模型的保存和加载
  20. 用了这么多年iPhone,你知道包装盒里为何会有两张贴纸?看完涨知识

热门文章

  1. 新手做亚马逊测评到底需要多少钱?新手小白起步难吗?
  2. 电容充放电时间计算公式
  3. make menuconfig详解
  4. ISIS:中央系统到中央系统
  5. 【计算机网络】-中间系统到中间系统(isis)
  6. PyCharm使用教程(较详细,图+文)
  7. sentinel 滑动时间窗口算法
  8. 交通标志定位与识别python和opencv
  9. 面试-cookies和session
  10. MATLAB 二值图像中的白色变为彩色