亦幻亦真 仁者心動
blueski推薦 [2005-4-29]
出處:xuxuefei提供并推薦
作者:韓磊
自1998 年起,關于“傳統瀑布模型和敏捷編程孰優孰劣”的爭論就從來沒有停息過。如果這種爭論只是停留在理論層面(更可怕的是,停留在感情層面),則它對軟件開發 人員毫無意義。爭吵、論戰、板磚橫飛、激揚文字,在中國開發社群中是每日的功課;沖動、純經驗論、蠻橫無理、人身攻擊,一切不利于討論的元素充盈于整個社 群。
如果我們承認軟件開發方法是一門科學,那么,就該用理性的態度去研究和討論它。
《超越傳統的軟件開發——極限編程的幻想與真實》正是一本用理性態度研究和討論極限編程的著作。該書的第一和第二作者均來自被誣指為“文化沙漠”的香港,這已說明誣指的無聊;著作本身展現出來的客觀性、嚴謹性,更加告訴讀者,什么是正確的討論態度。
如果讀者認為這是一本推崇極限編程、貶低瀑布模型的書,那么你將在閱讀后感到失望。該書的客觀性正體現于此——全面介紹極限編程理論、分析極限編程與瀑布模型的不同之處、以成功和失敗案例說明極限編程可能導致的問題、給出實際項目中應用極限編程的策略和方法。
在 閱讀這本書時,我受到相當大的震撼。這震撼既來自于圖書本身,也來自于它背后的研究方法和研究態度,以及作者超越編程方法論的膽識和眼界。對于愿意思考的 讀者,本書最大的價值在于后半部分提出的“太極軟件開發”概念。慢!批評者且別著急。所謂“太極軟件開發”,確乎不是一種玄學,而是實實在在可以體會到 的。按作者的觀點,“環境”與“實踐/軟件模型”,如同太極圖中的兩儀,它們互為因果、互相作用。采用與環境不相適應的軟件模型,結果必然是失敗。
作 者又進一步提出,“人”也是軟件開發中需要特別注意的影響因素。事實上,“人”也是開發過程中最為重要、也是最為脆弱的一環。同樣戴著耳機工作,聽硬金屬 的程序員A和聽輕音樂的程序員B,寫出來的代碼恐怕就是大不一樣。曾經有朋友斷言,B型血的人不適合擔任PM,我自然一笑置之;然而,人的個性,的確是客 觀存在的。項目組中人與人之間的溝通成本,也不能單純歸結為寫接口文檔的成本。正如本書作者所提到的那樣,“假設你想要在軟件開發項目中采用極限編程,但 開發小組的其他成員均對此表示反對,那么你在該項目中取得成功的希望微乎其微!弊非髮嵺`與環境的和諧,不拘泥于某種特定的開發模型和開發方法,這恐怕是 一個項目經理應該努力的目標吧?
那么,極限編程到底“有沒有用”?這個問題就像小朋友看電影時總會提出的“他是好人還是壞人”一樣,沒有考 慮事物本身的兩面性和與環境的互動關系。還是作者說得好,“一種方法在可以幫助我們成功管理一個軟件項目——無論是直接采用該方法還是僅僅采納其中的一些 觀點——的時候,它才可以被認為是有用的!比绻麡O限編程能讓你更加了解軟件項目本身,它就是有用的。
所謂“不是風動,不是幡動,仁者心 動”,在軟件開發項目中保持相當的靈活性、依據環境和人的不同,博采各種軟件開發模型、開發方法中有利于項目的因素,加以恰當的組合,要比武斷地排斥任何 一種軟件開發模型、開發方法來得安全和有效。從這個意義上說,極限編程的價值到底是幻想還是真實,其決定因素還是在于它是怎么被理解和使用的。
文章來源于領測軟件測試網 http://www.kjueaiud.com/