陳策,郭久武,趙春霞
(1.南京理工大學 計算機科學與技術學院,江蘇 南京290014;2.63961 部隊,北京100012;3.西安交通大學 電信學院,陜西 西安710049)
隨著武器裝備信息化程度的不斷提高,裝備中軟件所占的比重越來越大,裝備軟件的質量問題已成為各方關注的焦點[1]。為解決裝備軟件存在的質量問題,我國從2005年開始實施軍用軟件的定型測評制度,該項制度的實施促進了武器裝備軟件測試的深入開展,有效地推動了軍用武器裝備軟件的工程化。但目前,裝備軟件定型測評主要停留在查找軟件問題的測試上,沒有形成對軟件質量評價的有效方法。
裝備軟件質量評價是典型的多屬性決策問題,對該問題研究較多的是層次分析法(AHP)、模糊綜合評價法以及灰色聚類綜合評價方法。AHP 直接使用各質量指標的權重值,利用線性加權的方式得到軟件的綜合評分[4]。模糊評價和灰色聚類評價方法考慮了軟件質量的模糊特性,通過建立評價集,得到每個指標的模糊評價矩陣,然后采用與AHP 相同的方法得到所有指標的綜合評價[5-7]。這3 種方法都沒有直接利用評價樣本對象之間的比較信息,而且當某些指標的分值過高,而其它指標分值過低時,會產生掩蓋效應。消去選擇輪換法(ELECTRE)是解決有限方案多屬性決策問題的一種有效分析方法,它基于和諧檢驗和非和諧檢驗,通過淘汰和選擇輪換算法,可以得到評價對象之間的超序關系,從而確定出各對象之間的優劣順序[9-10]。ELECTRE 克服了被評價對象在某些指標上過高的值會彌補其它指標過低值的不足,更符合實際情況。
將AHP 與ELECTRE 相結合,利用判斷矩陣構造一致性矩陣的方法改進了AHP,不再需要進行一致性檢驗就可以確定出各指標的權重;在ELECTRE方法中引入聯合優勢矩陣,通過該矩陣完成了超序關系圖的繪制,在超序關系圖中搜索得到了評價對象的綜合排序。通過一個具體的裝備軟件質量評優實例,說明了該方法的有效性。
質量是由許多特性組成的,因此,質量的概念通常用一些復合特性及其關聯的模型來描述。在GJB5236[2]和ISO/IEC 9126[3]中都將軟件質量用質量因素、質量準則和質量度量的分層結構來表示,如圖1所示。質量因素是軟件高層的外部屬性,它是從用戶角度看到的質量的關鍵特性。質量因素由于層次過高而沒有意義或無法測量,因此質量因素被分解為一些低層次的屬性,稱為質量準則。質量準則仍然無法測量,被繼續分解為一系列可以測量的屬性,即質量度量。

圖1 軟件質量模型的分層結構Fig.1 Hierachy model of software quality
處于最下層的質量度量構成的指標集合為

式中:M 為度量指標集合;mk為第k 個度量指標。
對質量度量指標進行評價,評價的模型定義為

式中:Rijl為第i 個質量因素第j 個質量準則的第l 個度量的評價值;G 為度量值到評價值的映射函數,通常采取規范化的方式將度量指標映射到[0,1]區間。
利用度量指標的評價值計算質量準則值,計算模型的定義為

式中:vij為第i 個質量因素的第j 個質量準則的評價值;Fij為度量指標評價值到第i 個質量因素第j 個質量準則的映射函數,一般采取質量度量指標權重組合的映射函數

由質量準則的評價結果可獲得質量因素的評價結果,其計算模型的定義為

