如何建立軟件度量體系?
概述
對軟件企業而言,度量常常被視為非常艱巨的工作,在軟件工程概念沒有得到廣泛應用的年代,度量甚至被看成是“不可能的任務”。經過軟件企業多年的實踐,目前軟件業界已經廣泛認可了建立和實施軟件度量體系的意義,“如果你不知道目前所處的位置,即便手中有一張地圖也不知道何去何從”,“有了度量,才能更好地管理”。質量大師戴明也說過“In God we trust, all others bring data”,即“我們相信上帝,但其他人都要用數據說話”。然而,許多軟件企業仍未能實施軟件度量體系,即使實施,也不能持續或高效地實施,它們面臨著許多問題和挑戰:
1. 度量體系中的指標缺乏統一規范的定義,指標的目的和意義不明確,導致不同人員對同一指標的不同理解;
2. 度量指標與商業目標無關,企業員工不了解度量指標的目的,為了收集數據而收集,敷衍應付了事;
3. 沒有定義度量數據的收集和存儲規程,更沒有嚴格地執行,導致收集的數據不完整,甚至是錯誤的;
4. 度量指標名目繁多,零散分布,度量圖表五彩繽紛,卻不能反映企業某一方面/總體狀況,更不能反映是否達成企業的商業目標;
5. 沒有提供反映企業過程和產品水平的基線(Baseline)/標桿(Benchmark),既不能評價研發過程水平,也不能幫助項目組準確估計后續項目。
針對這些軟件企業面臨的挑戰和問題,業界一些研究機構對許多實施軟件度量體系的公司進行了持續的研究,并提出了建立軟件度量體系的一些模型和方法,如美國國防部贊助的PSM組織提出的PSM方法(Practical Software & System Measurement)、美國卡內基梅隆大學的SEI(軟件工程協會)發布的CMMI(集成的能力成熟度模型)中的過程域MA(度量和分析),以及SEI提出的目標驅動度量方法(Goal-driven Measurement)。以下對CMMI中與度量分析相關的要求、PSM方法和目標驅動度量方法(GQIM方法)進行簡要介紹。
CMMI對于度量分析的要求
CMMI集合了業界的最佳實踐,其中與度量分析相關的過程域主要是MA(度量和分析)和OPP(組織過程績效)。它要求企業在建立和實施度量體系時,應達成這些目標:
1. 建立和實施度量體系(確定度量目標、定義度量指標、制定數據收集和存儲規程、制定數據分析規程)。
2. 報告度量結果(收集數據、分析數據、存儲度量數據和分析結果、報告度量結果)。
3. 建立組織過程基線(確定過程目標、建立和發布組織過程基線)。
PSM方法
PSM(Practical Software & System Measurement)方法顧名思義,是適用于開發軟件和系統產品的企業建立和實施度量體系的實踐方法。它是美國國防部贊助的PSM組織對許多軟件企業的度量實踐進行總結而得到的一種具有很強的可操作性的方法,是一種信息驅動的度量體系建立方法。
使用PSM方法建立軟件度量體系時,過程主要包括了四大步驟:
1. 識別項目關注的問題;
2. 將項目關注的問題歸類到七大公共問題領域,包括了進度、規模、過程績效、客戶滿意、資源和成本、產品質量、技術;
3. 將對應于七大公共問題領域的問題,對應到相關的度量領域;
4. 每個度量領域都對應于已經被證明有效的度量指標,從而可以得到項目關注的問題所對應的度量指標。
當項目識別出最為關注的問題之后,通過使用PMS組織提供的表格,即可得到有效的度量指標。下表是一個示例:
文章來源于領測軟件測試網 http://www.kjueaiud.com/