Scrum: 增量和迭代开发有什么区别?Scrum: Incremental vs Iterative

一个渐进的发展过程的工作,工作是切成片(增量)的基础上。每个增量都建立在之前的基础之上。因此,随着时间的推移建立功能完备的功能模块,每个模块都添加到已经生成的功能中。 迭代开发是重复和改进循环/工作方式(迭代)的过程。

增量模型 (Incremental Model) 是您在部分中构建整个解决方案的地方,但是在每个阶段或部分结束时您没有, 任何可以审查或反馈的东西。您需要等到增量过程的最后阶段才能交付最终产品。

迭代模型 (Iterative Model) 是我们迭代这个想法并在迭代各种版本时不断改进的地方。你从一个版本移动到另一个版本你决定(根据反馈)在新版本中需要什么作为更好的选择以及需要丢弃什么。

产品开发示例 

以软件团队的产品开发环境为例。团队可能会开发一小部分工作但未经过定义的功能,然后随着时间的推移逐步改进。然后他们将添加更多功能,直到功能被认为是令人满意的。例如,在团队的第一次迭代中,网站支付引擎可能被编码为仅允许使用借记卡进行支付(第一次增量)。第二次迭代可能会产生一个支持信用卡付款的增量。最后,第三次迭代可能会添加一个允许通过PayPal付款的增量。

替代的例子

为了说明软件开发之外的情况,最常用的例子是画家画画。如果图片是以迭代方式绘制的,而不是逐渐绘制的,那么艺术家可能会从完成图片的草图(原型)开始。然后,艺术家会随着时间的推移迭代地将颜料添加到草图中。艺术家将重新审视图片,改变它,直到他对完成的图片感到满意为止。现在,考虑绘制相同的图片,但采用纯粹的增量,但不是迭代的方式。在开始任何其他部分之前,艺术家将首先完善图片的一部分。一旦他对一部分感到满意​​,他就会在下一部分开始,依此类推。在下一个画作开始之前,画面的每个部分都将完美无缺。以同样的方式,如果房屋是逐步建造的,你会完全建造一个房间 - 包括家具,油漆和地毯。然后以同样的方式建造下一个房间,直到你有一个完成的房子。

讨论

虽然这两个计划都是针对同一个目标,但增量计划并没有真正降低向客户交付不适合的东西的风险。大局只出现在最后。由于增量是详细完成的,因此当一件需要返工时会浪费很多精力(初始版本几乎肯定会属于这一类)。

迭代开发提供了从一开始就看到图片的机会,并指导开发步骤的全貌。从一开始就不会在石头上雕刻东西,这使我们以后可以更容易地改变它们,我们知道我们需要这样做。杰夫给出了以下经验法则,以便快速检查您的计划是迭代还是增量:“如果您只执行一次,则不会迭代”。

由于它们的互补特性,增量和迭代开发在一起使用时最为强大,例如作为敏捷框架的一部分,尤其是Scrum。正如Scrum指南中所提到的:

“ Scrum采用迭代的增量方法来优化可预测性和控制风险 ”

“ Scrum团队以迭代和递增的方式提供产品,最大化反馈机会。“完成”产品的增量交付确保始终可用的潜在有用版本的工作产品“。 

 因此,Scrum是迭代的增量方法,因为工作计划进行一次迭代,然后在后续迭代中进行改进,并进行渐进式处理 因为完成的工作在整个项目中一致地提供。


更多推荐的Scrum文章

敏捷中的三个Amigos发展战略是什么?

Three friends refer to the main perspective of testing and inspecting increments in business, during and after development. They review each story in informal start-up meetings to provide a shared vision of what will be delivered and help ensure that it is the voice of the team, not a single opinion. (三个朋友指的是在业务、开发期间和开发之后测试检查工作增量的主要视角,例如,业务分析师、开发人员、测试人员在非正式的启动会议中回顾每个故事,以对将要交付的内容给出一个共同的共享愿景,并帮助确保它是团队的声音,而不是单一的意见。)

什么是敏捷?什么是Scrum?

