Joel on Software 有一讀再讀的價值,這幾年前讀過三、四次,還是覺得收獲良多。
雖然 Joel on Software 講的是程式設計、程式專案管理,但是參考他的建議,
如果要讓工作順利完成,首先得將工作細分成可以執行的小項目,
有錯誤馬上修正,確保正確後,再進行下一個項目,
"為了修正這個問題, 微軟全面採用所謂的"零錯誤作法".
很多公司裡的程式人員都不禁竊笑, 因為聽起來像是管理階層認為能用行政命令降低錯誤數量. 實際上"零錯誤"是指無論何時都要先修正錯誤才能寫新程式.
原因如下. 一般來說, 愈晚修正錯誤, 修正所付出的成本(時間及金錢)愈高. 舉例來說, 當你打錯字或出現編譯器會發現的語法錯誤, 要修正只是小事一件. 當你的程式第一次執行出錯時, 應該也能立即改正, 因為整個程式還在你腦海裡.
如果要為幾天前寫的程式除錯, 應該需要回想好一陣子, 不過當裡重讀所寫的程式之後, 就會記起所有細節並在適當時間內把問題修好. 不過如果你要為幾個月前寫的程式除錯, 很可能已經忘掉了一大半, 要修正就是難上加難.
你也可能正在替別人的程式除錯, 而當事人可能正在阿盧巴渡假, 這時候除錯就像科學一樣: 你得條理分明小心翼翼地慢慢來, 而且也無法確定要多久時間才能解決. 另外如果要為已出貨的程式除錯, 要修正問題的代價可是難以估算的."
- Joel on Software - 約耳測試: 邁向高品質的12個步驟 (在「Google 網頁註解」中檢視)