式中:Vi為第i 個質量因素的評價結果;Fi為質量準則評價值到第i 個質量因素評價值的映射函數。
當得到質量因素的評價集V 之后,也可以繼續采用類似于(5)式的方式構造軟件質量的綜合評價值。
文獻[2]將裝備軟件質量分為功能性、可靠性、效率、易用性、維護性、可移植性6 個質量因素,這6個質量因素被分為27 個質量準則,但該標準中并沒有定義具體的度量指標值。在裝備軟件的定型測評實踐中,主要是通過文檔審查、代碼靜態分析、動態測試等手段實現對軟件的測試。為了能完成對裝備軟件質量的有效評價,在測試過程中,收集各類測試數據,如需求描述的功能數、功能實現數、功能正確數、功能錯誤數、對外接口項數、代碼行數、注釋行數、圈復雜度、扇入扇出數等,將這些數據作為度量參數,組合形成度量指標,然后由其組成質量準則和質量因素,實現對裝備軟件的質量評價。
為了能與軟件測試有效銜接,在開展裝備軟件質量評優活動中,直接將裝備軟件的質量評價模型確定為質量屬性到質量度量的兩層結構。定義7 類評價指標,分別為f1完備性、f2準確性、f3效率、f4可靠性,f5可維護性,f6可移植性、f7易用性。每類評價指標都由若干度量指標組成,如完備性f1可以用完成的功能數占研制總要求功能數的比例、對外互聯互通接口占研制總要求對外接口要求的比例以及軟件文檔數量與要求的文檔數量比值等來表示;準確性可以用軟件計算精度與研制總要求規定的計算精度的差距、準確實現的功能占所有功能的比例等來表示。每個度量值都通過嚴格控制的軟件定型測評獲得,是對軟件的客觀度量,并且盡量保證正交。當由度量值計算質量屬性時,用固定的模型直接求出結果值,這不僅有利于質量屬性值計算標準的統一,又簡化了計算。在質量屬性值得出后,不能再簡單地用線性加權的形式對軟件進行綜合評價,這主要是由于各個質量屬性之間具有一定的相關性,并且每類軟件對各個質量屬性的要求也不相同,因此在質量屬性層采取ELECTRE 進行多屬性決策。
在對軟件質量屬性的多準則決策中,需要確定每個質量屬性的權重,從而實現對軟件質量的綜合評判。ELECTRE 沒有給出權重確定的方法,但可以借鑒AHP 構造兩兩判斷矩陣的方法來確定各質量屬性的權重值。其基本思路是由專家對各個質量屬性進行兩兩對比,確定兩兩屬性之間的重要程度,得到一個屬性之間的兩兩判斷矩陣,再通過求取判斷矩陣最大特征根所對應的特征向量,以特征向量作為各質量屬性的權重。但由AHP 確定指標權重時,必須進行一致性檢驗,當檢驗未通過時,需要憑大致的估計重新調整判斷矩陣,具有較大的盲目性。
AHP 在確定2 個指標間的重要程度時一般用9分位的比例標度[4]。對任何一對指標(pi,pj)都可以形成一個判斷值aij(i,j =1,2…,p),所有aij(i,j=1,2,…,p)構成一個p 維p 列的判斷矩陣A.
顯然,判斷矩陣A 具有以下性質:1)aij>0;2)aij=1/aji;3)aii=1.
定義1 設A 為n 階矩陣,aij(i =1,2,…,n;j=1,2,…,n)為矩陣A 中的元素,若對任意的i,j,存在元素傳遞性aij×ajk=a,則矩陣A 為一致性矩陣。
對于直接由專家兩兩比較形成的判斷矩陣A并不是一致性矩陣,但經過如下轉換后形成的矩陣B 則是一致性矩陣。

式中:bij為矩陣B 的第i 行第j 列的元素;矩陣B 稱為A 的擬優傳遞矩陣。
B 為一致性矩陣的證明如下:

可以證明矩陣B 的最大特征根λmax即為矩陣的階數n,求取其所對應的特征向量W 并將其規范化處理后便得到各評價指標的權重分配。方法為:
首先計算矩陣B 每一行元素的積

然后,求取各行Mi的n 次方根作為特征向量W的第i 個分量

