历史故事

在越南战争期间(1955年—1975年),对于美国战机飞行员而言,要执行100次飞行任务,飞到敌国领空被击落的概率是50%。

1967年,萨瑟兰还是一个没有经验的年轻飞行员,当时却是做最危险的一项工作:侦查。他的战机只装备了相机与备用燃料箱,飞到越南上空让领航员拍摄轰炸任务前后的照片。萨瑟兰在执行任务的时,肾上腺素就会飙升,但他从来都能冷静应对,面对如此危险境地总是很淡定。他将这一素质归功于在空军服役期间学到的风险管控能力。在训练中学会了观察、导向、决定和行动四件事。具体地讲,先观察目标区域,然后确认进入和退出目标区域的最佳路线,在未知事件面前及时地做出调整,最后在本能的驱动下采取果断的行动。迟疑不决会要了一个飞行员的命,但贸然行事也会要了一个飞行员的命。一旦领航员拍好照片,我就会用力拉操纵杆,提升飞行高度,远离危险区域。

越南战争结束后,萨瑟兰回到了美国,到斯坦福大学攻读统计学硕士学位。毕业后,萨瑟兰到了美国空军学院教授数学、统计学和概率论。后来,又到科罗拉多大学医学院攻读生物统计学博士学位。用几年时间时间找出促使一个正常细胞发生癌变的因素。萨瑟兰学到了很多关于系统论的知识,理解了为什么一个细胞开始演变时,会从一个稳定状态过渡到另一个稳定状态。他花了将近10年的时间研究如何推动一个复杂的自适应系统从一个状态过渡到另一个状态,以及如何确保下一个状态是积极的,而非消极的。

几年之后,萨瑟兰发现组织、团队和人都可以被视为复杂的自适应系统,使细胞从一个状态过渡到另一个状态的因素,同样可以让人从一个状态过渡到另一个状态。要改变细胞,首先需要把能量注入系统中,起初可能会出现混乱局面,看起来杂乱无章,一切都处在运动中。当你试图改变一个组织时,可能也会发生这样的事情,这个组织的成员变得焦躁不安,因为他们无法理解发生了什么,也不知道自己应该如何应对。然而,如同细胞一样,组织会以很快的速度进入稳定的新状态。唯一的问题在于,新状态是否优越于旧状态,细胞是变成癌细胞还是健康细胞。当时我想知道我们是否能够找出一些简单的规则,以此指导团队变得更高效、更愉快、更具有相互扶持精神、更有乐趣以及更加令人向往。

在里根政府期间,科学研究经费遭到大幅削减,中洲计算机服务公司找到了萨瑟兰。因为该公司听说他是技术领域内的主流专家,一个熟悉系统论的人。该公司最新、最热门的产品是所谓的“自动柜员机网络”(ATMnetwork/ATM取款机)。要知道,那是在1983年的时候。

当萨瑟兰进入中洲计算机服务公司后,发现该公司的计算机编程部门采用的是“瀑布法”。该部门拥有数百名计算机程序员,每天忙忙碌碌,但无法在指定的时间按预算交付成果。该公司的成本比收益多出了30%。高层管理者时常爆发出吼叫,要求他们加强细化管理,提出咄咄逼人的要求,命令他们更加努力地工作,命令他们加班等。但无论高管如何施加压力,项目仍旧延期超支。

因为现在团队运作方式问题重重,已经无法通过小修小补的方式来纠正了。萨瑟兰决定在公司内部另起炉灶组建新部门.萨瑟兰找到程序员们和经理们,告诉他们:“我们首先要停止做那些把我们折腾死的事情。我们必须找出更好的工作方式,而且必须立即付诸实践。”

他把这个新部门分成几个团队来管理,奖金的发放不是看个人业绩,而是看整个部门的业绩。当时采用的一些工具在10年之后逐渐演变成了Scrum的元素,其中包括产品负责人(product owner)、Scrum主管(Scrummaster)、产品待办事项清单(product backlog)以及每周冲刺(weekly sprint)。6个月后,这个团队成了整个公司最赢利的部门,营业收入超过支出的30%。开发的Nonstop Tandem系统是最早获得银行信赖并被采用的在线交易系统,应用到了整个北美地区。

再后来,2001年2月11日到13日,17位软件开发领域的领军人物聚集在美国犹他州的滑雪胜地雪鸟(Snowbird)雪场。经过两天的讨论,“敏捷”(Agile)这个词为全体聚会者所接受,用以概括一套全新的软件开发价值观。诞生了最著名的“敏捷软件开发宣言”。

敏捷革命

以上内容来自杰夫•萨瑟兰的《敏捷革命》 这本书。

关于作者

杰夫•萨瑟兰(Jeff Sutherland),Scrum发明者与共同创造人,被誉为“Scrum之父”,《敏捷宣言》起草人之一。

萨瑟兰毕业于西点军校,曾作为美国空军战斗机飞行员,完成过100次飞越北部越南的作战任务。1972年,萨瑟兰获得斯坦福大学统计学硕士学位。1980年,他获得科罗拉多大学的生物统计学博士学位。1983年,萨瑟兰进入中洲计算机服务公司,该公司为150家银行提供技术服务,他负责研发ATM网络技术。萨瑟兰还先后担任了11家软件公司的首席执行官和首席技术官,积累了丰富的项目管理经验。2006年,他成立了自己的公司Scrum,Inc.,提供Scrum管理方法的培训服务。

