軟體問題的分類與管理

2021-09-30 22:21:18 字數 2997 閱讀 3616

一、軟體問題的定義與分類

1. 軟體問題的分類

軟體錯誤(software error)

軟體缺陷(software defect)

軟體故障(software faut)

軟體失效(software faiure)

定義:(1)軟體錯誤:指在軟體生存週期內的不希望或不可接受的人為錯誤,其結果將導致軟體缺陷的產生。

關注點:屬於人為錯誤

(2)軟體缺陷:存在於軟體(程式、資料、文件)之中的那些不希望或不可接受的偏差。

關注點:欠缺或不完備的地方

一般情況下,滿足以下五種情況中的一種,即可存在軟體缺陷。

①   軟體未達到產品說明書中標明的功能。

②   軟體出現了產品說明書中指明的不會出現的錯誤。

③   軟體功能超出了產品說明書指明的範圍。

④   軟體未達到產品說明書雖未指出但應達到的目標。

⑤   

軟體測試人員認為軟體難以理解、不易使用、執行速度慢,和終端使用者認為不好使用。

(3)軟體故障:指在軟體執行過程**現的不希望或不可接受的內部狀態,若此時無適當的措施(容錯或異常處理機制)加以及時處理,便產生軟體失效。

關注點:內部狀態

(4)軟體失效:指在軟體執行時產生的一種不希望或不可接受的外部行為結果。

關注點:外部行為結果

2. 軟體失效機理

軟體錯誤——>軟體缺陷——>軟體故障——>軟體失效

軟體錯誤是一種人為的錯誤,乙個軟體錯誤必定產生乙個或多個軟體缺陷

當乙個軟體缺陷被啟用時,便產生乙個軟體故障。

同乙個軟體缺陷在不同的條件下被啟用,可能產生不同的軟體故障。

軟體故障若沒被及時的使用容錯加以處理,便不可避免的導致軟體失效。

同乙個軟體故障在不同條件下可能產生不同的軟體失效。

3. 產生軟體錯誤、缺陷的原因

主要原因是開發的軟體與需求說明書、軟體設計說明書的不一致,以及在軟體的實現中,未能達到使用者潛在使用者需求的目標。

二、軟體錯誤的跟蹤與管理

1.缺陷與錯誤嚴重與優先順序

(1)   嚴重級別

嚴重:系統崩潰、資料丟失、資料破壞。

較嚴重:操作性錯誤、錯誤結果、遺漏功能。

一般:小問題、錯別字。

建議:不影響使用的瑕疵或更好的實現。

(2)   優先順序

最高優先順序:立即修復,停止進一步測試。

次高優先順序:在產品發布之前必須修復。

中等優先順序:在產品發布之前應該修復。

最低等優先順序:可能會修復,但是也能發布。

2.軟體錯誤的跟蹤管理

(1)錯誤(bug)資訊的描述

①bug記錄資訊

測試軟體名稱

測試版本號

測試人名稱

測試事件

測試軟體和硬體配置環境

發現軟體錯誤的型別

錯誤的嚴重等級

詳細步驟

必要的附圖

測試注釋

②bug的處理資訊

處理者姓名

處理時間

處理步驟

錯誤記錄的當前狀態

3.軟體錯誤狀態的描述

①   新資訊(new):測試中新報告的軟體錯誤(bug)。

②   開啟(open):錯誤已經被確認並已經分配給相關開發人員處理。

③   修正(fixed):錯誤已經由開發人員修正完成,等待測試人員驗證。

④   拒絕(decined):高階測試人員或開發人員認為不是錯誤,拒絕修改bug。

⑤   延期(deferred):此錯誤不在當前版本中修復,而要到下一版本中修復。

⑥   關閉(cosed):錯誤已經修復,並已經過驗證。

4.錯誤管理流程

步驟:第一步:測試人員提交新的錯誤資訊,並輸入到錯誤跟蹤管理系統錯誤資訊資料庫中(如td),錯誤狀態置為初始狀態「new」。

第二步:高階測試人員驗證錯誤並做相應處理。

①   如果確認是錯誤,分配給相應的開發人員,把錯誤狀態置為「open」。

②   如果高階測試人員認為這個「new」狀態的「錯誤」不是錯誤,則拒絕修改,把錯誤狀態設定為「decined」。

第三步:開發人員查詢狀態為「open」的所有錯誤,並對錯誤做如下處理:

①   如果開發人員認為這個「open」狀態的錯誤不是錯誤,則拒絕修改,把錯誤狀態設定為「decined」。

②   如果是錯誤,則修復並把錯誤狀態設定為「fixed」。

③   如果是不能解決的錯誤,要留下文字說明並保持錯誤狀態為「open」。

④   如果需要延期解決的錯誤,要留下文字說明,把錯誤狀態設定為「deferred」。

注意:對於不能解決的和延期解決的錯誤,不能由開發人員自己決定,一般需要某種會議(評審會)通過才能認可。

第四步:測試人員查詢狀態為「fixed」的所有錯誤,驗證這些錯誤是否已經解決,並做如下處理:

①   如問題解決了,把錯誤狀態設定為「cosed」。

②   如問題還沒解決,重新把錯誤狀態設定為「open」。

5.錯誤流程管理原則

①為了保證錯誤處理的正確性,需要有測試經驗豐富的測試人員驗證發現的錯誤是否是真正的錯誤,書寫的測試步驟是否準確,可以重複。

②每次對錯誤的處理都要保留處理資訊,包括處理姓名、時間、處理方法、處理意見、bug狀態等。

③拒絕或延期處理錯誤不能由程式設計師單方面決定,應由專案經理、測試經理和設計經理共同決定。

④錯誤修復後必須由報告錯誤的測試人員驗證,確認已經修復後,才能關閉錯誤。

⑤加強測試人員與程式設計師之間的交流,對於「deferred」狀態的錯誤,需要互相交流意見,避免真正的錯誤被遺漏。對於某些不能重複的錯誤,可以請測試人員補充詳細的測試步驟和方法,以及必要的測試用例。

軟體缺陷的分類與管理

軟體缺陷的分類與管理 通常大家發現軟體缺陷時會對軟體缺陷進行分類,可分類的方式只有一種,就是嚴重極別,難道沒有其它的分法嗎。比如我們碰到下面這種情況,測試人員發現有一種功能是必需加入進去的,這時他與程式設計師說,程式設計師說沒有時間或是不必要,這時這種情況則會形成兩者的扯皮,最終的結果也就不了了知了...

軟體測試的定義與分類

一 軟體的分類 二 什麼是軟體測試 三 軟體測試的目的 四 軟體測試的分類 五 環境分類 六 常見筆試面試題 程式 是按實現設計的功能和效能要求執行的指令序列。文件 是與開發 維護和使用有關的 材料。windows linux dos系統 ios系統 mysql等。書面定義 為了發現程式中的錯誤而執...

軟體定義與分類1 1

1 1983年ieee的軟體定義 電腦程式,文件,執行程式必須的資料,方法,規則。方法和規則在文件中說明,在程式中實現。2 簡化軟體定義 程式 文件 資料 1 系統軟體 與計算機硬體緊密配合使計算機各個部件與相關軟體及資料協調,高效工作的軟體。如作業系統,編譯程式等。2 支撐軟體 協助使用者開發軟體...