近乎不朽:Ed Yourdon

 

Ivar Jacobson曾經不乏自得地提到過一場“方法論之戰”和它的休戰。的確,上世紀90年代初,“軟件工程”領域還處在羣雄並起的局面——據OMG組織(UML、CORBA背後的那個帝國)統計,當時僅僅“面向對象”方法論,就有27種之多。“聖人出而黃河清”,Jacobson自詡,他本人、Grady Booch、Jim Rumbaugh這“三位老友(the three amigos)”聯手之後,應該天下一統,戰事早該結束、硝煙也應散去了。
統一的最大受益者也許是開發者們——我們再也不用面對方法論學者們層出不窮的爭執和分歧。但硬幣的另一面,這個領域的景色也變得略嫌無趣:RUP已經變得過於穩定,像中晚期的羅馬帝國,高踞寶座、打着呵欠、和SEI的CMM評估師們有一搭沒一搭的調着情,自己都有些厭倦自己了吧;而新興的Agile聯盟,在短短几年內也變得豐滿、成熟,它的前途不再無可限量,而在它的限度之外,我們還有什麼呢?
Ed Yourdon可能是上述方法論之戰的最大犧牲者,因而也是我個人私下最懷念的聲音之一。在RUP還未一統天下的史前時期,Yourdon屬於軟件工程領域最有影響力的頂尖神祗。1979年,他(和另一位大師Larry Constantine合著)的《Structured Design》一書,廓清了“結構化開發”的王國。該書的故事也很有意思:這本書的原型是1975年Yourdon在一個炎熱的小島上完成的手稿(整個寫作只耗時26天);而當該書由Yourdon自己的出版社YOURDON Press印行後,也就迅速成爲當時軟件界的聖經。人們根據該書的封面,給它起了“橙皮書”的雅號,這也是名著作者們能享有的最高榮譽之一。後來Yourdon把出版社賣給了大社Prentice Hall,後者重印該書時,不恰當地把封面改成了綠色——一個最能招致讀者、作者憤恨的做法。時至今日,它還被殘存的一些“結構化”開發人員喜愛。不過Yourdon自稱,該書目前每年的版稅,也就夠他和Constantine享用些啤酒、比薩餅了。
如果Yourdon停留於此,他大概確實只能剩下這點兒零食。但在隨後的面向對象大潮中,Yourdon仍是最重要的先覺者之一。90年代初的黃金歲月裏,他和Peter Coad大師合著的《Object Oriented Analysis》和稍後的《Object Oriented Design》兩書又成了這個領域中經典參考資料。而前者更奠定了以“Coad-Yourdon”命名的OOA方法。今天Yourdon本人自己對OO領域的貢獻時認爲,OOD中的大部分內容基本上已經被UML覆蓋了(是呀,即使是Agile聯盟的各種實踐,也同樣以UML爲重要工具),但《OOA》一書則還是他的寵兒。Yourdon的妙語是:一本介紹全新方法論的著作,應該能在紐約/芝加哥的一趟飛行中讀完——這也是他的《OOA》、Martin Fowler的《UML Distilled》、Kent Beck的《XP Explained》的最大好處。
所謂“食髓知味”,但感恩卻不是開發者們的美德。當UML、RUP成爲主流之後,Yourdon必須在新的領域證明自己,否則就難逃被程序員們遺忘的下場。Yourdon的幾部近作,也確實在另一個方向上對軟件業產生了影響:人們發現,這不是一位單純的技術專家,毋寧說,他變成了思辯者,變成了先知或社會分析家。名著《Death March》(中譯《死亡之旅》,譯名不夠恰當)直面軟件項目管理問題,被很多人認爲是最新版的《人月神話》(事實上從書名上我們也能追索出接近的風格);而Yourdon最受爭議的兩部著作又構成了名稱上的對稱:《Decline and Fall of the American Programmer(美國程序員的衰退和失落)》、《Rise and Resurrection of the American Programmer(美國程序員的崛起和復興)》。試圖扮演先知角色的Yourdon,致力於探究軟件開發中的勞動力問題,在前一部書中,他認爲IT外包將對北美程序員供求造成重大影響,開發者們應該早作準備——在經濟膨脹的90年代末,這樣的警告無異於危言聳聽,不僅廣大程序員不信,就連Yourdon自己也有些尷尬,連忙在後一部書中加以彌補,稱讚RUP、CMM等實踐的重要意義。
在警示者自己都懷疑的時候,狼還是來了——經濟的衰退完美地符合了Yourdon的預言,但他在此前的一些過度言論(他認爲Y2K問題非常嚴重,甚至爲此從紐約搬家到新墨西哥)仍在他的名譽上投下些許陰影。你也會說,Yourdon從“技術專家”到“人文主義者”的轉型並不完美(他甚至出版過幾部純虛構小說),但他的正直、廣博、他對多個領域的貢獻仍使他近乎成爲一個不朽者,一個人們最需要傾聽的聲音。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章