軟件項目質量管理的實踐
軟件項目質量理論
1. 軟件的定義
在真正的商業環境中,軟件是一個完整的產品,包括:
□ 實現用戶特定需求的程序代碼
□ 支撐程序代碼運行與之相關的文檔
□ 程序代碼運行所必需的數據
2. 軟件的質量定義
軟件質量是軟件滿足明確說明或隱含的需求的程度。
軟件質量不是絕對的,而是相對的概念。討論軟件的質量最終歸結為定義軟件的質量特性,而定義一個軟件的質量就等于為該軟件定義一系列質量特性。
3. 開發過程質量和軟件產品質量的關系
度量的定義
根據一定的規則,將數字或符號賦予系統、構件、過程等實體的特定屬性,從而使我們能清晰地理解該實體及其屬性。
簡而言之,度量就是對事物屬性的量化表示。
軟件質量度量的必要性
為什么軟件質量需要有度量:
□ 有效產品質量管理
□ 改進用戶滿意度
□ 改進產品質量
□ 減少產品開發和售后服務支持費用
沒有質量度量,等于沒有質量標準!
軟件質量度量的挑戰
使用軟件產品質量度量的挑戰:
□ 無公認準確和科學的度量
□ 產品性質不同,很難有通用的度量
□ 最佳實踐,實際上是經驗積累總結
□ 涉及不定因素和人為因素
□ 片面理解和使用可以造成負面影響和效果
軟件產品質量的常用度量
1. 初期故障率:
□ 指軟件在初期故障期(一般以軟件交付給用戶的三個月內為初期故障期)內單位時間的故障數
□ 用來評價交付使用的軟件質量,預測什么時候軟件運行達到基本穩定
□ 一般以每100小時的故障數為單位
2. 偶然故障率:
□ 指軟件在偶然故障期(一般以軟件交付給用戶的四個月以后為偶然故障期)內單位時間的故障數
□ 用來度量軟件處于穩定狀態下的質量
□ 一般以每1000小時的故障數為單位
3. 平均失效前時間:
□ 指軟件在失效前正常工作的平均統計時間
□ 用來度量軟件的可靠性
4. 平均修復時間:
□ 指軟件失效后,在其恢復正常工作所需要的平均統計時間
□ 用來度量軟件的可維護性
5. 缺陷密度:
□ 指軟件單位數量的源代碼中隱藏的缺陷數量
□ 通常以每千行,無注解源代碼為一個單位
軟件測試的定義
軟件測試是為了發現錯誤而審查軟件文檔、檢查軟件數據和執行程序代碼的過程。
其目的在軟件交付使用前,充分發現缺陷Bug并協助相關部門定位、解決缺陷,最后交付一個高質量的軟件給用戶。
產品設計規范質量狀態
1. 產品設計規范(Spec或設計文檔)質量狀態:
□ 草稿
□ 審閱
□ 提交評審會
□ 開始編碼
2. 產品設計規范質量到位狀況:
□ 五種狀態中各占的百分比是多少
□ 按事先計劃日程完成的比例是多少
□ 多少百分比開發人員至少有一個指派給他的功能可以進行編碼
軟件質量測試的度量
1. 軟件質量測試的常用度量:
□ 產品設計規范(Spec或設計文檔)質量狀態
□ 缺陷數據有關度量
□ 測試用例度量
□ 測試規范度量
□ 測試過的系統數量
□ 自動化測試度量
2. 缺陷數據有關度量:
□ 所有缺陷數量的時間走勢或趨勢統計
□ 未被處理的缺陷按照嚴重程度的統計
□ 未被處理的缺陷按照優先程度的統計
□ 未被處理的缺陷數量的時間走勢或趨勢統計
□ 所有的缺陷按照嚴重程度的統計
□ 新被發現的缺陷按嚴重程度的統計
□ 已處理的缺陷按照嚴重程度的統計
□ 被修復的缺陷按照嚴重程度的統計
□ 已發現缺陷的數量和已修復的缺陷數量的比率,也被稱為修改率或糾錯率
□ 未處理的缺陷數量和已處理的缺陷數量的比率
□ 已處理的被修復的缺陷數量和已處理的缺陷數量的比率
□ 重新被激活的已修復的缺陷數量
□ 通過測試找到的缺陷的統計
□ 不同語言版本缺陷數量的統計
□ 被報告存在缺陷的各功能統計
□ 處理缺陷的平均時間的統計
□ 關閉缺陷的平均時間的統計
□ 被處理缺陷的不同結論統計
3. 測試用例度量:
□ 運行測試用例數量和通過測試的用例數量之比
□ 不同產品開發階段該比率變化
□ 測試用例包括的范圍
□ 運行測試用例的頻率
□ 有測試用例的功能數量
4. 測試規范度量:
□ 測試規范數量和所有功能數量之比
□ 滿足撰寫要求的測試規范數量和所有測試規范數量之比
□ 必要的內容遺漏的比率
5. 測試過的系統數量:
□ 所支持的不同語言系統的總數與測試過的語言系統數量
□ 所支持系統的總數與測試過的系統數量:Windows、Linux、macOS、iOS、Android等其他系統平臺
6. 自動化測試度量:
□ 測試的可自動化程度
□ 能自動化的和實現自動化的比率
□ 運行通過的自動化腳本比率
□ 不同產品開發階段該比率變化
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.