關鍵字:軟件質量、質量管理
7.2.2 度量元
度量元簡單地描述為軟件度量的內容,再確切地可以定義為“一個軟件企業要對它的產品、項目或者過程進行量化管理時,需要關注的信息對象基本屬性的描述”。度量元根據度量數據的獲得方式劃分為基本度量元(直接度量元)和派生度量元(間接度量元)兩種;径攘吭臄祿芍苯佣攘揩@得,派生度量元的數據來自其他數據,通常由兩個或多個基本度量組合而來。
軟件工程權威Barry Boehm概括了軟件開發活動中最主要的10個軟件度量元,準確地描述了使用傳統的軟件過程產生的某些基本的經濟學關系。簡單描述如下:
。1)在交付之后找到并修復一個軟件問題的成本,是在設計早期找到并修復該問題的成本的100倍,這是過程改進的理論基礎。
。2)軟件開發進度至多能夠壓縮25%,主要是因為縮減進度需要增加人力資源,從而增加管理開銷。
。3)在開發中,每花費1美元,在維護中就得花費2美元,因此要注意度量改進維護的度量元。
。4)軟件的開發成本和維護成本主要是源代碼行數的函數。這是因為采用定制軟件,缺乏商業構件和缺乏重用的結果。
。5)人與人的不同導致了軟件生產率的最大差異,雇用優秀人才是傳統的至理名言。
。6)在總體上,軟件和硬件成本之比仍然在繼續上升:在1955年是15:85;1985年是85:15。這說明對軟件的需求、應用范圍及其復雜性幾乎沒有限制地持續增長。
。7)只有15%的軟件開發工作是專用于編碼的,因此要重視需求管理、設計、測試、計劃、項目控制、變更管理和工具開發等。
。8)隨著軟件系統規模的增大,其成本成倍增長,呈現1:3:9的關系,稱之為軟件產業的非規模經濟現象。
。9)走查可以發現60%的邏輯缺陷和風格缺陷,但很難發現諸如資源爭奪、性能瓶頸、控制沖突問題。
。10)20%的貢獻者做出了80%的貢獻。
在日常的開發管理過程中,我們建議使用的基本度量元包括如下一些方面內容:
。1)進度性能度量元(里程碑進展、工作包完成情況等)。
。2)成本性能度量元(實際與計劃的對照,用來衡量成本的不一致情況)。
。3)工作量性能度量元(人時數、人月數實際與計劃的對照,用來衡量工作量的不一致情況)。
。4)需求管理度量元(需求追蹤矩陣中增加的、刪除的、修改的需求數量,衡量需求易變性)。
。5)程序規模度量元(源碼行數、頁數,實際與計劃的對照)。
。6)測試性能度量元(需要執行的測試用例數、已經執行通過的測試用例數)。
。7)度量度量元(未解決的問題、解決完成的問題、缺陷數、嚴重缺陷數、缺陷密度、缺陷來源)。
。8)過程性能度量元(完成的任務、行動項數)。
。9)計算機資源利用情況度量元(內存占有量、CPU占有量)。
。10)管理計劃項目過程的性能度量元(對照實際進展做估計、重計劃、項目總結數據)。
派生度量元通常表示為比率、復合指標或其他累計度量,有更加量化的可靠性和有意義的解釋?赡苁褂玫呐缮攘吭缦拢
。1)掙值(Earned Value,EV)。
。2)進度性能指標(Schedule Performance Index,SPI)。
。3)缺陷密度(Defect Density),發現的缺陷數目與規模的比值。
。4)同行評審覆蓋率(Peer Review Coverage)。
。5)測試或驗證覆蓋率(Test or Verification Coverage)。
。6)可靠性度量(Reliability Measures),如平均故障間隔時間(Mean Time to Failure)等。
。7)質量度量(Quality Measures),如嚴重缺陷數/總缺陷數(Number of Defects by Severity/Total Number of Defects)等。
以上這些度量元中,對過程改進和開發最為關鍵的基本度量元包括項目的規模、投入的成本、工作量、項目進度,這些控制量的期望值及其閾值。而衡量軟件質量的度量元,除這些外,還包括了生命周期不同階段的缺陷數據及各種分布情況,確保缺陷被準確地記錄和跟蹤,并客觀地依據缺陷狀況對軟件過程和最終發布進行決策。
文章來源于領測軟件測試網 http://www.kjueaiud.com/