“坦白地說,微軟所面臨的挑戰(zhàn)之一是它的很多員工還沒有遭遇過多少失敗。很多人從未遇到過失敗的項目。結(jié)果是,人們把成功視為理所當然的事,這是很危險的。。。人們遭遇失敗時,將被迫發(fā)揮出創(chuàng)造性,不分晝夜地深入探索并冥思苦想。每個公司都需要有過這種經(jīng)歷的人?!?
——比爾.蓋茨 “犯錯的重要性”,《美國航空雜志》,1995年7月
上面這段話是摘自《軟件開發(fā)的滑鐵盧——重大失控項目的經(jīng)驗與教訓》一書的,兩個月前第一次看到這段話,那時剛好經(jīng)歷了一個讓我印象無比深刻的項目,對這段話也特別有感觸,兩個月過去了,又重新找出這本書來看,對作者提到的一些現(xiàn)象有了更深的共鳴。鑒于這本書目前尚沒有中文電子版,所以決定把其中一些值得反復體會的文字,以及自己在讀書過程中的一些思考記錄下來, 與大家一起分享。
所謂的“軟件失控項目”,是指在創(chuàng)建系統(tǒng)所需的軟件時遇到困難,從而導致大大超出可控制范圍的項目?!绊椖渴Э亍卑凳局椖孔兊脽o法管理,從而無法達到最初的目標,甚至無法接近目標——這里所指的目標,包括進度目標、成本目標以及滿足功能性和非功能性需求的目標。
但軟件項目未能達到成本和進度的目標,常常是因為這些目標本身就是錯誤的,而軟件從業(yè)人員辛辛苦苦的工作,其實是不斷的耗費時間去迎合不可實現(xiàn)的目標;而這些目標通常是由營銷人員或客戶指定的,其次是由管理人員來制定,很少有實際完成項目的技術(shù)人員涉足其中。
書中作者引用了三個詞來說明軟件項目所處的不同情形:兩難境地(crunch mode),死亡行軍(death march),和 失控。我特別喜歡作者對“兩難境地”和“死亡行軍”項目的描述,很生動很形象的這樣兩種項目對軟件從業(yè)人員的影響。
處于“兩難境地”的項目面臨著無法達到最初目標的威脅,而項目團隊在努力想要跨越該困境。軟件專家會在辦公室給家人打電話說:“我們正處于兩難境地,在半夜之前我是不會回家的”。家人也不會吃驚。兩難境地的狀況可能會持續(xù)幾天、幾周,甚至幾個月,這取決于項目本身持續(xù)的時間以及它偏離目標的程度。
“兩難境地”這個詞源自John.Boddie在1987年出版的《Crunch Mode》一書,而這個詞并不是Boddie發(fā)明的,而是由發(fā)現(xiàn)自己被迫完成項目的軟件從業(yè)者們發(fā)明的,通常用來描述進度表極其緊迫的項目,說明項目參與者感受到的壓力。
而“死亡行軍”項目簡單的說,就是當你發(fā)現(xiàn)不得不參與到一個項目中,又不得不通過超常的努力和超長時間的工作才能完成那些不合理目標時,你所參與的這個項目就是一個“死亡行軍”的項目。
“死亡行軍”這個詞源自Ed.Yourdon在1997年出版的《Death March》一書,而這個詞也同樣是由那些被迫在“死亡行軍”項目中行走的人們發(fā)明的,通常用來描述進度表幾乎不可能完成的項目,說明項目參與者的周圍彌漫著的是難以忍受的潛在的失敗氣味。
在我們現(xiàn)實的世界中,通常是因為有人對項目結(jié)果期望太高,時間要求太緊,所以從項目開始就呈現(xiàn)出“兩難境地”;隨著項目的進行,項目參與者很快發(fā)現(xiàn)自己在進行“死亡行軍”,正在設法實現(xiàn)越來越不可能實現(xiàn)的目標;當項目明顯成功無望、多個方面都已失敗時,改項目就成為“失控”項目了。
大多數(shù)人,如果讓他們選擇的話,都不愿意加入到死亡行軍,不想讓自己處于兩難境地,而且永遠不想處于失控的項目中??梢驗橄到y(tǒng)項目通常受到進度表的支配,管理者根據(jù)項目預先確定的進度表來檢查項目進度,而進度表總是由那些沒有能力精確估算的人來確定——比如營銷人員或者客戶——所
項目經(jīng)理勝任力免費測評PMQ上線啦!快來測測你排多少名吧~
http://www.vanceur.cn/pmqhd/index.html