“我們希望,一起組成的敏捷聯盟能夠幫助到其他同行,幫他們用新的更‘敏捷’的方式去思考軟體開發、方法論和組織。做到這一點,我們就得償所願了。”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 是幫助我們瞭解知識經濟中工作的新性質的少數現代作家之一。”