5

敏捷史话(十四):敏捷之峰的攀登者 —— Jim Highsmith

 3 years ago
source link: https://my.oschina.net/candou/blog/5136040
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

“我们希望,一起组成的敏捷联盟能够帮助到其他同行,帮他们用新的更‘敏捷’的方式去思考软件开发、方法论和组织。做到这一点,我们就得偿所愿了。”Jim Highsmith 在雪鸟会议结束后,发出了这样的感叹。

这位出生于1945年的软件工程师,是一位登山狂热爱好者。在 Jim 看来,无论是工作还是娱乐,所做的事情其实都是在登山。

Jim 拥有电气工程学士学位和管理硕士学位。他在工科学校毕业后的第一份工作就接触到了阿波罗载人航天计划。因此,可以说他的第一个项目是成功的,尽管当时他的工作职责微乎其微。

“自适应软件开发”倡导者

除软件工程师外,Jim 还是一位“自适应软件开发”的倡导者。他推崇着一个原则:即流程不断适应当前的工作是正常的事务状态。1999年12月,也就是在 Kent 的《极限编程》问世大约一个月后,Jim 所著的《自适应软件开发:一种管理复杂系统的协作方法》出版了。这本书的原始标题其实是“RADical Software Development”,但 Jim 总觉得这个名字好像缺少点什么——复杂自适应系统理论,所以 Jim 用“Adaptive”代替了“RADical”。自此,自适应软件开发(ASD)发展成型。

在《自适应软件开发:一种管理复杂系统的协作方法》一书中,这本书的大部分内容是关于管理理论而不是软件开发。也是在这本书中,登山爱好者 Jim 使用了很多爬山的类比来说明他所持有的,关于团队合作、计划和适应快速变化条件的观点。

《敏捷宣言》之旅

征服了“自适应软件开发”这一座山峰之后,Jim 又将目光投向了轻量级方法领域。

2000年春,肯特·贝克(Kent Beck)在俄勒冈州的罗格里夫酒店组织了一次“极限编程领导会议”。参会者有 Bob 、Martin Fowler 等极限编程的支持者们,以及包括 Jim 和 Alistair Cockburn 在内的一些有助于推动 XP 革命的“边缘人士”。这次会议主要讨论的是如何创建组织来推动 XP 的推广。

这次会议中,还发生了一个小插曲。这天 Jim 和 Kent Beck 沿着河岸散步交谈,聊到“极限编程”的名字的时候,Kent 纠结用“极限”这个词会不会显得太极端,Jim 则打趣道:“那你要叫它什么呢,'适度编程'吗? ”

这次会议对 XP 的推广起到了重大作用,在 Bob 等人看来,倡导创建一个诸如 XP 之类的轻量级方法思想的组织,将使整个行业受益。Bob 坚信,不同的人终将会推动这样一个组织的创建。但是,大部分参会者对此并没有太高热情,或许是因为这次会议更多的是局限在 XP 上。 在会议休息时间Martin Fowler 找到 Bob 做了简要的讨论,二人决定将提议的组织范围扩大到所有各种“轻量级方法”(例如 Scrum 和自适应软件开发),他们认为这样不仅可以提高所有人的积极性,同时还能促使拥护这些方法的人们进行更多更全面的补充。

于是,2000年9月,Bob 用一封电子邮件吹响了下次会议的集合哨,并提出了“轻量级方法峰会“的口号,向 Jim Highsmith 在内的多名专家发出了邀请,邀请函阐明了创建宣言的目标,该宣言将描述各种轻量方法的共同点。Jim 表达了对这次会议主题的浓厚兴趣,因为除了自适应软件开发, Jim 也了解 Scrum、DSDM、功能驱动开发等其他“轻量级方法”,Jim 认为这些方法有很多相似之处,所以花几天时间讨论这些方法是非常值得的。Jim 很期待接下来会产生怎样的火花。

为了保证会议的正常进行,Jim 和 Alistair Cockburn 包揽了会议的所有外勤跑腿工作,包括安排每人的房间、用餐和娱乐活动等,准备工作进展得很快且很顺利。

会议中,大家一致提议起一个新的名字来取代“轻量级”这个概念,因为没有人喜欢“轻量级”这个词。这时,Jim 提出了“Adaptive”的建议方案,但 Mike Beedle 等人对此提出了异议,因为大家知道 Jim 是 ASD 方法的创建者,并在之前已编著了《Adaptive Software Development》一书,如果使用 Adaptive,这听起来更像是 Jim 自己的一个作品了。所以 Jim 的建议最终未被采纳。除此之外,其他人也提出了很多其他建议,如 Essential、Lean 和 Lightweight 等,经过一番讨论, Mike Beedle 提出的“敏捷”一词得到了大家的一致赞同。

这次“雪鸟会议”的成果是大家共同签署的《敏捷软件开发宣言》,并将这个宣言挂到了网站首页(http://agilemanifesto.org/),同时,“敏捷联盟”由此诞生。

制定《相互依赖声明》

《敏捷宣言》发布后,许多人表示有兴趣探索将《敏捷宣言》扩展到软件之外的项目管理和产品开发的过程。

应 Jim 的邀请,Alistair Cockburn、David Anderson 等15人,在2004年的敏捷开发大会上举行了第一次会议,探讨了该主题。之后又经过多次会议,最终在2005年2月,合作制定了《相互依赖声明 (DOI)》。

《相互依赖声明》是连接人员、项目和价值的敏捷和自适应方法。与 《敏捷宣言》的思路不同,《相互依赖声明》是专门面向管理者的宣言,目的是用来协助管理者们跨过敏捷管理的门槛,助推敏捷转型或改进。

Jim 提到,“《相互依赖声明》这个标题具有多种含义。这意味着项目团队成员是相互依存的整体的一部分,而不是一群没有联系的个体。同时,项目团队、客户及其利益相关者也是相互依存关系。”这之后,人们将在《相互依赖声明》所定义的敏捷环境中不断探索如何管理敏捷项目。

多产的作家

在内容创作上,Jim 可谓是一位多产的作家,除了前面提到的自适应软件开发,他还撰写了多本关于敏捷的书籍,这些书籍都对敏捷运动产生了巨大的影响。其中包括:《敏捷项目管理:快速交付创新产品》《自适应领导力:加速企业敏捷性》以及《EDGE:价值驱动的数字转型》,也与 Alistair Cockburn 合作撰写的《敏捷软件开发丛书》等作品。

Jim 经常在世界各地的会议上演讲,不仅为主要行业出版物撰写了《敏捷项目管理与项目创新》《敏捷软件开发的生态系统》以及获得“震撼奖”的《弹性软件开发——一种管理复杂系统的协作模式》等数十篇文章,还是2005年“史蒂文斯国际系统开发杰出贡献奖”的获奖者。

哈佛商学院教授罗伯·奥斯汀(Rob Austin)曾这样评价他:“Jim Highsmith 是帮助我们了解知识经济中工作的新性质的少数现代作家之一。”


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK