敏捷史话(一):用一半的时间做两倍的事——Scrum之父Jeff Sutherland
普通的人生大抵相似,传奇的人生各有各的传奇。Jeff就是这样的传奇人物,年近80的他从来没有“廉颇老矣尚能饭否”的英雄迟暮,不久前还精神矍铄地与好几百名中国学生进行线上交流,积极回答中国粉丝关于Scrum的疑惑。
他在某个领域的成就很可能是很多人一辈子都难以望其项背的存在。
军校和越战
Jeff的教育经历丰富,就从那个大名鼎鼎的西点军校讲起吧!西点军校成立于1802年,由当时的美国第三届总统托马斯·杰弗逊签署法令成立,培养了麦克阿瑟、艾森豪威尔、巴顿、鲍威尔众多军事政治人才。西点军校入学条件严格,需政府高官推荐、考试、体检后择优录取。1960年,Jeff经历了层层筛选,于6月正式入学攻读理科学士学位。
在西点军校的最后一年,Jeff受任训练学校的一支散漫疲乏的仪仗队。仪仗队中不乏无视指挥扰乱队伍的纨绔子弟,Jeff把对每个人的反馈用看板的形式放在学生经常出入的路上,以求每个学生都能“无处可逃”地看到这种可视化的结果。这种透明性管理让所有队员都发生了变化,数周后仪仗队的状态大有改观。持续使用看板管理仪仗队,这个团队由最落后的队伍一跃当选成为护送麦克阿瑟将军的殡仪队。
从西点军校毕业后,Jeff参加了飞行员培训,成为一名飞行侦察员。在训练期间,他接受了飞行战略专家博伊德的教导,深刻地了解到决策速度和效率是一名飞行侦察员的必备能力。之后,在敌方的命中率是50%,且Jeff已有许多战友牺牲在战场的情况下,凭借着观察-定位-决定-行动的作战理念,Jeff驾驶RF-4C在北越执行了100次战斗任务后仍能毫发无损地生还。经历了惊险战争的洗礼,Jeff对决策效率、回路、反馈和调整的理解尤为深刻。
学术研究
1970年,结束了越南战争的军旅生活,Jeff重回校园,在斯坦福大学读了统计学和数学研究生,并在学术方面取得了一定的成果。
1975年,Jeff进入科罗拉多大学医学院攻读生物统计学博士学位,用几年时间找出促使一个正常细胞发生癌变的因素。触类旁通,他认为团队组织如一个个细胞一样,是自适应的个体,可以根据周边环境做出自我决策的同时也不失去与中央系统的联系,打破稳定状态,自适应团队会经历混乱和调整,形成新的状态。而管理者要确保的是,自适应团队的下一个状态是积极的,而不是恶化为“癌细胞”。
说他的这些传奇经历可不是为了猎奇或者吹嘘,西点军校的可视化管理、飞行侦察的决策和效率、对癌细胞的迁移学习……Jeff早期经历的每一颗萤火,都构成了日后人生的浩瀚星河,在敏捷开发的大厦上空熠熠生辉。
初入IT
做了一段时间医学研究,取得生物统计学博士学位后,Jeff受中洲计算机服务公司之邀,进入计算机行业从事产品开发。这是一个改变了Jeff职业生涯乃至改变计算机行业的决定,此前他并没有计算机相关领域的工作经验,而中洲公司直接给到了副总裁的职位和难以拒绝的待遇,双方的决定在当时看来都是很大胆的。还好,中洲公司慧眼识珠,Jeff也不负众望,在IT领域展现出了自己的管理能力。
当时中洲公司在使用瀑布方法做ATM的业务,成本比收益高出30%,整个团队加班频繁,压力巨大,但仍无法按期交付。Jeff在这样的氛围中意识到,小修小补无法挽救这个团队,于是进行了大刀阔斧的改革,这就是敏捷实施的雏形。他将大团队打散成为各个相对独立的小团队,按每周交付的工作原则运行,以团队业绩而非个人业绩进行绩效奖励。六个月之后,Jeff的妙手回春果然让这个团队得到了重生——收益高于成本30%,成了整个公司最赢利的部门,开发出的Nonstop Tandem系统是最早获得银行信赖并被采用的在线交易系统,应用到了整个北美地区。
Scrum正式化
1993年,Jeff受聘到Easel软件公司,担任主管技术业务的副总裁,面临极具挑战性的任务。在学术研究中养成的好习惯在这里也发挥了巨大的作用,他带领团队阅读了大量文献。在查找文献的过程中,Jeff读到了一篇1986年发布在《哈佛商业评论》的名为“新新产品开发游戏”的文章。这篇文章的主要观点是:团队所有成员共同为任务做出贡献要比各自为政效率更高,正如在橄榄球球场上大家不分彼此,都为进球这一个目标而全力以赴。文章的观点与Jeff此前的诸多实践不谋而合,Jeff仿佛被打通任督二脉,开始着手将Scrum的流程进行系统化运行。
实践与理论的结合产生了神奇的化学效应,1995年Jeff与Ken Schwaber一起将Scrum正式化,发表《Scrum 指南》。2001年,受Bob邀请,二人作为Scrum的代表来到“寒冷但有趣”的犹他州,出席雪鸟会议。经过两天的讨论,“敏捷”(Agile)这个词为全体聚会者所接受,用以概括一套全新的软件开发价值观,“敏捷软件开发宣言”诞生。
“敏捷的生活”
敏捷一直强调的是“Be Agile!Don’t Do Agile!”,敏捷并不是只能用在软件开发上,Jeff在生活中也在一直在践行“Be Agile!”。Jeff新的一天从喝防弹咖啡开始,它可以提供充足的热量并增强新陈代谢,长期可保持活力、维持体重稳定。饮食方面Jeff采用生酮饮食,摄入高蛋白和高脂肪的食物,降低碳水化合物的比例,保持精力旺盛、保持运动习惯。
Jeff还把敏捷带到家庭生活中,一家人一起过了一个“敏捷感恩节”: 一组人准备食物, 一组人在布置桌子,还有人在门口迎接来客。“这是我们有过的最好的感恩节!” Jeff在博客里这样写道。一位另辟蹊径的心理学家Bruce受这个敏捷感恩节的启发,学习了Scrum的工作方式,将其应用到多个孩子以至于失控的家庭生活中,比如采用看板来进行“混乱的清晨”的管理,明确每个人早上的任务,井然有序地吃早餐、做家务、喂宠物、上学、上班。还有“每日立会”式的家庭会议,每个成员相继回答这个星期家里什么运作良好、 什么不好、下个星期希望做哪些改变,Scrum家庭会议的结果喜人——父母的吼叫次数减半、家庭笑声加倍、孩子们也学会了自我管理。
Jeff的书单
在一次访谈中,被问到“你最推荐软件工程师必读的三本书是什么”,Jeff推荐了三本书:《人月神话》、《五轮书》以及《如此崇高的愿景:约翰·博伊德、OODA Loop和丹尼尔·福特的美国反恐战争》。从推荐书籍中,也可以看出前期经历对他影响至深。
弗雷德·布鲁克斯的《人月神话》不必多说,为人们管理复杂项目提供了颇具洞察力的见解。“这在今天和30年前一样真实,令人惊讶的是,每个工程经理都没有反复阅读它”。
《五轮书》由日本剑客宫本武藏撰写,阐述了剑道与兵法的原则、思想、策略,简单又实际,不仅适于武士,也适合各种形式的竞争,是危机处理、策略训练的经典之作。软件工作者可以从中学习到如何通过思考来切割代码、分割障碍,并始终同时执行短期和长期战略。优秀的代码需要优秀的架构,伟大的架构需要伟大的设计,伟大的设计需要同时看到全局,以及更改代码所带来的所有副作用。
“《如此崇高的愿景:约翰·博伊德、OODA Loop和丹尼尔·福特的美国反恐战争》是关于世界上最伟大的战斗机飞行员的最优秀的书籍。如果你实施了他的策略,无论你是编码还是领导团队,你都一定会赢。”从这种评价中可以看出,Jeff对越战时给予指导的少校博伊德的评价依然很高。
Jeff推荐的并不是关于代码等硬技能的书籍,而是关于心态的著作。他会定期与使用Scrum的前战斗机飞行员、黑带合气道、空手道和中国功夫专家会面,跟这些人讨论如何将敏捷思维引入到普通团队中。敏捷所需要的高度专注、纪律和积极主动的行动正是这些团队所需要的。我们可以和Jeff一起期待敏捷在更多领域的推广。
如果你的工作或生活中正经历着什么瓶颈,不妨看看Jeff的经历,用Scrum的方法思考一下,也许能找到答案,敏捷可能就会是你柳暗花明的又一村。
敏捷史话(一):用一半的时间做两倍的事——Scrum之父Jeff Sutherland的更多相关文章
- 敏捷史话(九):用做面包的方式做敏捷——Alistair Cockburn
在一次用例和敏捷技术交流大会上,Alistair给大家分享了自己比较崇尚的三个字: "守""破""离",他用做面包的例子,形象地将这三个字与 ...
- 敏捷史话(二):Scrum社区的悲剧性损失——Mike Beedle
2018年3月23日,在美国的芝加哥发生了一起意外刺杀事件.一名男子刺杀了一位首席执行官,而这位不幸的首席执行官就是<敏捷宣言>的合著者--Mike Beedle.Mike 的这场意外令 ...
- 敏捷史话(三):笃定前行的勇者——Ken Schwaber
很多人之所以平凡,并不在于能力的缺失,而是因为缺乏迈出一步的勇气.只有少部分的人可以带着勇气和坚持,走向不凡.Ken Schwaber 就是这样的人,他带着他的勇气和坚持在敏捷的道路上不断前行,以实现 ...
- python每隔一段时间做一个事情
#!/usr/bin/env python #coding:utf8 #Author:lsp #Date:下午2:17:54 #Version:0.1 #Function: 每隔一段时间做一个事情 f ...
- Linux运维知识之linux shell date 用当天时间做备份文件名
本文主要向大家介绍了Linux运维知识之linux shell date 用当天时间做备份文件名,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. #!/bin/bash #dat ...
- 安装 Kali Linux 后需要做的 20 件事
安装 Kali Linux 后需要做的 20 件事 本文含有我觉得有用的每一件事情.本文分为三大部分: 专门针对Kali用户 Kali Linux是来自Debian的一个特殊版本,Kali Linux ...
- 安装 CentOS 7 后必做的七件事
原文 安装 CentOS 7 后必做的七件事 CentOS 是最多人用来运行服务器的 Linux 版本,最新版本是 CentOS 7.当你兴趣勃勃地在一台主机或 VPS 上安装 CentOS 7 后, ...
- 在 PHP 7 中不要做的 10 件事
在 PHP 7 中不要做的 10 件事 1. 不要使用 mysql_ 函数 这一天终于来了,从此你不仅仅“不应该”使用mysql_函数.PHP 7 已经把它们从核心中全部移除了,也就是说你需要迁移到好 ...
- Ubuntu装完后要做的几件事
Ubuntu装完后要做的几件事 改hosts 无论哪里,改hosts都是第一件事,没hosts咋google.没google咋活.在终端输入命令 sudo gedit /etc/hosts在# The ...
随机推荐
- 记安装Wampsever
遇到的问题: Wampsever 启动所有服务后图标为黄色 localhost 问题:显示 IIS Windows 在用 localhost 访问本机的php文件和用ip地址(不是127.0.0.1) ...
- 我劝!这位年轻人不讲MVCC,耗子尾汁!
目录 一.事物的隔离级别与MVCC? 二.Repeatable Read是如何实现的 本文是MySQL专题第15篇,全文近100篇(公众号首发) 三.Read Commited是如何实现的: 本文是M ...
- spring-boot-starter
Spring Boot Starter 是在 SpringBoot 组件中被提出来的一种概念,stackoverflow 上面已经有人概括了这个 starter 是什么东西,想看完整的回答戳 这里. ...
- Mybatis log plugin 破解!!!
前言 今天重新装了IDEA2020,顺带重装了一些插件,毕竟这些插件都是习惯一直在用,其中一款就是Mybatis Log plugin,按照往常的思路,在IDEA插件市场搜索安装,艹,眼睛一瞟,竟然收 ...
- PyQt(Python+Qt)学习随笔:QScrollArea滚动区域layout布局的作用及设置方法
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 滚动区域可以设置布局,布局的作用其实与其他布局一样,就是在滚动区域大小调整时,滚动区域内的子部件跟随 ...
- 第10.11节 Python模块和包小结
Python的模块就是一个独立的Python文件,Python的包是一些功能相关的Python文件放到一个目录下进行统一管理的文件管理结构,包本质上是模块,加载包就是加载包下特定的模块文件__init ...
- PyQt(Python+Qt)学习随笔:QTableView的wordWrap属性
老猿Python博文目录 老猿Python博客地址 wordWrap属性用于控制视图中数据项文本的换行策略.如果此属性为True,则在数据项文本中分词的适当处进行换:否则数据项文本不进行换行处理.默认 ...
- php 序列化键、值逃逸
转自https://www.cnblogs.com/wangtanzhi/p/12261610.html PHP反序列化的对象逃逸(很重要一点,引号的匹配是从左到右按字符串长度进行匹配) 任何具有一定 ...
- 性能测试学习之路 (三)jmeter常见性能指标(相关术语、聚合报告 && 服务器性能监控配置 && 图形结果 && 概要报告)
1 性能测试目的 性能测试的目的:验证软件系统是否能够达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,以优化软件. 最后起到优化系统的目的性能测试包括如下几个方面: 1.评估系统的能力:测试 ...
- redis学习之——Redis事务(transactions)
Redis事务:可以一次执行多个命令,本质是一组命令的集合.一个事务中的,所有命令都会序列化,按顺序地串行化执行而不会被其它命令插入,不许加塞. 常用命令:MULTI 开启事务 EXEC 提交事务 ...