最后對w'i進行規范化處理得到指標pi的權重wi值,使得

裝備軟件質量評優問題可表示為Q =(M,P,G,A,U),其中,M ={mi|i =1,2,…,n}為待評優的軟件對象集;P={pj|j =1,2,…,s}為評價指標集;G={gj|j=1,2,…,s}為評價指標函數集,?m∈M,gj(m)為被評價對象m 在指標pj上的評價值;A={aij|i=1,2,…,n;j =1,2,…,s}為n ×s 矩陣,被稱為決策矩陣,元素aij表示第i 個被評價對象第j個指標的評價值;U={ul|l=1,2,…,h}表示決策者的偏好結構集。
定義2 對于被評價對象mk和ml,如果在某項指標pj上,mk的評分值akj不劣于ml的評分值alj,記為(mk?ml)pj,mk的評分值akj劣于ml的評分值alj,記為(mk?ml)pj.
對于值越大越好的效益型指標當akj≥alj時,(mk?ml)pj;當akj<alj時,(mk?ml)pj.
定義3 Ckl={j|(mk?ml)pj},稱Ckl為被評價對象mk對ml的和諧集,即對象mk的指標屬性pj分量不劣于ml對應分量的標號集合。對效益型指標,即Ckl={j|akj≥alj}.
定義4 Dkl={j|(mk?ml)pj},稱Dkl為被評價對象mk對ml的非和諧集,即對象mk的指標屬性pj分量劣于ml對應分量的標號集合。對效益型指標,即Dkl={j|akj<alj}.
定義5 αkl為被評價對象mk對ml的和諧指數,計算方法為

式中wj為指標pj對應的權值。
αkl將和諧集中所有指標標號對應的權值相加,由于所以0≤αkl≤1,αkl越大反映了mk優于ml的可能性越大,αkl=0 則mk不可能優于ml,αkl=1 則mk一定優于ml.
定義6 βkl為被評價對象mk對ml的非和諧指數,計算方法為

式中,分子為非和諧集中所對應的兩評價對象的加權評分值之差中的絕對值最大值,分母為所有指標集中所對應的兩評價對象的加權評分值之差中的絕對值最大值。
由于Dkl?(Dkl∪Ckl),故0≤βkl≤1,βkl為加權指標值之間的差距大小,反映了mk劣于ml的程度,βkl越小則意味者mk劣于ml的程度越小。
雖然和諧集和非和諧集有互補性,但和諧指數αkl只包含了權重信息,而非和諧指數βkl不僅包含了權重信息,還包含了被評價對象指標值的信息,所以和諧指數αkl和非和諧指數βkl并無互補性。
定義7 利用和諧指數可以構造和諧矩陣

定義一個最小和諧指數α0,當αkl≥α0時,則認為αkl通過了和諧性檢驗。定義8 和諧優勢矩陣

當αkl通過和諧性檢驗時(即αkl≥α0),fkl=1,否則fkl=0.
定義9 利用非和諧指數可以構造非和諧矩陣

定義一個最大非和諧指數β0,當βkl≤β0時,則認為βkl通過了非和諧性檢驗。
定義10 非和諧優勢矩陣

當βkl通過了非和諧性檢驗時(即βkl≤β0),gkl=1,否則gkl=0.
定義11 和諧優勢矩陣F 和非和諧優勢矩陣G 的邏輯與形成矩陣E,將E 稱為聯合優勢矩陣

