Ruddy Lee 分享空間

Emergent Design 演化設計

專案估算: 高估了好還是低估比較好?

leave a comment »

業務與工程師爭執,每次專案都沒有辦法估算的準確,那到底是高估工時好呢還是低估好?

基本上;高估要比低估好上許多!

因為低估的損失遠大於高估,如下圖所示:中間的箭頭部分表示上升的越高則工作量、成本越大而開發時程也越長。

估算1

.

當然是估準了最好! 可是那種估中的機率就像抽中了過年的第一大獎一樣少有! 但又不太一樣,因為工程師們經常是靠著努力工作來換取準時交件的。所以如果我們能在高估的情形下,再靠努力來換取專案的提前完成,不是皆大歡喜嗎!(因此;人,才是專案開發最大的變數)

估高了;容易導致帕金森法則(Parkinson’s Law)的現象,工程師只在意準時做完份內的事,並不在意工作效率這回事,就好比學生們做暑假作業一般,沒到暑假結束前是不會動工的,因此導致時間上無謂的浪費。

估低了;專案可能因為時間不足而做不完,甚至導致專案失敗。從統計的角度來看,降低了按時交付的可能性,還可能有意外的損失(員工被要求拼命加班,很容易產生離職的考量)。專案基礎不穩固,即使驗收過關,未來的維護作業也會蒙上一層陰影,導致信譽與金錢上的雙重損失。

高估的時候,可能賠上右側那條紅色的斜直線性的損失。估低了;則不只是專案可能遭致失敗的命運,同時還賠上其他維護、信譽受損等非線性的損失(如上圖左側的紅色曲線)。估高了的時候,產生的帕金森法則可以用管理來克服,但低估了就只有勞民又傷財了。

.

如何避免低估了呢?

先問自己: 你都怎麼做估算的呢? 估算牽扯到的是直覺、比較或是猜測。務實的工程師會跟我辯解說他可是一項一項功能既努力有辛苦的加總起來的數據,怎麼說都不會差很遠的。是的,你的努力通常是不會白費的,透過breakdown分成細部功能,再一一加總起來絕對是有幫助的,最起碼你又review了一次。這裡有幾個基本動作在你開始這些行為之前需要弄清楚的。首先;

範圍第一」:有一個圖表對範圍的判斷會有一些幫助 — Stacey Matrix.

 

89

 

先客觀的看一下手頭的專案在 Stacey 博士的「專案複雜度判斷」的落點在哪裡? 先用這個落點來判斷專案的範圍。專案隨著工程師的開發與學習過程,落點也會隨著改變。結果應該是代表橫軸的需求代表縱軸的技術都趨向軸心點,也就是進入"簡單“的範圍。這是成功的專案的必經之路。口語化的描述是: 工程師弄清楚了客戶的需求,也學習到了開發的技術,因此專案變得簡單了便容易做成功。依據"複雜度判斷"的方式你可以客觀的知道專案落在哪裡,再採取相對的措施。提醒你: 先客觀的審視一下專案,看看需求(他是否指向真正的問題),再看看技術(你是否有足夠的資源讓團隊在時程內學會這項技能),這是讓專案成功的最基本要求。

 

dilbert

不要因為估算而相互責難,其實只是立足點不同所致。

.

估算前後的心情「客觀第一」

不要因為估算被責難,而懷恨在心,這是不值得的,其實只是立足點不同所致。

不要為估算而產生意氣之爭,因為只要是估算,基本上都不會太準確,當然隨著時間的過去,時間越晚在做估算自然就會越準確,快做完的時候估得最準。(請參考Steve McConnell的不確定性錐)

Cone01

不確定性錐

Fred Brooks 曾說因為時間不足所導致的軟體專案失敗,比其他所有原因導致的專案失敗全部加起來還要多。(人月神話)

經驗讓我們容易低估專案的時程

不是只有業務或老闆希望估低一點開發的時程(能夠盡快做完才有錢拿)。有時候經驗豐富的工程師也會估得比年輕工程師低一些,因為他對自己的能力有相當的信心。但是如果做的人是年輕的工程師的話。寧可高估也比低估來的好些!

 .

參考: 1. Is It Better to Overestimate or Underestimate? 2. 帕金森法則 Parkinson’s Law 1958年,英國曆史學家、政治學家西里爾·諾斯古德·帕金森(Cyril Northcote Parkinson)通過長期調查研究,出版了《帕金森定律》(Parkinson’s Law)一書。帕金森經過多年調查研究,發現一個人做一件事所耗費的時間差別如此之大:他可以在10分鐘內看完一份報紙,也可以看半天;一個忙人20分鐘可以寄出一疊明信片,但一個無所事事的老太太為了給遠方的外甥女寄張明信片,可以足足花一整天:找明信片一個鐘頭,尋眼鏡一個鐘頭,查地址半個鐘頭,寫問候的話一個鐘頭零一刻鐘……特別是在工作中,工作會自動地膨脹,占滿一個人所有可用的時間,如果時間充裕,他就會放慢工作節奏或是增添其他項目以便用掉所有的時間。

Written by ruddyllee

2015 年 03 月 24 日 於 19:15:10

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s

%d 位部落客按了讚: