2007年6月20日 星期三

B02 只需做出客戶滿意的系統?

依功能做出可以通過客戶全部驗收準則的系統,是專案的必要條件;達不到這個要求時,無論你在其他方面做得再棒再好,結果都只是零分。因為客戶不驗收表示公司收不到錢,專案收不到錢就會血本無歸。

上面的條件雖是必要,但也只讓系統達到及格的程度而已。除了驗收之外,未來會有增加需求,錯誤修改、修改後的測試等可能發生的風險,這些可能產生的工作項目如果處理的不好,同樣會造成系統無法滿足客戶的新需要或是運行起來錯誤連連甚至不穩定。為了這些可能成為將來風險的工作項目,在專案裡必須要“額外”做許多事情來避免那些風險真的成為問題。

目前維護的系統當初就是以標題名稱作為開發的準則,一切的行動都以滿足當時的需求為目標,其他的部分大多得過且過。一直以來無論是功能的內容或是設計的想法,雖然針對想問的點同事都會熱心地說明,但是詢問整個特性的功能有哪些或者詢問某個地方為什麼會這樣子做時,有時會完全沒有答案,甚至通知說太久沒碰早已經忘記,希望我們自己去看程式碼再提出問題。

這是很沒力的感覺,自己曾經做過的事都忘記了,根本不知道怎麼回事的人可能會曉得嗎?寫下那些程式的人忘記為什麼那樣寫,自己重看時至少會有似曾相識的感覺;從沒開過那些程式的人,每一行對他來說都全然是陌生的呀!這樣的系統有誰敢去修改呢?

聽說這就是台灣軟體業裡大多數的情況……。

沒有留言:

張貼留言