軟體專案在時程緊迫的情況下,如果專案範圍、期限與資源不可能更動,常有些人會認為要達成專案目標,應該減少軟體設計的時間,增加程式實作的時間。這些人以為時間緊迫,沒有時間做設計,軟體設計對軟體專案產出的頁獻不是最直接的,還不如把節省設計的時間拿來寫程式。誠如M君在矇矇的秘密基地的《軟體的模組化(Modulize)設計應該要徹底實踐!》中提到~
這就是現實的問題,有專案在身上的時候,就很難做到。只有沒有專案的情形下才能真正落實,沒有專案就是要花錢,事實上我們老闆只是把上個專案賺的錢決定不要再接著賺,不是很有錢(我們手上有了三個專案都是10M以上的,全都暫時用政治力量擱置),要落實真的流程,當然目的是想未來能否賺更多錢。
M君的觀點看起來似乎是理所當然,但大多數的專案的經驗及教訓(Lesson Learn)卻告訴我們:「忽略軟體設計的專案難逃專案失敗的命運」。如果我們因應專案時間緊縮而在早期不做設計或整體規劃,到專案後期會因為不做設計所引發的高度風險而以失敗收場。為什麼為這樣呢?因為我們落入了「捨本逐末」的系統陷阱中 閱讀全文

