瀑布模型:

瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

优点:1)为项目提供了按阶段划分的检查点

2)当前一阶段完成后,只需要关注后续阶段

3)可在迭代模型中使用瀑布模型

4)提供了相对固定的模板,6个阶段有一个共同的指导过程

缺点:

1)各个阶段的划分完全固定,阶段之间产生了大量的文档,工作量较大

2)开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险

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

迭代模型: 
迭代的方式就有所不同,假如这个产品要求6个月交货,我在第一个月就会拿出一个产品来,当然,这个产品会很不完善,会有很多功能还没有添加进去,bug很多,还不稳定,但客户看了以后,会提出更详细的修改意见,这样,你就知道自己距离客户的需求有多远,我回家以后,再花一个月,在上个月所作的需求分析、框架设计、代码、测试等等的基础上,进一步改进,又拿出一个更完善的产品来,给客户看,让他们提意见。

就这样,我的产品在功能上、质量上都能够逐渐逼近客户的要求,不会出现我花了大量心血后,直到最后发布之时才发现根本不是客户要的东西的情况。

敏捷开发:

首先把客户最关注的软件原型先做出来,交付或者上线,在实际场景中去修改弥补需求中的不足,快速修改,再次发布版本。再次上线或者交付。通过一些敏捷实践方式,细化story,可以提供更小的迭代。如此循环,直到用户(客户)满意。适用于需求不明确的项目、创新性的项目或者需要抢占市场的项目。

敏捷开发和迭代不是一回事

敏捷开发与迭代式开发是整体与局部的关系。打个比方,前者就像地球,而后者像欧亚大陆。

敏捷开发是一个总体概念,而迭代式开发只是几乎所有敏捷开发所采用的一个主要的基础实践。敏捷开发除迭代式开发外,还包含了其他许多管理与工程技术实践,如演进式架构设计、敏捷建模、重构、自动回归测试(ART)等等。

瀑布模型,迭代模型,敏捷开发相关推荐

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

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

  2. 懵懂中的迭代与敏捷开发

    迭代,两层意思:重复.前进.典型的迭代方法有XP.Scrum等等. 敏捷,含有快速.高效.准确的意思,敏捷开发方法通常应用时间定量的迭代和进化式开发.使用自适应计划.提倡增量交付并包含其他提倡敏捷性( ...

  3. 软件测试 w模型 迭代模型 软测内容

    目录 W模型(双v模型) W模型的特点 系统测试设计: 瀑布,v,w三个模型共同特点: 优点: 缺点: 迭代模型 敏捷开发 迭代 优点: 缺点 测试工作的内容 主要工作内容 测试用例的相关概念 测试用 ...

  4. 开发模型的理解:瀑布模型/增量式/迭代/敏捷开发——笔记

    首先,不管采用何种开发模型.软件开发都至少具有以下的周期,包括: 需求获取/分析(系统分析.软件分析) 设计 实现 测试 发布(运行) 维护 正在上传-重新上传取消 既然所有的开发模型都具有相同的开发 ...

  5. 104. 软件工程的开发过程几种模型(瀑布模型、快速原型开发模型、增量模型、迭代模型、螺旋模型)

    文章目录 1.前言 2.瀑布模型--按阶段严格完成 (1)瀑布模型把整个项目过程分成了六个主要阶段: (2)举个例子来理解瀑布模型 (3)优缺点 (4)解决的重要问题 3.快速原型模型--低成本快速的 ...

  6. 软件开发模型和测试模型(瀑布模型,螺旋模型,增量、迭代,敏捷,敏捷中的测试,软件测试v模型,软件测试w模型)

    一.软件的生命周期 需求分析--计划--设计--编码--测试--运行维护 二.瀑布模型 是所有其他模型的基础框架,每个阶段只执行一次,是线性顺序进行的软件开发模式 · 优点:强调开发的阶段性: 强调早 ...

  7. 敏捷开发_敏捷开发和迭代开发的异同分析

    随着软件开发技术的不断发展,现在出现了敏捷开发和迭代开发两种新的开发方式,这两种开发方式都可以提高软件开发的效率.那么它们之间有什么相同的地方和不同的地方呢?下面一起来了解一下相关的知识吧! 一.定义 ...

  8. 敏捷开发是一种以人为核心、迭代、循序渐进的开发方法

    简单的说,敏捷开发是一种以人为核心.迭代.循序渐进的开发方法.在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征.换言之,就是把一个大项目分为多个相互联 ...

  9. 浅谈敏捷开发和迭代开发相结合

    (转自:http://www.cnblogs.com/xiangzhong/p/4983257.html) 浅谈敏捷开发和迭代开发相结合 由于最近公司委派管理一个项目的开发,以往对开发体系没有特别的研 ...

  10. 试论敏捷开发方法的共同特征

    随着敏捷软件开发宣言的签署和发布,多个敏捷方法框架在全球得到传播和使用.因为各个敏捷方法框架由不同的专家组维护,所以各个方法有不同的表述方式,有不同的着眼点和侧重点.本文将为你介绍敏捷开发方法框架的共 ...

最新文章

  1. 第二十七讲 微分方程组解的图像
  2. 第8章例题 6-4 输入年份和天数,输出对应的年、月、日
  3. 在已安装win10环境中利用EasyBCD引导安装Ubuntu18.04(亲自测试,都是血和泪)
  4. JavaScript中Map的应用及Map中的bug
  5. python list遍历定位元素_python for循环,第二遍定位不到元素?
  6. 情人节,我表白了CSDN小姐姐后,竟然...【为表白写了一个绘图工具,让我不再手残】
  7. 最新Java校招面试题及答案
  8. 再读《精通css》00
  9. React Hooks 实战 CNode 社区移动端网站
  10. vue进入页面加载数据缓慢实现loading提示
  11. win10激活bug 任务栏假死点击无反应解决方案
  12. 2023华为海思一面(数字后端)
  13. 计算机wifi共享怎么设置,笔者教你win7如何设置wifi共享
  14. 打印机如何双面打印、复印?
  15. 想知道吗?CTO 比普通程序员强在哪?
  16. trc20地址监听php,Tron/USDT-TRC20 PHP开发包
  17. MTK AF Tuning Preparation项目
  18. consul知识梳理与环境搭建
  19. js实现touch移动触屏滑动事件
  20. 嵌入式C设计模式---职责链设计模式

热门文章

  1. Linux - 一次性计划任务之at命令使用
  2. 开展922绿色出行活动 加强城市绿色交通安全管理
  3. B. Disturbed People(模拟) Codeforces Round #521 (Div. 3)
  4. 乐有家携手法大大,实现租房签约数字化
  5. vue v-for遍历动态展示元素数量
  6. 解密猫晚直播技术:如何保障全球200多个国家和地区同时在线狂欢?
  7. 柠檬班unitest和数据驱动
  8. 重定向时,将Unreal4骨骼调整为Tpose
  9. 百度搜索引擎结果网址参数搜索历史记录(rsv_sug)
  10. 一种小微商户的调额方法值得您参考