式中:ekl=fkl×gkl,僅當fkl=1 且gkl=1,ekl=1;否則ekl=0.
定義12 對于被評價對象集合M 中的任意對象mk與ml,如果其對應的聯合優勢矩陣E 中元素ekl=1,則mk超序于ml,記為mk?ml.
超序關系實際上是定義在集合M 上的偏序關系,具有以下性質:1)自反性:mk?mk;2)反對稱性:mk?ml,ml?mk?ml≡mk;3)傳遞性:mk?ml,ml?mh?mk?mh.
二元超序關系對mk?ml可以用有向圖來表示,將mk繪制在箭線的起始端,將ml繪制在箭線的終止端,評價對象集合M 中的所有超序關系對,形成一個超序關系圖。然后,可以在超序關系圖中搜索得到所有的超序關系鏈,即超序關系鏈集。在超序關系鏈集L 中,如果某個鏈li可由另外一個鏈lj推導得到,則鏈lj被稱為鏈li推導鏈。將所有推導鏈從超序關系鏈集中刪除,得到一個最約簡超序關系鏈集,其中的每個超序關系鏈都是評價對象集合M的一個排序。
現有某類裝備的6 個型號軟件,其質量屬性的評分值如表1所示。

表1 裝備軟件質量屬性評分值Tab.1 Quality attribute of equipment software
對質量屬性f1~f7,征詢專家意見,利用9 標度法,構造兩兩比較判斷矩陣

求得A 的最大實特征根λmax為7.872 5.λmax對應的特征向量經歸一化后得權重向量

從權重向量可以看出,各指標的重要性排序依次為:可靠性、效率、準確性、易用性、完備性、可維護性、可移植性。
計算一致性指標

其中n 為判斷矩陣A 的階數。
階數為7 的平均隨機一致性指標RI =1.36,求取判斷矩陣A 的隨機一致性比例

由于0.106 9 >0.1,因此判斷矩陣A 未通過一致性檢驗,此時AHP 的作法是需要重新調整判斷矩陣,這具有一定的盲目性。求取判斷矩陣A 的擬優傳遞矩陣
矩陣B 的最大實特征根λmax為7,其一致性指標CI為0,因此矩陣B 是一致的。λmax對應的特征向量經歸一化后得到權重向量

比較WB與WA,2 者得到的各指標重要性排序是一致的。
利用(10)式計算出和諧矩陣

利用(11)式計算出非和諧矩陣

取最小和諧指數α0為0.5,最大非和諧指數β0也為0.5 時,聯合優勢矩陣

由聯合優勢矩陣繪制出超序關系圖,如圖2所示。

圖2 α0 =0.5,β0 =0.5 時超序關系圖Fig.2 Outranking relation graph when α0 =0.5,β0 =0.5
最約簡超序關系鏈集

將該超序鏈用圖3繪出,可以看出,質量高的軟件包括m4和m6,但這2 者之間并無可比性;m5與m1、m3、m4無可比性;m2與m3也無可比性。
通過改變α0和β0,可以進一步調整各評價對象間的可比性。將最小和諧指數α0改為0.4,最大非和諧指數β0改為0.7 后,則得到圖4所示的超序關系圖,軟件質量排序結果為m6m5m4m1m2m3.

圖3 α0 =0.5,β0 =0.5 時超序關系鏈Fig.3 Outranking relation chain when α0 =0.5,β0 =0.5

