13.4軟件項(xiàng)目的估計(jì)
阿超:大家都來談?wù)勎覀內(nèi)绾喂烙?jì)軟件項(xiàng)目需要的時(shí)間吧。我們?cè)诘诙杏羞^討論和練習(xí)。我先說一點(diǎn),下面三個(gè)詞匯是有區(qū)別的:
估計(jì)(Estimation)——繞王屋村步行一圈,我估計(jì)要花一個(gè)小時(shí)。
目標(biāo)(Goal)——領(lǐng)導(dǎo)說讓我們30分鐘就要完成。
決心(Commitment)——那我們決心豁出去了,跑步前進(jìn)!爭(zhēng)取20分鐘完成任務(wù)!
用軟件項(xiàng)目為例子:
估計(jì)——估計(jì)這個(gè)項(xiàng)目要花至少5到7個(gè)月的時(shí)間。
目標(biāo)——領(lǐng)導(dǎo)說:但是我們要向“十一”獻(xiàn)禮,只有4個(gè)月的時(shí)間了!
決心(之一)——那咱們拼了!我們爭(zhēng)取在“十一”之前完成所有任務(wù),向“十一”獻(xiàn)禮!
決心(之二)——那我們爭(zhēng)取在“十一”拿出一個(gè)可用的產(chǎn)品,但是不一定有所有功能。
決心(之一)、(之二)是不一樣的。
另一件事情是,從一個(gè)粗略的模型到一個(gè)最終的產(chǎn)品需要很長的時(shí)間。一個(gè)演示版出現(xiàn)后,很多領(lǐng)導(dǎo)不理解為啥還要花N個(gè)月的時(shí)間做這個(gè)軟件,大部分功能不都已經(jīng)在那兒了嗎?
對(duì)于一個(gè)時(shí)間驅(qū)動(dòng)的項(xiàng)來說,如果你在“粗略的模型”階段浪費(fèi)了一個(gè)月的時(shí)間,等待各級(jí)領(lǐng)導(dǎo)做決定(這是很容易發(fā)生的事情)。你就得在項(xiàng)目開發(fā)過程中把這一個(gè)月的時(shí)間奪回來——這是非常困難的事情。
二柱:在做上一個(gè)項(xiàng)目的時(shí)候,我們的領(lǐng)導(dǎo)大智在路上碰到我,提到客戶剛剛和他通了電話,有一個(gè)新的功能需求如此如此,問我需要多長時(shí)間。我脫口而出,也就是三五天吧。后來和大牛討論之后,三五天變成了七八天。然后在實(shí)施過程中,原來認(rèn)為的小問題變成了大問題,最后花了半個(gè)月才勉強(qiáng)完成,而且另外兩個(gè)同事還幫了不少忙。聽說大智告訴了客戶“五天交貨”,弄得我非常下不來臺(tái)。所以我的教訓(xùn)是不要“脫口而出做估計(jì)”——因?yàn)槟阍诖颐χ械墓烙?jì)會(huì)傳播得非常遠(yuǎn),你再也無法更改。
大拴:作為開放人員,我們還要為我們的領(lǐng)導(dǎo)和客戶設(shè)定正確的期望值——到底我需要多長時(shí)間才能開發(fā)出客戶滿意的產(chǎn)品。如果我們總是眼高手低——保證三五天,結(jié)果半個(gè)月。那即使我們?cè)谶@半個(gè)月中拼了老命,做得很好,客戶和老板還是不滿意。
大牛:估計(jì)活動(dòng)本身也需要時(shí)間。我很高興地看到我們有專門的時(shí)間來做“估計(jì)”這件事情。以前都是拍拍腦袋,或者在飯桌上你一言我一語就決定了。
阿亨:我們還要用上一次項(xiàng)目的數(shù)據(jù)作為參考,如果我們上一次過于樂觀地估計(jì)了進(jìn)度,那么這次我們要引以為戒。
果凍:兵法云,置之死地而后生,不少成功的經(jīng)理都有意地縮短估計(jì)時(shí)間,以激發(fā)團(tuán)隊(duì)的士氣。
大家:(紛紛說)果凍,你在哪本書上看到這樣的妙計(jì)?你去投奔這些成功的經(jīng)理去吧。
阿亨:(在白板上一邊畫圖,一邊說)果凍的兵法會(huì)產(chǎn)生這樣的惡性循環(huán)(如圖13-1所示)。
圖13-1果凍的兵法:惡性循環(huán)
阿超:還有一種可能是,團(tuán)隊(duì)成員不再相信項(xiàng)目的計(jì)劃,項(xiàng)目經(jīng)理的喊話會(huì)像“狼來了” 一樣沒有效果。