Agile is the software development methodology that focuses on customer satisfaction by delivery shippable software frequently. Scrum is one of the many approaches to implement Agile. Scrum is suitable for certain type of projects where there are rapidly changing requirements. (敏捷是一种软件开发方法,它通过频繁交付可交付的软件来关注客户满意度。Scrum是实现敏捷的众多方法之一。Scrum适用于需求变化迅速的特定类型的项目。)

什么是Scrum中的速度?

Velocity in Scrum is a measure of the amount of work a Team can tackle during a single Sprint and is the key metric in Scrum. Velocity is calculated at the end of the Sprint by totaling the Points for all fully completed User Stories. (速度是一个团队在一次冲刺中可以完成的工作量的度量,也是Scrum中的关键度量标准。在冲刺结束时,通过对所有完全完成的用户故事的点进行合计来计算速度。)

为什么Scrum易学难精?

Scrum is a framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value. Whilst it is lightweight and simple to understand it is difficult to implement and hard to master. This article tell you why?(Scrum是一个框架,人们可以在其中解决复杂的适应性问题,同时富有成效和创造性地交付具有最高价值的产品。虽然它是轻量级的,易于理解,但很难实现,也很难掌握。这篇文章告诉你为什么?)

传统项目管理 vs 敏捷项目管理

Traditional project management emphasizes on conducting detailed upfront planning for the project with emphasis on fixing the scope, cost and schedule - and managing those parameters. Whereas, Scrum encourages data-based, iterative decision making in which the primary focus is on delivering products that satisfy customer requirements. (传统的项目管理强调对项目进行详细的前期规划,强调确定范围、成本和进度,并管理这些参数。然而,Scrum鼓励基于数据的、迭代的决策,其中主要关注的是交付满足客户需求的产品。)

Scrum如何演变?

Scrum has not been immune to controversy, and its history of invention is a topic of frequent debate. Some professionals believe that Jeff Sutherland, John Scumniotales, and Jeff McKenna invented Scrum in 1993. And then there are others who vouch for Hirotaka Takeuchi and Ikujiro Nonaka as inventing Scrum in 1986. (Scrum并没有不受争议,它的发明历史是一个经常争论的话题。一些专业人士认为Jeff Sutherland、John Scumniotales和Jeff McKenna于1993年发明了Scrum。还有其他一些人也许相信, 在1986年Hirotaka Takeuchi和Ikujiro Nonaka发明了Scrum。)

什么是5个Scrum的核心价值?

Less known than the process of Scrum and probably under-highlighted, but therefore not less important, are the 5 core Scrum Values upon which the framework is based: Commitment – Focus – Openness – Respect – Courage. These values relate to the ethics of Scrum, thereby -from a social point of view- turning Scrum into a value system. (与scrum的过程相比,人们对scrum知之甚少,而且可能低估了这一点,但同样重要的是,该框架所基于的5个核心scrum价值观:承诺——关注——开放——尊重——勇气。这些价值观与Scrum的伦理有关,因此从社会的角度来看,将Scrum转变为一个价值体系。)

什么是敏捷软件开发?

When talking about Agile, we often talk about ''Agile'' and ''Scrum,'' but, how exactly are related, and how are they different? We take a look of this issue in this Article. (在谈到敏捷时, 我们经常谈论 "敏捷" 和 "scrum", 但是, 它们到底有什么关系, 它们有什么不同?我们在本文中介绍了这一问题。)

Scrum在3分钟内完成

This article covers all the key concept of Scrum framework that make you easily be recalled and apply anytime from your mind as systematic knowledge structure (本文涵盖了 scrum 框架的所有关键概念, 使您可以轻松地被召回, 并从您的头脑中随时作为系统的知识结构应用)

什么是Scrum的三大支柱?

什么是Scrum的三大支柱? SCRUM使用经验方法(或有时称为经验主义)以适应客户不断变化的需求。经验主义是根据实际经历的内容做出决策的行为。经验方法意味着以事实为基础,以经验为基础,以证据为基础的方式开展工作,特别是,进展是基于对现实的观察,而不是基于大量前期要求的虚构计划。 […]

猜你喜欢

转载自blog.csdn.net/chktsang/article/details/87010449