Scrum起源

    探讨起源前,先介绍一下发明者。Scrum是由Jeff Sutherland(杰夫 萨瑟兰,简称JS)和与Ken Schwaber(肯 施瓦布,简称KS)发明的。两位仍然维护着Scrum Guide。在ScrumGuides的网站,我们可以看到两位发明者的照片。

    说到Scrum起源,一般认为Scrum诞生的标志为在1995 年的OOPSLA (Object-Oriented Programming, Systems, Languages & Applications)大会中JS和KS首次共同演说Scrum。那次演讲本质上记录了Ken 和Jeff 在之前几年使用Scrum 时所学到的经验,并且在会议上公布第一版Scrum的正式定义。

    至今2019年,Scrum已经走过了24个年头。然而,一个概念,一个成熟的过程框架的产生,背后必然有更多深厚的理论、实践和沉淀。在今天,我们在Scrum指南中了解到的种种概念,也并不是在Scrum诞生的一天就具备的。而是众多的敏捷实践者在开发的历程中逐步完善的。根据《敏捷革命》一书和敏捷编年史,以下是对Scrum发展更深入的归纳。

一、理论来源

    Scrum的理论基础是实验性流程,源于日本制造业。而传授给日本人相关理论的则是一个美国人:戴明(W. Edwards Deming)。将戴明联系到日本的时代的背景是,在美占领日本时期,麦克阿瑟使用以下的手法重建日本经济:开除日本公司的高级管理人员,然后引进美国的管理专家培养基层管理人员。就这样,戴明来到了日本。说到戴明,相信最为人熟知的就是PDCA(Plan,Do,Check,Action)的戴明环。是戴明在日本提出了这个新的理念。而推动这一关键理念在制造业获得成功的是丰田汽车。这套大获成功的体系称之为“精益生产”。精益的关键推动者为丰田英二和大野耐一(5-Why法发明者)。

二、灵感闪现

    从50年代,又经过了近30年,终于又是两个日本人,将这种思想、方法传到了软件开发领域。1986年竹 内 弘 高( Hirotaka Takeuchi) 和 野 中 郁 次 郎( Ikujiro Nonaka)在哈佛商业评论发表了他们的文章《新新产品开发游戏(The New New Product Development Game)》。这篇文章描述了一种橄榄球方法,方法中“产品开发过程是在一个精心挑选的多学科团队的持续互动中产生的,团队成员从头到尾都在一起工作”。这篇文章也就成为了JS后来Scrum的灵感来源。

    1993年,JS在Easel(易索)公司工作。为了更高效的组织团队和开发产品,JS和团队阅读了大量的文章和书籍,最后他们欣喜的发现了上面的文章。他们将理论转化为软件开发过程并应用在Easel的开发项目中。就这样,Scrum诞生了。

三、发展编年史

    尔后,就是1995年的正式发布了。一直至今,各种新的概念逐渐的加入到Scrum的体系中。以下是一些关键事件。

    1997年:Ken Schwaber描述了“每日Scrum站会(daily scrum)”这个活动后来被Mike Beedle重新整理成了模式形式。

    1998年:在最早描述极限编程的文章《走向极限编程的克莱斯勒公司(Chrysler goes to Extremes)》中描述了几个极限编程实践,例如:自选任务(self-chosen tasks)、测试先行(test first)、三周迭代(three week iterations)、集体代码所有权(collective code ownership)和结对编程(pair programming)。

    2000年:Scrum的每日站立会议形式中的“三个问题(three questions)”为极限编程团队广泛采用。

    2000年:Ken Schwaber首次描述了“燃尽图(burndown chart)”。在富达投资集团工作时,他视图为Scrum团队提供一个简单的工具包,于是发明它,并在其网站上做了正式描述。

    2000年:术语“团队速率(velocity)”添加到极限编程相对较晚,用于替代先前的、被认为过于复杂的概念——“负载系数(load factor)”。

    2001年2月11-13日:在美国犹他州瓦萨奇山的雪鸟滑雪度假村,17位从事软件开发或者帮助他人从事软件开发的人相聚一堂,以在他们各自不同的软件开发方法中寻找共识。此次会议的产物就是敏捷软件开发宣言(Manifesto for Agile Software Development)。后来几位会议成员继续合作,成立了敏捷联盟(Agile Alliance)

     2001年:在英国Connextra公司,发明了用户故事的“role-feature-reason”描述形式。

    2002年:Scrum社区汲取了度量“团队速度(velocity)”的实践。

    2002年:燃尽图在Scrum社区中获得了普及,以及诸如仅仅反转垂直方向的“燃起图”,或者更复杂的“累积流图(Cumulative Flow Diagram)”,这与燃起非常类似,但似乎是一个独立的发明。

    2002年:计划扑克的当前形式在James Grenning的一篇文章中被列出。

    2003年:早期的Scrum 培训资料暗示了未来“完成的定义(Definition of Done)”的重要性,最初只是以幻灯片的形式:“关于完成的故事(The story of Done)”。

    2007年:简化的三列任务板格式(“Todo”,“Doing”,“Done”)在当时变得比原始的五列版本更流行和更标准

    2008年:Kane Mar以“故事时间(Story Time)”作为名称,首先正式描述了“Backlog梳理(backlog grooming)”,并建议把它作为一个例行会议。

    2008年:虽然最初提到团队开始使用“就绪的定义(Definition of Ready)”的时间是在年初,但第一次正式的说明似乎是从十月开始的,并且很快就被纳入了“官方”的Scrum培训材料。

    2011年:“Backlog梳理(backlog grooming)”实践升级为Scrum的官方元素,并纳入了《Scrum指南(the Scrum Guide)》。


p.s. 以上部分内容节选自《敏捷革命》一书和Scrum中文网。以下为参考链接。

Scrum指南

https://www.scrumguides.org/

Scrum中文网-敏捷实践编年史

http://www.scrumcn.com/agile/scrum-knowledge-library/agile-practices-timeline.html

哈佛商业评论《新新产品开发游戏(The New New Product Development Game)》

https://hbr.org/1986/01/the-new-new-product-development-game

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 项目有各种形状和大小,这就是为什么只有不同的方法来管理和执行它们才有意义。其中一种方法是Scrum项目管理,这种方...
    Warren2Lynch阅读 4,295评论 0 36
  • 前言 软件开发行业中常用的两种方法,一种是目前非常热门的敏捷开发(Agile),如 Scrum,Kanban 和 ...
    王奥OX阅读 1,390评论 0 4
  • 《Scrum 敏捷软件开发》豆瓣链接 第一部分 启航 第1章 为什么敏捷转型难(但值得) 为什么转型困难 成功的变...
    小镭Ra阅读 1,141评论 0 2
  • 今天的最后六分钟,准备洗洗睡了。风和日丽的周末,本是大好春光,无奈提不起任何兴趣,龟缩在教研室,看看书,冒着被老师...
    晨曦枫叶阅读 161评论 0 0
  • 本文档所介绍安装步骤建立在当前设备已安装Xcode及CocoaPods基础之上,已安装CocoaPods的同学也可...
    FieryDragon阅读 510评论 2 4