軟件產品度量用于對軟件產品進行評價,并在此基礎之上推進產品設計、產品制造和產品服務優化。軟件產品的度量實質上是軟件質量的度量,而軟件的質量度量與其質量的周期密切相關,如圖5-8所示:

圖5-8 軟件質量的生命周期及其度量
軟件質量度量模型
軟件產品的度量主要針對作為軟件開發成果的軟件產品的質量而言,獨立于其過程。軟件的質量由一系列質量要素組成,每一個質量要素又由一些衡量標準組成,每個衡量標準又由一些量度標準加以定量刻劃。質量度量貫穿于軟件工程的全過程以及軟件交付之后,在軟件交付之前的度量主要包括程序復雜性、模塊的有效性和總的程序規模,在軟件交付之后的度量則主要包括殘存的缺陷數和系統的可維護性方面。一般情況下,可以將軟件質量特性定義成分層模型。勃姆(Barry W. Boehm)在《軟件風險管理》(Software Risk Management)中第一次提出了軟件質量度量的層次模型。而麥考爾(McCall)等人將軟件質量分解至能夠度量的層次,提出FCM 3層模型(參見表5-13):軟件質量要素(factor)、衡量標準(criteria)和量度標準(metrics),包括11個標準,分為產品操作(product operation)、產品修正(product revision)和產品轉移(product transition)。ISO 9126將軟件質量總結為6大特性,每個特性包括一系列副特性,其軟件質量模型包括3層,即高層:軟件質量需求評價準則(SQRC);中層:軟件質量設計評價準則(SQDC);低層:軟件質量度量評價準則(SQMC)。
表5-13 軟件質量度量FCM模型
層 級 | 名 稱 | 內 容 |
第一層 | 質量要素:描述和評價軟件質量的一組屬性 | 功能性、可靠性、易用性、效率性、可維護性、可移植性等質量特性以及將質量特性細化產生的副特性 |
第二層 | 衡量標準: 衡量標準的組合反映某一軟件質量要素 | 精確性、穩健性、安全性、通信有效性、處理有效性、設備有效性、可操作性、培訓性、完備性、一致性、可追蹤性、可見性、硬件系統無關性、軟件系統無關性、可擴充性、公用性、模塊性、清晰性、自描述性、簡單性、結構性、文件完備性等 |
第三層 | 量度標準: 可由各使用單位自定義 |
根據軟件的需求分析、概要設計、詳細設計、編碼、測試、確認、維護與使用等階段,針對每一個階段制定問卷表,以此實現軟件開發過程的質量度量 |
凱悅(Lawrence E. Hyatt)和羅森貝克(Linda H. Rosenberg)在《識別項目風險以及評價軟件質量的軟件質量模型與度量》(A Software Quality Model and Metrics for Identifying Project Risks and Assessing Software Quality)中比較了這3種最常用的軟件質量模型,其基本情況如表5-14所示。
文章來源于領測軟件測試網 http://www.kjueaiud.com/