修復軟件缺陷的代價
在一開始討論軟件測試時,我們曾說測試人員要從需求分析時就介入進去,問題發現得越早越好.缺陷被發現之後,要儘快修復這些被發現的缺陷.為什麼要這樣做呢?原因很簡單,錯誤並不只是在編成階段產生,需求和設計階段同樣會產生錯誤.也許一開始,只是一個很小範圍內的潛在錯誤,但隨著產品開發工作的進行,小錯誤會擴散成大錯誤,為了修改後期的錯誤所做的工作要大得多,即越到後來往前返工也越遠.如果錯誤不能及早發現,那只可能造成越來越嚴重的後果.缺陷發現或解決的越遲,成本就越高.
Boehm在Software Enginerring Economic(1981年)一書中寫到:平均而言,如果在需求階段修正一個錯誤的代價是1,那麼,在設計階段就是它的3~6倍,在編程階段是它的10倍,在內部測試階段是它的20~40倍,在外部測試階段是它的30~70倍,而到了產品發布出去時,這個數字就是40~1000倍.修正錯誤的代價不是隨時間線性增長,而幾乎是呈指數增長的.
浙公网安备 33010602011771号