摘 要:為了對軟件質量進行科學、定量的度量和評價,根據TOPSIS的價值函數模型,針對軟件的特點,提取了8個反映軟件質量的指標因素,使用均值法確定指標的權重,建立了一種基于TOPSIS的軟件系統質量綜合評價模型。實例分析證明,該方法克服了傳統評價指標的單一性缺陷,有利于確定影響軟件質量的因素及其影響程度,是一種綜合、有效評價軟件的質量的方法。
關鍵詞:TOPSIS; 軟件質量; 評價指標; 評價體系
中圖分類號:TN91134; TP311.5 文獻標識碼:A 文章編號:1004373X(2012)22008704
0 引 言
隨著軟件規模的日益復雜和龐大,軟件的開發與管理也日益復雜。軟件質量是軟件的生命,它直接影響著軟件的使用和維護。軟件質量評價的目的是為了直接支持開發并獲得能滿足用戶要求的軟件。其最終目標是保證產品能提供所要求的質量,即滿足用戶明確的和隱含的要求。如何評價一個軟件的質量,尤其是對軟件質量的量化度量,已成為軟件工程研究的主要內容之一[1]。選擇合適的指標體系并使其量化是做好軟件質量評估的關鍵。當然,由于軟件的評估具有其特有的規范和要求,其評估指標涉及面廣、不確定性因素較多、量化困難,至今還沒有統一的標準[2]。
逼近于理想值的排序方法(Technique for Order Preference bv Similarity to Ideal Solution,TOPSIS)是Hwang和Yoon于1981年提出的一種適用于根據多項指標、對多個方案進行比較選擇的分析方法。 TOPSIS法較之單項指標相互分析法,能集中反映總體情況、能綜合分析評價,具有普遍適用性[3]。在醫療質量評價、課程設置評價、顧客滿意程度評價、企業經濟效益評價、地區科技競爭力等方面都已得到廣泛而系統的應用。
本文針對軟件的特點,提取了8個反映軟件質量的因素,建立了軟件質量評價指標體系,在此基礎上建立了基于TOPSIS方法的軟件質量綜合評價模型。
1 軟件質量評價體系
如何評價一個軟件的質量,是決定最終獲得高質量軟件的重要問題。對小型程序,人們一般比較強調程序的正確性和效率。后來隨著軟件規模的增大和復雜度的提高,人們對軟件質量的看法發生了很大的變化。現在通常認為應該從以下幾個方面來評價軟件質量:
(1) 軟件需求是衡量軟件質量的基礎,不符合需求的軟件就不具備質量。設計的軟件應在功能、性能等方面都符合要求,并能可靠地運行。
(2) 軟件結構良好,易讀、易于理解,并易于修改、維護。
(3) 軟件系統具有友好的用戶界面,便于用戶使用。
(4) 軟件生存周期中各階段文檔齊全、規范,便于配置、管理。
ISO9126質量模型是一個著名的軟件質量模型,它描述了一個由兩部分組成的軟件產品質量模型[4]。一部分指定了內在質量和外在質量的6個特征,它們還可以再繼續分成更多的子特征。這些子特征在軟件作為計算機系統的一部分時會明顯地表現出來,并且會成為內在的軟件屬性的結果。而另一部分則指定了使用中的質量屬性,它們是與針對軟件產品質量6個屬性的用戶效果聯合在一起的。下面是ISO9126給出的軟件的6個質量特征[5]:
(1) 功能性(Functionality)。當軟件在指定條件下使用時,軟件產品滿足明確和隱含要求功能的能力。
(2) 可靠性(Reliability。軟件產品維持規定的性能級別的能力。
(3) 可使用性(Usability)。軟件產品在指定條件下使用時,軟件產品被理解、學習、使用和吸引用戶的能力。
(4) 效率(Efficiency)。在規定條件下,相對于所用資源的數量,軟件產品提供適當的性能的能力。
(5) 可維護性(Maintainability)。軟件產品可被修改的能力。修改可能包括修正、改進或軟件適應環境、需求和功能規格說明中的變化。
(6) 可移植性(Portability)。軟件產品從一種環境遷移到另外一種環境的能力。
這6個質量因素之間相互的關系中,有的是互利關系,有的則存在著競爭關系[6],見表1。
在進行大型的軟件項目開發中,往往需要采用許多新的、復雜的技術,投入巨額的資金,組織龐大的研制隊伍,以及持續相當長的研制時間。這些都會帶來種種難以預見的不確定性因素,造成失敗的風險。軟件的風險正日益受到人們的重視,成為評價軟件質量必不可少的關鍵因素之一[7]。此外,軟件的成本也是人們在評價軟件性價比的一個主要因素[8]。
因此,本文在建立基于TOPSIS方法的軟件系統質量綜合評價模型時,還增加了軟件開發成本和軟件使用時的風險這2個指標。最終確定以下8個質量特性為本軟件質量評價體系的指標:功能性、可靠性、可使用性、效率、可維護性、可移植性、成本和風險。
2 TOPSIS分析方法
TOPSIS是一種逼近理想解的排序方法。它的基本思想是:對歸一化后的原始數據矩陣,確定出一個理想方案和一個負理想方案,然后通過求出各方案與理想方案和負理想方案的距離,與理想方案最近且與負理想方案最遠的方案為最優方案[9]。TOPSIS法引進相對接近度的概念來考慮兩種距離。其中距離是指(加權以后的)歐幾里德距離。
TOPSIS分析方法的一般步驟是:
(1) 構造初始判斷矩陣R。設有m個目標(有限個目標),n個屬性,專家對其中第i個目標的第j個屬性的評估值為xij,則初始判斷矩陣R為:R=[rij] (2) 構造規范化決策矩陣V。由于各個指標的量綱可能不同,需要對決策矩陣進行歸一化處理:V=[xij]式中xij=rij/∑mi=1r2ij, i=1,2,…,m;j=1,2,…,n
(3) 構造加權規范化矩陣Z。獲取對屬性的信息權重矩陣,形成加權判斷矩陣: Z=x11x12…x1n
x21x22…x2n
………
xm1xm2…xmnw1
w2
wn
=f11f12…f1n
f21f22…f2n
………
fm1fm2…fmn (4) 確定理想方案和負理想方案。根據加權判斷矩陣獲取評估目標的正負理想解。當屬性值為效益型時,理想方案為每列中的最大值,負理想方案為每列中的最小值;當屬性值為成本型時,理想方案為每列中的最小值,負理想方案為每列中的最大值。具體表示如下:
正理想解:f*j=max(fij),j∈J*
min(fij),j∈J′,j=1,2,…,n 負理想解:fj′=min(fij),j∈J*
max(fij),j∈J′,j=1,2,…,n式中:J*為效益型指標;J′為成本型指標。
(5) 計算距離。分別計算與理想方案的距離Si*和與負理想方案的歐氏距離Si-,其中:S*i=∑mj=1(fij-f*j)2, j=1,2,…,n,
Si′=∑mj=1(fij-f′j)2, j=1,2,…,n (6) 計算各個目標的相對貼近度:C*i=Si′/(S*i+Si′), i=1,2,…,m (7) 依照相對貼近度的大小對目標進行排序,對軟件質量驚醒評價,形成決策依據。
3 基于TOPSIS的軟件質量評價方法及實證分析
3.1 原始數據的收集及整理
假設有n個軟件參加評價,這樣可得到一個n ×8的原始據矩陣,見表2。在綜合評價過程中,有些評價指標是效益型指標(即該指標值越高越好),有些指標值是成本型指標(即該指標值越低越好)。
3.2 確定具體指標權重
為確定軟件質量評價指標體系的指標權重,如前所述設計了8個指標要素,并設計了8張專家打分表。邀請5位專家依據打分標準對其打分.對指標體系的8個指標要素進行權重確定。
由專家打分最終確定基金績效評價指標體系8個要素的最優權重(5位專家的權重向量)為:
(0.20,0.19,0.14,0.11,0.16,0.06,0.09,0.05)
(0.19,0.18,0.13,0.10,0.18,0.09,0.08,0.05)
(0.18,0.17,0.15,0.10,0.18,0.08,0.08,0.06)
(0.21,0.18,0.15,0.11,0.16,0.07,0.07,0.05)
(0.19,0.19,0.13,0.12,0.15,0.09,0.06,0.07)
對5位專家所給的指標權重應用均值法,確定最優的指標要素權重.具體結果見表3。在確定指標權重時,假設8個要素的決策人給定的權向量是等權的。
從表2的指標體系中,可以看出,功能性、可靠性、可使用性和效率這4個評價指標占有權重達67.76%,說明軟件運行時的質量是評價軟件質量的重要因素。
3.3 建立原始數據矩陣R=57720 0005375
73518 0005535
35723 0007559
57321 00053373.4 對原始數據矩陣進行歸一化處理
3.7 計算各軟件的相對貼近度
計算出C1=0.625 5,C2=0.463 8,C3 =0.390 1,C4=0.573 9,可得:C1> C4> C2> C3。
結果說明,參與評價的4個軟件中,A1的質量最好,其次分別是A4,A2,A3的質量最差。
4 結 語
本文提出了一種基于TOPSIS方法的軟件質量的綜合評價指標體系。該方法為傳統軟件質量的評價方法做了進一步發展。在軟件質量效評價中應用專家打分法和TOPSIS方法。基于TOPSIS方法的軟件質量評價方法克服了傳統評價指標的單一性缺陷,有利于確定影響軟件質量的因素及其影響程度,從而為客觀、定量的的度量軟件質量提供了依據,是一種綜合、有效評價軟件的質量的方法。進一步確定這8個指標因素的二級指標及其權重,是該方法需要繼續深入研究的問題。
參 考 文 獻
[1] SOMMERVILLE Ian.軟件工程[M].6版.北京:機械工業出版社,2005.
[2] 張海藩.軟件工程導論[M].5版.北京:清華大學出版社,2003.
[3] 胡群,劉文云.基于層次分析法的SWOT方法改進與實例分析[J].情報理論與實踐,2009(3):6871.
[4] GILLIES A. Software quality: theory and management \[M\]. 2nd ed. \[S.l.\]: International Thomson Computer Press,1997.
[5] International Organisation for Standardization. ISO 9126 information technology software product evaluation quality characteristics and guidelines for their use \[S\]. \[S.l.\]: International Organisation for Standardization, 1992.
[6] PRESSMAN R S. Software engineering: a practitioner's approach \[M\]. 5th ed.北京:清華大學出版社,2008.
[7] 趙薔.軟件項目風險研究[J].計算機工程與設計,2007,28(14):33123315.
[8] GILLIES A. Modelling software quality in the commercial environment \[J\]. Software Quality Journal, 1992, 1: 175191.
[9] 盧方元.一種改進的TOPSIS法[J].統計與決策,2003(3):7980.
作者簡介:趙 薔 女,1971年出生,陜西咸陽人,碩士,副教授。主要研究方向為軟件工程、圖像處理。
李小林 男,1976年出生,內蒙古五原人,碩士,講師。主要研究方向為軟件理論、圖像處理。
趙 娟 女,1975年出生,四川成都人,碩士,講師。主要研究方向為軟件理論。