圖4 α0 =0.4,β0 =0.7 時超序關系圖Fig.4 Outranking relation chain when α0 =0.4,β0 =0.7
為了與傳統AHP 進行比較,計算出由權重WB和評分值矩陣P 得到的各軟件綜合評分值為(0.83,0.78,0.76,0.87,0.85,0.9),該綜合評分結果的排序為m6m4m5m1m2m3.與本文介紹的方法不同之處在于軟件m4與軟件m5的排列順序不同。分析如下:
1)由于β45=1,無論如何調整β0(β0<1)都不能使非和諧優勢矩陣G 中的g45=1,也就不能使超序關系m4?m5成立。從這一點可以看出,傳統AHP 評價方法得到的結果,對軟件質量的排序,誤判的風險比較大。
2)計算軟件m4與m5質量屬性加權評分值之差得到(- 0.003 7,0.045 7,0.043 2,- 0.071 2,-0.000 8,-0.000 2,-0.003 3).從計算結果看出,軟件m4除準確性f2和效率f3比軟件m5高以外,其余均比m5要差。而且,對于最為重要的質量屬性可靠性f4,軟件m5與軟件m4相比優勢較為明顯。從決策者的角度來講,更偏好讓m5優于m4.
3)本文的方法并不用各質量屬性評價值的簡單想加得到綜合評價值,而是在各質量屬性之間權衡比較來決定評價對象的優劣,因此有利于消除各質量屬性在評分值上的掩蓋效應。
4)本文的方法可以通過調整和諧指數和非和諧指數,得到不同風險情況下的評價對象排序關系鏈,為決策者表達自己的意愿提供了手段,而傳統的AHP 方法是不具有該特性的。
研究了軟件質量的評價模型,提出了一種將AHP 和ELECTRE 相結合進行裝備軟件質量評價的新方法。改進的AHP 方法避免了一致性檢驗不通過時人為調整判斷矩陣的盲目性,ELECTRE 不僅消除了傳統基于AHP 綜合評價方法的掩蓋效應,同時,也為決策者提供了表達自己意愿的手段。在評價實例中,利用本文提出的方法對某類裝備的多個型號軟件進行了質量評優,得到的評優結果與AHP 方法相比,更能準確地反映裝備軟件質量的優劣,為軍方開展裝備軟件質量評優活動提供了科學的依據。
References)
[1]張永強,陳永革,姚立新.軍用軟件的測試與實踐方法[J].火力與指揮控制,2006,31(9):91 -93.ZHANG Yong-qiang,CHEN Yong-ge,YAO Li-xin.Testing and practice for military software[J].Fire Control and Command Control,2006,31(9):91 -93.(in Chinese)
[2]GJB 5236—2004.軍用軟件質量度量[S].北京:中國人民解放軍總裝備部,2004.GJB 5236—2004.Army software quality metric[S].Beijing:Equipment Department Headqurters of PLA,2004.(in Chinese)
[3]ISO/IEC 9126-1—2001.Software engineering-product qualitypart 1:quality model[S].ISO and IEC,2001.
[4]吳炎,杜棟.AHP 評價軟件設計與實證研究[J].計算機系統應用,2008,17(11):34 -36.WU Yan,DU Dong.AHP evaluation software design and empirical research[J].Computer Systems & Applications,2008,17(11):34 -36.(in Chinese)
[5]石柱,何新貴.模糊軟件質量綜合評價[J].系統工程與電子技術,2002,24(12):121 -122.SHI Zhu,HE Xin-gui.Fuzzy software quality synthesis evaluation software[J].Systems Engineering and Electronics,2002,24(12):121 -122.(in Chinese)
[6]周津慧,王宗,楊宗奎,等.基于模糊評價方法的軟件質量評價究[J].系統工程與電了技術,2004,26(7):988 -991.ZHOU Jin-hui,WANG Zong,YANG Zong-kui,et al.Research on software quality evaluation based on fuzzy method[J].Systems Engineering and Electronics,2004,26(7):988-991.(in Chinese)
[7]羅佑新,熊國華,曾經梁,等.計算機軟件質量綜合評價的灰色聚類模型及其應用[J].計算機工程與應用,2003,24(8):84-85.LUO You-xin,XIONG Guo-hua,ZENG Jing-liang,et al.Grey clustering model of compositive evaluation and it's application in computer software quality[J].Computer Engineering and Application,2003,24 (8):84 -85.(in Chinese)
[8]劉渝妍.基于灰色定權聚類的軟件質量評價模型研究[J].西南大學學報,2008,30(5):176 -180.LIU Yu-yan.Research research of a software quality evaluation model based on grey fixed weight cluster[J].Journal of Southest University:Natural Science Edition,2008,30(5):176 - 180.(in Chinese)
[9]De Boer L Van der Wegen L,Telgen J.Outranking methods in support of supplier selection[J].Journal of Purchasing and Supply Management,1998,4:109 -118.
[10]Roy B.The outranking approach and foundations of ELECTRE methods[J].Theory and Decision,1991,(31):49 -73.