乐趣区

关于瀑布流:四种常见研发模式及其优缺点对比-IDCF

一、瀑布模型

1.1 模型介绍

1970 年温斯顿 - 罗伊斯提出。将软件生存周期的各项流动规定为按固定程序而连贯的若干阶段工作,形如瀑布流水,最终失去软件产品。

1.2 核心思想

按工序将问题化简,将性能的实现与设计离开,便于分工协作,即采纳结构化的剖析与设计办法将逻辑实现与物理实现离开。将软件生命周期划分为制订打算、需要剖析、软件设计、程序编写、软件测试和运行保护等六个根本流动,并且规定了它们自上而下、互相连接的固定秩序,如同瀑布流水,逐级着落。

1.3 模型毛病

  • 各阶段齐全固定,输入大量文档,极大减少工作量;
  • 线性开发,减少我的项目延期危险;
  • 不适应用户需要的变动。

二、迭代模型

2.1 模型介绍

RUP(对立开发过程)举荐的周期模型,被定义为: 迭代包含产生产品公布的全副开发流动及外围因素,相似小型的瀑布模型。

2.2 模型长处 (与瀑布模型相比)

  • 升高了增量的危险;
  • 升高产品无奈按既定进度投入市场危险;
  • 放慢了整个开发工作的进度;
  • 迭代过程适应需要变动更容易。

2.3 模型毛病

  • 在我的项目早起开发可能有所变动,对于开发人员要求及我的项目管理者能力有较高要求。

三、螺旋模型

3.1 模型介绍

1988 年,巴利 - 玻姆正式提出”螺旋模型“,它将瀑布模型和疾速原型模型联合起来,强调了其余模型所漠视的危险剖析,特地适宜于大型简单的零碎。危险驱动的办法体系。

3.2 模型长处

  • 设计的灵活性,能够在我的项目的各个阶段进行变更;
  • 以小的分段来构建大型零碎,成本计算更简略;
  • 客户始终参加每个阶段的开发,保障了我的项目不偏离正确方向及我的项目的可控性。

3.3 模型毛病

  • 该模型强调危险剖析,让客户承受和信赖这种剖析形式是不易的;
  • 如果执行危险剖析影响我的项目利润,那么进行危险剖析毫无意义;
  • 研发人员应该善于发现危险,精确剖析危险,否则将会带来更大的危险。

四、麻利开发

4.1 模型介绍

以迭代模型为实践根底,1990 年开始逐步引起关注,包含 XP、Scrum、FDD、DSDM、Crystal、ASD、Kanban、Lean 等。强调研发团队与业务团队严密单干、面对面沟通、频繁交付版本、紧凑而自我组织型的团队。

4.2 模型长处

  • 通过疾速而继续交付有用的软件来满足客户的需要;
  • 强调人员和互动,而不是过程和工具。客户、开发人员和测试人员常常互相交换;
  • 频繁交付工作软件(几周而不是几个月);
  • 面对面交谈是最好的交换形式;
  • 业务与研发之间日常亲密的单干;
  • 继续关注技术的卓越水平和良好的设计;
  • 常常适应一直变动的环境。

4.3 模型毛病

  • 必要的设计和文档不足器重;
  • 大型项目,开发初期,很难评估工作量;
  • 如果业务或客户不分明他们想要的最终后果,我的项目很容易偏离轨道。

起源:云栈技术 CSTC
作者:IDCF 社区 Geekwolf

退出移动版