建設工程教育網(wǎng) > 建筑文苑 > 工程管理 > 正文
2010-01-11 10:49 【大 中 小】【打印】【我要糾錯】
對一個(gè)項目的評估,往往被要求在項目需求還不明確的時(shí)候開(kāi)始。不知道你是否有這樣的體會(huì ),客戶(hù)給你簡(jiǎn)單介紹了一點(diǎn)需求,或者發(fā)給你一份寫(xiě)的很粗略的文檔,就要求你給個(gè)價(jià)格看這東西大概是要花多少錢(qián)多少時(shí)間才能建成。以前我做網(wǎng)站的時(shí)候,遇到過(guò)好多好多的這類(lèi)問(wèn)題。
在軟件開(kāi)發(fā)過(guò)程中,總要面臨一個(gè)“估算(Estimation)”的問(wèn)題。這個(gè)項目需要多長(cháng)時(shí)間?這個(gè)模塊你大概多久完成?一共要花多少錢(qián)才能搞出來(lái)?軟件開(kāi)發(fā)的成本主常常用人月來(lái)計算,當然,也有人/小時(shí),人/天。從數學(xué)上說(shuō),計算一個(gè)時(shí)間的先決條件,是必須要知道速率和距離。那軟件開(kāi)發(fā)度速率是多少?開(kāi)發(fā)要走完的距離又怎么估計?
假定“人天”可以作為我們需要找到的速率(Velocity)的單位,就是某個(gè)人每天8小時(shí)能干的活的工作量,或說(shuō)他的開(kāi)發(fā)能力。對于一大堆待要開(kāi)發(fā)的需求,它的總工作量和整個(gè)團隊的單位開(kāi)發(fā)能力的計算需要考慮更多的因素。
先來(lái)考慮需求的總量。我們來(lái)看這一個(gè)例子,列舉你認識的滿(mǎn)足下面條件的人:人,男人,20歲的男人,20歲的 頭發(fā)有些染黃的男人,20歲的頭發(fā)有些染黃抽煙的男人。從這一組詞中,我們可以看到,從左到右描述的越來(lái)越具體,你能列舉出的也越來(lái)越少。而反過(guò)來(lái)順序,詞的外延更大,你的能想到的卻越來(lái)越多的。
同樣的,對于需求的描述,如果描述的越細致,你就越能夠準確的估算它的工作量。 登錄系統,這樣的需求很難說(shuō)要多久。而一個(gè)使用用戶(hù)名密碼登錄,支持找回密碼功能的登錄系統就稍微好一些。如果能夠畫(huà)出界面原型圖那就更加清晰了。對于這樣的需求,我們可以用“理想的人天”來(lái)評估。我們說(shuō)某一個(gè)需求的成本,是2Ideal Days.就是一個(gè)人在理想的2天內能夠完成這個(gè)工作。
說(shuō)到開(kāi)發(fā)人員的“理想的人天”,就不能離開(kāi)團隊孤立的看。一個(gè)團隊包括項目經(jīng)理和需求分析師、測試員等角色。他們的工作不直接反應到代碼量的多少。如果只考慮一個(gè)項目開(kāi)發(fā)人員的代碼開(kāi)發(fā)量成本,毫無(wú)疑問(wèn)要虧損的。另外,團隊成員水準參差不齊,不同的任務(wù)不同程序員來(lái)完成所花費的時(shí)間也不同。因此,單獨相加每個(gè)成員的“人天”毫無(wú)意義。必須要整體考慮一個(gè)團隊的總“人天”。
那么如何衡量一個(gè)團隊的總“人天”?如果一個(gè)團隊已經(jīng)經(jīng)過(guò)長(cháng)期的磨合,那么可以從以往的數據來(lái)獲得他們的開(kāi)發(fā)量。 如果是新建立的團隊,沒(méi)有經(jīng)過(guò)磨合,那就需要開(kāi)始實(shí)際進(jìn)行一段時(shí)間的開(kāi)發(fā),在開(kāi)發(fā)后3-4個(gè)星期再回頭來(lái)計算這幾個(gè)星期的團隊速率。一般的,一個(gè)團隊經(jīng)過(guò)一段時(shí)間的磨合,在開(kāi)發(fā)速率上會(huì )有緩慢的提升。例如一個(gè)需求的估算是5理想人天,而團隊實(shí)際開(kāi)發(fā)了10天。那么團隊的速率就是5理想人天,團隊的負載系數,即正常被其他事情干擾而降低的比率是2.
有了這個(gè)團隊的速率,項目經(jīng)理就可以放心大膽的說(shuō),我們團隊有10人,開(kāi)發(fā)能力是“n理想人天每周”,負載系數是2,由于有20n的需求總量,我們大概在40周左右完成。因此,我們的報價(jià)是xx,xxx,xxx元。
如果你有幸長(cháng)期跟蹤過(guò)一個(gè)團隊的開(kāi)發(fā)速率,就會(huì )發(fā)現很多有趣的現象。一開(kāi)始,團隊速率很低,但慢慢的成長(cháng)。到達一定時(shí)期后,就會(huì )穩定在一個(gè)固定值附近。有時(shí)候有新的成員加入進(jìn)團隊,團隊的開(kāi)發(fā)速率會(huì )出人意外的降低一段時(shí)間再慢慢回增。
成本、時(shí)間、范圍、質(zhì)量,這是項目管理常見(jiàn)的四要素,四者很難同時(shí)滿(mǎn)足。如果關(guān)心時(shí)間,又不想出錢(qián),還要完成那么多功能,那犧牲的就真正是質(zhì)量了。常說(shuō)的一分錢(qián)一份貨,在軟件開(kāi)發(fā)中反映的淋漓盡致。所以,為了能夠保證按時(shí)按質(zhì)完成任務(wù),一個(gè)合理的開(kāi)發(fā)價(jià)格是合格的項目經(jīng)理必須能夠估算出來(lái)的。而這需要長(cháng)期經(jīng)驗和實(shí)踐的積累,急不來(lái)的。
但有些時(shí)候,也有些不好處理的問(wèn)題。有人問(wèn):我是老板,如果我的開(kāi)發(fā)團隊合起伙來(lái)編造一個(gè)估算,把我的需求估算的很多,而把他們的速率估算的很低,工起來(lái)工作量不飽和,老消極怠工怎么辦?我只能說(shuō),這只好借助于開(kāi)發(fā)方法以外的事情了,例如獎金激勵、績(jì)效考核、引入外部咨詢(xún)團隊(例如ThoughtWorks)等等,人的問(wèn)題不是能夠簡(jiǎn)單靠過(guò)程就解決了的,如果道歉有用的話(huà),要警察干嘛?
1、凡本網(wǎng)注明“來(lái)源:建設工程教育網(wǎng)”的所有作品,版權均屬建設工程教育網(wǎng)所有,未經(jīng)本網(wǎng)授權不得轉載、鏈接、轉貼或以其他方式使用;已經(jīng)本網(wǎng)授權的,應在授權范圍內使用,且必須注明“來(lái)源:建設工程教育網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其法律責任。
2、本網(wǎng)部分資料為網(wǎng)上搜集轉載,均盡力標明作者和出處。對于本網(wǎng)刊載作品涉及版權等問(wèn)題的,請作者與本網(wǎng)站聯(lián)系,本網(wǎng)站核實(shí)確認后會(huì )盡快予以處理。
本網(wǎng)轉載之作品,并不意味著(zhù)認同該作品的觀(guān)點(diǎn)或真實(shí)性。如其他媒體、網(wǎng)站或個(gè)人轉載使用,請與著(zhù)作權人聯(lián)系,并自負法律責任。
3、本網(wǎng)站歡迎積極投稿。