軟件缺陷

軟件缺陷
軟件缺陷的定義
軟件缺陷,通常又被叫做Bug或者defect,即爲軟件或程序中存在的某種破壞正常運行能力的問題、錯誤、其存 在會導致軟件產品在某種程度上不能滿足用戶的需求。
軟件缺陷是指存在於軟件(程序、數據、文檔)中的那些不符合用戶需求的問題。

軟件缺陷的表現形式
1、軟件未達到需求規格說明書標明的功能
2、軟件出現了需求規格說明書指明不會出現錯誤的地方
3、軟件的功能超出了需求規格說明書指明的範圍
4、軟件出現了需求規格說明書雖未指明,而應該達到的目標
5、軟件測試人員認爲軟件難以理解,不易使用,運行速度慢,或者最終用戶體驗不好。

具體表現形式如下:

1、 軟件未達到需求規格說明書標明的功能
1、計算器說明書一般聲稱該計算器將準確無誤地進行加、減、乘、除運算。
2、如果測試人員或用戶選定了兩個數值後,隨意按下了“+”號鍵,結果沒有任何反應。
軟件缺陷
2、軟件出現了需求規格說明書指明不會出現的錯誤
1、若在測試過程中發現,因爲電池沒電而導致了計算不正確。
2、但軟件需求規格說明書中明確指出在任何情況下都不允許出現計算不正確的情況出現。

3、軟件的功能超出了需求規格說明書指明的範圍
1、若在進行測試時,發現除了規定的加、減、乘、除功能之外,還能夠進行求平方根的運算, 而這一功能並沒有在說明書的功能中規定。

4、軟件未達到需求規格說明書雖未指明而應該達到的目標
1、假如計算器說明書指明計算器不會出現崩潰、死鎖或者停止反應,而在用戶隨意按、敲鍵盤後, 計算器崩潰了。

5、 軟件測試人員認爲軟件難以理解、不易使用、運行速度慢、或者最終用戶認爲不好
1、測試人員或最終用戶發現計算器某些地方不好用,比如,按鍵太小、顯示屏在亮光下無法看清等。
軟件缺陷產生的原因
軟件缺陷產生是不可避免的,造成軟件缺陷產生的原因主要歸納如下:
1、需求解釋、記錄或者定義錯誤
2、設計文檔說明存在錯誤或者拼寫錯誤
3、編碼說明、程序代碼有誤
4、硬件或者軟件系統上存在錯誤
軟件缺陷
軟件缺陷產生的根源
需求的變化
需求說明書、設計文檔、程序的變更
交流不充分

客戶與開發人員、開發人員與測試人員等
軟件的複雜性
功能複雜、開發複雜、測試複雜
開發人員的錯誤
對需求的理解、開發壓力、能力與經驗
進度壓力
項目週期比較緊
軟件缺陷的信息
爲了便於缺陷的定位、跟蹤和修改,要對所發現的缺陷,按照缺陷的嚴重程度、優先級、發現階段、 修復階段、缺陷的性質、所屬功能模塊、系統環境等方面進行分類和統計。
軟件缺陷
缺陷的狀態
new:“新建狀態”。
測試人員新建缺陷,稱之爲“new”狀態。
open: 意爲“打開狀態”。
開發人員接收到缺陷後確認該缺陷,並且會打開,稱之爲“open”狀態。
fixed:意爲“修復狀態”。
開發人員打開缺陷後進行修復的狀態稱之爲“fixed”狀態。
closed:意爲“關閉狀態”。
測試人員發現該缺陷已被開發人員修改,並且修改正確,會關閉該缺陷,稱之爲"closed"。
rejected:意爲“拒絕狀態”。
開發人員接收到測試人員新建的bug後,不認同該bug,可以拒絕修改,稱之爲“rejected”
postpone:意爲“拖延狀態”。
開發人員接收到測試人員的bug後,如遇到臨時有事的情況,可以延後修復,稱之爲“postpone”
缺陷的嚴重程度
軟件缺陷
缺陷的 優先級
軟件缺陷
缺陷的分類
軟件缺陷
軟件缺陷修複相關
並不是所有的缺陷,開發人員都會進行修復
開發人員拒絕修改的缺陷
程序員無法重現或者現象難以捕捉 --- 缺陷詳細描述沒有明確的報告以說明重現缺陷的步驟---缺陷報告程序員無法讀懂的缺陷報告 ---標題
由不受信任的測試人員提出---缺陷提交人
不是所有缺陷都會修改
市場的壓力使得產品最終發行有時間限制
測試人員錯誤理解或者不正確操作引出的缺陷(FAQ)錯誤的修改影響的模塊較多,帶來的風險較大(遺留) 修改性價比太低
缺陷報告中提出的問題很難重現

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章