缺陷跟蹤過程是軟件工程中的一個極其重要的過程。本文介紹了如何使用兩個經典的分析模型,來控制缺陷跟蹤的過程。這兩個模型叫做《活動bug走勢圖》、《bug打開關閉圖》。
另外,在文章中還會提到兩個概念:“bug收斂”、“零bug反彈”,具體含義會在介紹中說明。
先看張圖片,這就是兩個模型的分析圖片,集成在一個坐標里面了?;顒觔ug走勢是一條線,bug打開關閉是柱圖,X軸是時間。下面我們詳細說說這兩個模型的含義。
先要說幾個名詞解釋:
1.活動bug數。狀態不是closed的所有bug的總數?;顒觔ug指在項目中還需要大家去關注的bug,有的bug管理工具還有invalid、duplicate狀態,這些是不屬于活動bug的,但是later的bug,屬于活動bug。
2.打開bug次數和關閉bug次數。每新增1個bug或者是reopen一個bug,打開次數都會被記加一。每close一個bug,關閉次數會加一。
說明了這些概念,上面兩個模型就比較好理解了?;顒觔ug走勢曲線上的每個點,表示當天軟件中還存在多少個活動bug。這個數字越大,說明軟件的質量越差。而bug打開關閉圖中,每天都會有紅色、藍色共兩根柱子,表示當天打開、關閉bug的次數,如果當天這兩個數字都很高,說明bug的處理非?;钴S,軟件非常不穩定。注意,活動bug的單位是“個”,而打開關閉的單位是“次”,因此我們用線圖和柱圖分別表示。
下面講一下模型的用法。一般的軟件測試過程,都有3個階段,從上面的圖中能清楚的看出來。
階段1:測試組對系統開始進行全面測試,打開bug的速度明顯高于關閉bug的速度,活動bug數急速上升,當完成了全部測試用例的執行時,活動bug數達到最大;
階段2:開發組全力修復bug,測試組一邊驗證bug,一邊小范圍的回歸測試,驗證bug的周邊功能。這時,關閉bug的速度高于打開bug的速度,活動bug數回落。當活動bug數剛開始回落的時候,稱為“bug收斂”。最終,活動bug會降到一個很低的位置,有時,會達到“零bug ”,不過,這并不說明項目可以發布。
階段3:測試組再次對軟件系統進行一次完整的回歸測試。在這個過程,還會打開一些bug,但是,數量很少,這稱為“零bug反彈”。完成了這一輪回歸之后,軟件才真正穩定下來,進入發布候選過程。
所以,我們可以通過這兩個模型,來檢查項目的測試進展是否正常,軟件的質量是否穩定,檢查方法如下:
如果第二階段已經開始,但是活動bug仍在繼續上升,沒有回落,說明打開bug速度仍很高,可能是第一階段用例執行還沒有完成,或者開發組修復bug速度較低;
如果第二階段結束,活動bug沒有回落到低水平,說明大量的bug還需要修復,軟件質量低;
如果第三階段,打開、關閉bug的次數很多,說明bug活動頻繁,系統穩定性差。
因此,正常的項目測試應該是,活動bug先上揚,再回落,最后在低位小幅振蕩,并且打開關閉次數很少。有了這兩個分析模型,我們對項目進度得控制,就更有把握了。
原文轉自:http://www.anti-gravitydesign.com