為了規避這種情況的發生,軟件企業必須引入軟件缺陷跟蹤管理機制。測試人員不再需要直接與開發人員接觸,甚至不需要知道開發者是誰,查出錯誤以后,直接報到缺陷跟蹤管理系統就可以了(有些測試團隊是有寫入權限控制的),開發人員做不做修改以及什么時間之前必須完成修改是項目管理部門的事情(當然測試團隊也可以提相關建議)。引入缺陷跟蹤管理機制一方面劃清了各個角色的職責,避免了不必要爭執,另一方面也有助于項目管理部門及時了解軟件產品在生產過程中所處的質量狀況,從而更好地控制產品的質量。
2軟件缺陷的描述
在上一節的討論中,沒有對缺陷、錯誤做嚴格的區分,在開始本節的論述之前,先簡單說明一下這兩個概念。缺陷,指軟件文檔(如軟件需求規格說明、設計規格說明等等)或程序代碼中存在的數據錯誤、邏輯錯誤、內容遺漏以及內容上的不一致性等等。它包括錯誤,與bug是同義詞(注:針對缺陷、錯誤、bug有更細致的討論,鑒于這是一篇實用性文章,筆者不打算做更嚴格的區分)。在上面一節,我們談到在軟件開發流程的每個階段開發人員都有可能引入缺陷,那么如何來描述一個缺陷呢?下面筆者談談自己的看法。