Scrum由来的更多相关文章

  1. Scrum 项目1.0 2.0 3.0 4.0 5.0 6.0 7.0

    1.确定选题. 应用NABCD模型,分析你们初步选定的项目,充分说明你们选题的理由. 录制为演说视频,上传到视频网站,并把链接发到团队博客上. 截止日期:2016.5.6日晚10点 阅读教材第8章,8 ...

  2. [团队项目] Scrum 项目 2.0 产品BACKLOG

    Scrum 项目 2.0 阅读教材第8章,8.1~8.3节 P157~168,了解获取用户需求的办法,每个组可以选择一二加以应用. 8.4节P168-171 查阅NABCDA模型的具体说明. 2.SC ...

  3. Scrum 项目2.0

    阅读教材第8章,8.1~8.3节 P157~168,了解获取用户需求的办法,每个组可以选择一二加以应用. 8.4节P168-171 查阅NABCDA模型的具体说明. 2.SCRUM 流程的步骤 1 完 ...

  4. Scrum

    Scrum[编辑] 维基百科,自由的百科全书   Scrum是一种敏捷软件开发的方法学,用于迭代式增量软件开发过程.Scrum在英语是橄榄球运动中争球的意思. 虽然Scrum是为管理软件开发项目而开发 ...

  5. Scrum 项目 3.0

    -------------------------------------3.0----------------------------------------------------- 一.项目工作 ...

  6. scrum 项目准备2.0

    1.确定选题. 应用NABCD模型,分析你们初步选定的项目,充分说明你们选题的理由. 录制为演说视频,上传到视频网站,并把链接发到团队博客上. 截止日期:2016.5.6日晚10点 演说稿: 各位领导 ...

  7. 【第二周】【作业五】Scrum 每日站会

    1.首先来看一下什么是Scrum: Scrum是一种敏捷软件开发的方法学,用于迭代式增量软件开发过程.Scrum在英语是橄榄球运动中争球的意思. 虽然Scrum是为管理软件开发项目而开发的,它同样可以 ...

  8. 关于Scrum+XP+DevOps的学习

    最近听了ECUG大会上孙敬云老师的分享感觉受益匪浅,毕竟大学课本上只讲到瀑布模型就没有下文了,工作以后一直贯彻的都是Scrum路线,一直也没有时间好好的去学习整理这部分的知识,直到近几天听到了孙老师的 ...

  9. [转载]敏捷开发之Scrum扫盲篇

    现在敏捷开发是越来越火了,人人都在谈敏捷,人人都在学习Scrum和XP...      为了不落后他人,于是我也开始学习Scrum,今天主要是对我最近阅读的相关资料,根据自己的理解,用自己的话来讲述S ...

随机推荐

  1. Luogu1155 NOIP2008 双栈排序 【二分图染色】【模拟】

    Luogu1155 NOIP2008 双栈排序 题目描述 Tom最近在研究一个有趣的排序问题.如图所示,通过 2个栈 S1 和 S2 ,Tom希望借助以下 44 种操作实现将输入序列升序排序. 操作 ...

  2. 项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦)

    知道了 csproj 文件中的一些常用 NuGet 属性,创建 NuGet 包时就可以充分发挥新 Sdk 自动生成 NuGet 包的优势,不需要 nuspec 文件啦.(毕竟 nuspec 文件没有 ...

  3. 部署经验Docker

    从Docker 到Jenkins 到Ansible的部署经验 https://www.cnblogs.com/itdragon/p/10011816.html 工作中,除了开发功能,还负责系统的部署工 ...

  4. FirstTry_HelloWorld

    #include <qapplication.h> #include <qpushbutton.h> int main( int argc, char **argv ) { Q ...

  5. PHP 读取和导出 CSV文件

    PHP 读取和导出 CSV文件,速度比phpexcel快80%,而phpexcel 占内存,在数据大的情况下,5万条只需几秒不到,几乎感觉不出来 如果遇到数字是科学计算法,可以在前面加一个 ' 单引号 ...

  6. 20165222 实验三 敏捷开发与XP实践

    实验内容: 1.XP基础 2.XP核心实践 3.相关工具 二.具体实验内容 (一)代码规范格式化 总结:感觉就那个Code->Reformate Code代码重新格式化最好用,其他的我都点了下, ...

  7. F4NNIU 版本的标准电阻列表(2018-09-29 更新)

    F4NNIU 版本的标准电阻列表(2018-09-29 更新) 值代码 电阻值 格式化值 单位 公差代码 公差 格式化值数字 描述 0RJ 0 0 R J 5% J0000 0R 5% (0RJ) 1 ...

  8. 在Qt中如何使用QtDesigner创建的UI文件(一) (转)

    使用Qt有一些时间了,一直在IDE环境(qtcreator和VS2003+集成器)中使用,自然少了很多麻烦的步骤.但是在享受这种便利的同时,我们也失去了理解更多知识背后的点滴.在IDE中,如果我们要开 ...

  9. if的用法

    if用法举例:求分数的等级 # include <stdio.h> int main(void) { float score; //score分数 printf("请输入您的考试 ...

  10. 浅谈浅克隆(shallow clone)和 深克隆(deep clone)

    区别就在于是否对对象中的引用变量所指向的对象进行拷贝. 1.浅克隆/浅复制/浅拷贝 浅拷贝是指在拷贝对象时,对于基本数据类型的变量会重新复制一份,而对于引用类型的变量只是对引用进行拷贝,没有对引用指向 ...