王曉強,王 冬
河南科技大學 機電工程學院,河南 洛陽 471003
軟件的需求分析在軟件的開發(fā)過程中起著舉足輕重的作用,而需求權(quán)重是量化各項顧客需求的相對重要程度,用于指導軟件的健壯設(shè)計。在軟件開發(fā)過程中,隨著客戶對軟件的功能要求、性能要求和運行要求等的不斷提高,使得顧客需求過于復雜,此時運用層次分析法(Analytic Hierarchy Process,AHP)與模糊層次分析法(Fuzzy Analytical Hierarchy Process,F(xiàn)AHP)求解顧客需求權(quán)重就會與真實顧客需求重要度產(chǎn)生較大偏差。因此,為了開發(fā)出令顧客滿意的軟件產(chǎn)品,必須用正確且行之有效的方法對需求權(quán)重進行求解和驗證。
目前,國內(nèi)外學者對需求權(quán)重的求解進行了相關(guān)理論的研究,運用的方法主要包括層次分析法(AHP)、模糊層次分析法(FAHP)、網(wǎng)絡(luò)分析法(Analytic Network Process,ANP)等。王曉暾等[1]通過融合層次分析法與粗糙集理論提出了粗糙數(shù)和粗糙區(qū)間兩個新概念,用粗糙數(shù)和粗糙邊界區(qū)間來解決顧客需求的含糊性和不確定性。李磊等[2]提出了一種基于模糊層次分析法的多目標決策問題的解決方案,應(yīng)用基于三角模糊數(shù)的模糊層次分析法來求各層次指標權(quán)重。周黎莎等[3]將網(wǎng)絡(luò)層次分析法和模糊綜合評價法相結(jié)合,對電力企業(yè)客戶滿意度進行綜合評價,并進行實例分析,驗證該評價模型的有效性和科學性。周曉光等[4]采用模糊優(yōu)先規(guī)劃方法確定了各指標的權(quán)重,進而通過網(wǎng)絡(luò)層次分析法計算各指標的綜合權(quán)重。Yang Shaomei[5]提出了一種改進的模糊層次分析法評估風險的方法,該方法充分利用了三標度法和模糊一致矩陣的優(yōu)點,更加適合于分析多目標決策問題。Al-Hawari T[6]等將網(wǎng)絡(luò)層次分析法應(yīng)用到設(shè)施規(guī)劃上,通過建立網(wǎng)絡(luò)結(jié)構(gòu)來解決各元素和集群以及它們之間的相互作用,最終確定各方案的優(yōu)先級別。蘭繼斌等[7]提出用模糊一致判斷矩陣確定方案權(quán)重是不完善的,必須考慮參數(shù)β的選擇,參數(shù)β是隱藏在決策過程中決策者的偏好及決策者的分辨能力,同時給出了從傳統(tǒng)層次分析法標度到模糊層次分析法標度的轉(zhuǎn)換方法。
AHP與FAHP方法適合于解決系統(tǒng)層次結(jié)構(gòu)中元素的權(quán)重問題,但其遞階層次結(jié)構(gòu)限制了它在復雜需求權(quán)重決策中的應(yīng)用;網(wǎng)絡(luò)分析法適用于需求元素關(guān)系比較復雜的權(quán)重分析。但網(wǎng)絡(luò)分析法在判斷矩陣求解的一致性和需求元素相對重要度評價的模糊性等方面仍需進一步的深入研究。
本文針對軟件開發(fā)過程中顧客需求關(guān)系較復雜的權(quán)重分析問題,運用網(wǎng)絡(luò)分析法與梯形模糊數(shù)相結(jié)合的方法,建立加權(quán)極限超矩陣,分析需求元素的混合權(quán)重,旨在解決各指標層內(nèi)各元素的相互作用以及指標評價的模糊性所造成權(quán)重嚴重偏差問題,并通過實例驗證該方法的可行性。
模糊網(wǎng)絡(luò)分析法是模糊數(shù)學與網(wǎng)絡(luò)分析法相結(jié)合的一種方法,主要解決模糊層次分析法和網(wǎng)絡(luò)分析法中未能解決的問題。梯形模糊數(shù)主要解決邊界值以及隸屬度問題;網(wǎng)絡(luò)分析法主要建立網(wǎng)絡(luò)圖,解決不同元素組中的元素的相互聯(lián)系。模糊網(wǎng)絡(luò)層次分析法為復雜系統(tǒng)中權(quán)重的求解提供了依據(jù)。
網(wǎng)絡(luò)分析法是在層次分析法的基礎(chǔ)上,綜合考慮各元素組以及組內(nèi)元素間的相互影響,建立需求元素間的網(wǎng)絡(luò)結(jié)構(gòu)圖,采用超矩陣對需求元素的混合權(quán)重進行求解。
ANP結(jié)構(gòu)圖(如圖1)由控制層與網(wǎng)絡(luò)層組成[7-8]??刂茖又械臏蕜tR1,R2,…,Rm相互獨立;元素組件(C1,C2,…,CN)構(gòu)成網(wǎng)絡(luò)層,其中元素組Cj有元素ej1,ej2,…,ejnj,不同組件中的元素間存在內(nèi)部依賴和外部依賴,這些依賴就構(gòu)成了反饋網(wǎng)絡(luò),其中箭頭所指向的因素影響著箭尾的因素。
圖1 ANP結(jié)構(gòu)圖
在層次分析法中,通常采用T.L.Saaty建立的1~9標度方法來量化兩因素的相對重要度[10]。但在實際中進行兩兩比較判斷時,由于人的主觀性以及各個因素的模糊性,各個因素的相對重要度用一個確定的實數(shù)來表示存在著不合理性。針對這個問題,一些學者運用模糊區(qū)間來界定各因素相對重要度的上下限,本文利用梯形模糊數(shù)rij=(a,b,c,d)來定量地表示元素ei比ej的重要程度。通過對各因素進行模糊判斷,得到相應(yīng)的梯形模糊一致互補判斷矩陣。
假設(shè)M是論域U中的任意一個梯形模糊數(shù),梯形模糊數(shù)Fuzzy集對應(yīng)的隸屬函數(shù)定義為:
其中 a、b、c、d 是隸屬函數(shù)的參數(shù),且 a≤b≤c≤d,a與d分別是模糊數(shù)的上界和下界,且區(qū)間[b,c]是模糊數(shù)的中間值,參數(shù)a、b、c、d根據(jù)模糊網(wǎng)絡(luò)分析法標度取值。rij可以被四元實數(shù)組(a,b,c,d)所確定。
假設(shè)梯形模糊數(shù)eij=(aij,bij,cij,dij),ekh=(akh,bkh,ckh,dkh),則eij與ekh的代數(shù)運算為:
eij⊕ekh=(aij+akh,bij+bkh,cij+ckh,dij+dkh)
eij?ekh=(aij×akh,bij×bkh,cij×ckh,dij×dkh)
λ? ekh=(λaij,λbij,λcij,λdij)
其中aij>0,bij>0,cij>0,dij>0,akh>0,bkh>0,ckh>0,dkh>0。
網(wǎng)絡(luò)分析法是利用超矩陣求解顧客需求混合權(quán)重的一種方法,其求解過程的復雜性使得網(wǎng)絡(luò)分析法在很多領(lǐng)域中較難得到應(yīng)用,而判斷矩陣的一致性檢驗是網(wǎng)絡(luò)分析法中較繁瑣的一步驗證,研究利用一致性矩陣代替判斷矩陣的一致性檢驗,可以在很大程度上降低求解過程的復雜性。
定理1若模糊互補矩陣R=(rij)n×n滿足:?i,j,k=1,2,…,n,有rij=rik-rjk+0.5,則稱模糊互補矩陣R是模糊一致互補判斷矩陣[11]。
文獻[12]有結(jié)論(1)和結(jié)論(2):
結(jié)論1
結(jié)論2 |wi-wj|≤1/(n-1)
由結(jié)論1、2可知,當n較大時,權(quán)重之間的偏差會很小,不利于確定各項需求的重要度。
定義1設(shè)模糊互補判斷矩陣R=(rij)n×n,則R是模糊一致判斷矩陣的充要條件存在n維正的歸一化向量w=(w1,w2,…,wn)T及 β(β>1),使得 ?i,j都有 rij=logβwi-logβwj+0.5 成立[7]。
其中權(quán)重公式wi為:
假設(shè) wi(β)>wk(β),則:
式中
根據(jù)公式(3)可知 wi(β)-wk(β)是關(guān)于 β 的增函數(shù)。故β的變化可以調(diào)節(jié)權(quán)重值的大小,而不會改變各項需求的排序。參數(shù)β起著調(diào)節(jié)權(quán)重分辨率的作用。
定義2若A=(aij)n×n是一致的正互反判斷矩陣,則R=(rij(β))n×n(β≥81)是模糊一致互補判斷矩陣,這里rij(β)=logβaij+0.5(β ≥81)[7]。
通過上述的定義、結(jié)論和定理,定理1給出了模糊一致互補判斷矩陣,結(jié)論1、2說明了定理1在n很大時,權(quán)重值并不能反映需求的相對重要度,這樣引出模糊一致互補判斷矩陣的新定義1、2,其中β值起著調(diào)節(jié)權(quán)重分辨率的作用。
根據(jù)定義2,調(diào)節(jié)β值將1~9標度轉(zhuǎn)換為模糊網(wǎng)絡(luò)分析法標度,當β=300時,獲得表1模糊網(wǎng)絡(luò)分析法標度。
根據(jù)模糊互補一致性矩陣的改進方法,建立改進的模糊互補一致性矩陣R。在Ri控制準則下,以Cj中的元素ejl為次準則,對其他元素組Ci中的元素按其對ejl的影響大小進行間接優(yōu)勢度比較。其中rij為梯形模糊判斷向量,設(shè)aij為向量rij中的元素,則有0≤aij≤1,aii=1,aij+aji=1,且向量 rij滿足 rij=rik-rjk+0.5。rij表示元素ei比元素ej重要的隸屬度,rij=(0.5,0.5,0.5,0.5)表示元素ei與元素ej同等重要。
對元素組Ci的模糊一致互補判斷矩陣R進行求解,確定元素的排序向量。由于判斷矩陣R本身就滿足一致性指標,因此可以直接計算eij的綜合模糊數(shù)Deij:
定理2設(shè)M=(a1,b1,c1,d1),N=(a2,b2,c2,d2)是兩個梯形模糊數(shù),則M≥N的可能性程度為:
其中,a1>0,b1>0,c1>0,d1>0,a2>0,b2>0,c2>0,d2>0。
由公式(5)計算元素eik≥eij的可能性程度,其中 j=1,2,…,ni。確定元素eik大于元素組中其他元素的可能值d(eik)。
d(eik)=minV(Deik≥Dei1,Dei2,…,Dei(k-1),Dei(k+1),…,Deini)(6)式中,k=1,2,…,ni。進而得到元素排序向量(d(ei1),d(ei2),…,d(eini))。歸一化得到元素組元素權(quán)重向量Wjl。
通過上述求解權(quán)重向量的方法,計算在準則層Ri下,以ejl(l=1,2,…,nj)為次準則,計算出超矩陣W的子矩陣Wij。
表1 模糊網(wǎng)絡(luò)分析法標度
圖2 需求結(jié)構(gòu)圖
中的列向量就是元素組Ci中的元素ei1,ei2,…,eini對Cj中元素ej1,ej2,…,ejnj的影響程度排序向量。如果元素組之間的元素沒有影響,則Wij=0。通過相同的方法最終得到在準則Ri下的超矩陣W。
由于超矩陣W中的子模塊Wij的每一列都是歸一化的,但超矩陣的整列并不滿足歸一化要求,因此需要以Ri為主準則,Cj為次準則的條件下,判斷網(wǎng)絡(luò)層中元素組之間的相對重要度。根據(jù)上述構(gòu)建判斷矩陣的方法,建立元素組的梯形模糊一致互補判斷矩陣。
相同的方法得到元素組元素在次準則Cj條件下的權(quán)重向量(a1ja2j…aNj),這樣的向量有N組,即得到加權(quán)矩陣A:
確定加權(quán)極限超矩陣,將超矩陣中的子矩陣與元素組的權(quán)重做乘積,即:
即為所求加權(quán)超矩陣,且每列都滿足歸一化要求。最后對加權(quán)超矩陣進行冪運算,使冪指數(shù)趨于無窮,直到每行元素不再發(fā)生變化,最終得到加權(quán)極限超矩陣。
在軟件開發(fā)的過程中,針對顧客需求關(guān)系的復雜性,用戶需求的模糊性以及軟件用戶與軟件開發(fā)人員之間缺乏共同語言等問題,本文以某測量儀軟件系統(tǒng)開發(fā)為研究對象,采用模糊網(wǎng)絡(luò)分析法來確定用戶對該系統(tǒng)的各項需求權(quán)重,并對比模糊層次分析法,以驗證該方法的正確性。
在系統(tǒng)的開發(fā)過程中,用戶對該軟件的需求主要包括性能需求、功能需求、界面需求及其他相關(guān)需求(如圖2)。性能需求主要包括軟件的可靠性、可擴展性、安全性、兼容性、系統(tǒng)穩(wěn)定性和執(zhí)行效率等;功能需求主要反映在軟件必須要實現(xiàn)的功能,而用戶對系統(tǒng)要實現(xiàn)的功能主要有數(shù)據(jù)采集、輪廓/粗糙度/波紋度圖形顯示、輪廓尺寸標注、粗糙度/波紋度參數(shù)評定、運動控制、工作區(qū)顯示、運動參數(shù)設(shè)置、指定格式保存文件、打印等;一款好的軟件不僅僅局限在強大的功能,軟件界面的質(zhì)量直接關(guān)系到用戶能否高效、準確、輕松地工作,主要表現(xiàn)在軟件的可理解性、易操作性、美觀性等;另外還包括其他需求如費用、開發(fā)周期等。
通過分析顧客各項需求之間的相互聯(lián)系,建立各元素組之間的網(wǎng)絡(luò)圖(如圖3)。
圖3 網(wǎng)絡(luò)層各組件的關(guān)聯(lián)
表2 初始超矩陣
通過對圖中各元素組之間元素的相互關(guān)聯(lián),進行間接優(yōu)勢度比較,即相對于一個準則(主準則),兩個元素相對于第三個元素(次準則)的重要度進行比較。圖中箭頭連線代表元素組之間的元素存在相互制約,以元素組C3中的元素e31為次準則,建立元素組C1的判斷矩陣R1。因此需要計算各元素組之間相互影響的優(yōu)先權(quán)重,即元素組優(yōu)先權(quán)矩陣見表3,而這些優(yōu)先權(quán)就是為加權(quán)超矩陣對應(yīng)模塊的權(quán)重。
將初始超矩陣中的子矩陣分別與元素組的權(quán)重做乘積,獲得加權(quán)超矩陣見表4,其中加權(quán)超矩陣的每一列都滿足歸一化要求。最后通過運用Matlab對加權(quán)超矩
由于R1是模糊一致互補判斷矩陣,具有滿意的一致性,不需進行一致性檢驗。根據(jù)公式(4)解得綜合模糊數(shù)De1i:
根據(jù)公式(5)、(6)求解在元素e31準則下元素組C1的層次單排序。
歸一化得e31準則下元素e11、e12和e13權(quán)重向量:
綜上,根據(jù)網(wǎng)絡(luò)層各組件關(guān)聯(lián)圖得各準則條件下元素組元素的權(quán)重向量,建立初始完全超矩陣見表2。
由于初始完全超矩陣的子模塊的每一列都是歸一化,但是初始超矩陣的每一整列并不滿足歸一化要求,陣進行冪運算,使冪指數(shù)趨于無窮,直到每列元素不再發(fā)生變化,此時的矩陣即為加權(quán)極限超矩陣見表5。
表3 元素組優(yōu)先權(quán)矩陣
通過表5加權(quán)極限超矩陣可知各元素的權(quán)重向量為:
(0.031,0.02,0.03,0.097,0.054,0.097,0.061,0.101,0.072,0.058,0.037,0.036,0.042,0.04,0.052,0.058,0.038,0.04,0.022,0.018)
由文獻[8]網(wǎng)絡(luò)分析法,考慮判斷矩陣的一致性檢驗,根據(jù)1~9標度方法,以元素組C3中的元素e31為次準則,建立元素組C1的判斷矩陣R1′:
表4 加權(quán)超矩陣
表5 加權(quán)極限超矩陣
求解判斷矩陣R1′,特征向量W′為:
一致性檢驗有(其中RI=0.58)λmax=3.02,CI=(λmax-n)/(n-1),CR=CI/RI=0.01<0.1 ,即一致性檢驗符合要求。
相同方法,根據(jù)網(wǎng)絡(luò)層各組件關(guān)聯(lián)圖得各準則條件下元素組元素的權(quán)重向量,進而獲得初始完全超矩陣,最終通過加權(quán)極限超矩陣得到各項需求的權(quán)重。
(0.027,0.019,0.036,0.090,0.055,0.092,0.061,0.091,0.072,0.060,0.039,0.040,0.043,0.043,0.053,0.057,0.039,0.041,0.022,0.02)
將文獻[13-15]建立的模糊層次分析法模型運用到該測量軟件需求權(quán)重的求解中,求得界面要求、性能要求、功能要求以及其他要求的元素組內(nèi)部元素的層次單排序,如下:
然后,對界面要求、性能要求、功能要求、其他要求進行層次排序,如下:
最終確定層次總排序WpiWei,即元素在所在層中的層次單排序值乘以該元素所在層次的權(quán)重。得到總排序向量如下:
為選取滿意的權(quán)重A,通過方案結(jié)果的準確性B1、方案的適用范圍B2及求解效率B3三方面對模糊網(wǎng)絡(luò)分析法C1,模糊層次分析法C2和網(wǎng)絡(luò)分析法C3三種權(quán)重方案進行評價。通過定量化比較判斷兩兩之間的相對重要度[10],建立判斷矩陣見表6~9。
表6 判斷矩陣A-B
表7 判斷矩陣B1-C
表8 判斷矩陣B2-C
表9 判斷矩陣B3-C
判斷矩陣A-B的特征向量W=[0.73 0.19 0.08]T,最大特征根λmax=3.07,一致性檢驗有:
CI=(λmax-n)/(n-1)=0.035
則一致性指標CR(其中RI=0.58):
CR=CI/RI=0.06<0.1
判斷矩陣具有滿意的一致性。
判斷矩陣Bi-C的特征向量、一致性指標CR分別為W1=[0.67 0.10 0.23]T,CR=0.069;W2=[0.42 0.13 0.46]T,CR=0.008 ;W3=[0.13 0.69 0.18]T,CR=0.078。則各方案相對于各準則的排序值見圖4,層次總排序見圖5。
圖4 方案各準則排序直方圖
圖5 各方案總排序直方圖
由直方圖4~5可知,模糊網(wǎng)絡(luò)分析法所得權(quán)重更能反映顧客的需求強度,更加適合復雜需求關(guān)系的權(quán)重求解;模糊層次分析法適合求解遞階層次結(jié)構(gòu)中的元素權(quán)重,不適合解決復雜關(guān)系系統(tǒng)(網(wǎng)絡(luò)結(jié)構(gòu))中的權(quán)重問題;網(wǎng)絡(luò)分析法未考慮評價的模糊性評價問題且判斷矩陣需一致性檢驗,使得準確性沒有模糊網(wǎng)絡(luò)分析法高,且求解過程復雜。通過方案的比較分析,由于模糊網(wǎng)絡(luò)分析法在理論上不但考慮了準則與準則之間、準則與指標之間以及各項指標之間的相互聯(lián)系,還考慮了模糊性判斷和模糊一致互補判斷矩陣問題,因此在顧客需求多且復雜的情況時,適合采用模糊網(wǎng)絡(luò)分析法求解權(quán)重。
本文著重于在軟件開發(fā)過程中對顧客需求權(quán)重的研究,利用網(wǎng)絡(luò)分析法和模糊數(shù)學相結(jié)合的方法,對各項需求建立網(wǎng)絡(luò)結(jié)構(gòu),進而利用梯形模糊區(qū)間數(shù)建立改進的模糊一致互補判斷矩陣,整合加權(quán)極限超矩陣確定各項需求的權(quán)重。
建立的改進一致互補判斷矩陣明顯提高了判斷的一致性和權(quán)重的計算效率。利用梯形模糊區(qū)間數(shù)代替1~9標度方法建立判斷矩陣,降低了相對重要度評判的主觀性,相對重要度更加準確。
模糊網(wǎng)絡(luò)分析法與模糊層次分析法實例應(yīng)用的對比分析表明,模糊網(wǎng)絡(luò)分析法更適合解決需求過于復雜的系統(tǒng)。
:
[1]王曉暾,熊偉.質(zhì)量功能展開中顧客需求重要度確定的粗糙層次分析法[J].計算機集成制造系統(tǒng),2010,16(4):763-771.[2]李磊,王永超,唐雨.基于模糊層次分析法的機械材料選擇[J].組合機床與自動化加工技術(shù),2015(11):9-12.
[3]周黎莎,于新華.基于網(wǎng)絡(luò)層次分析法的電力客戶滿意度模糊綜合評價[J].電網(wǎng)技術(shù),2009,33(17):191-193.
[4]周曉光,高學東.基于FANP模型的建設(shè)項目選擇方法與應(yīng)用[J].系統(tǒng)工程理論與實踐,2012,32(11):2459-2466.
[5]Yang Shaomei,Liu Jinghua,Wang Rui.The improved fuzzy analytic hierarchy process and its application in risk evaluation of wind power project investment[J].Journal of Information and Computational Science,2014,11(13):4547-4553.
[6]Al-Hawari T,Mumani A,Momani A.Application of the analytic network process to facility layout selection[J].Journal of Manufacturing Systems,2014,33(4):488-497.
[7]蘭繼斌,徐揚,霍良安.模糊層次法權(quán)重研究[J].系統(tǒng)工程理論與實踐,2006(9):110-111.
[8]Saaty T L.網(wǎng)絡(luò)層次分析法原理及其應(yīng)用[M].鞠彥兵,劉建昌,譯.北京:北京理工大學出版社,2015:120-131.
[9]賀純純,王應(yīng)明.網(wǎng)絡(luò)層次分析法研究述評[J].科技管理研究,2014(3):204-206.
[10]呂永波,胡天軍,雷黎.系統(tǒng)工程[M].北京:清華大學出版社,2006:185-199.
[11]張吉軍.模糊層次分析法(FAHP)[J].模糊系統(tǒng)與數(shù)學,2000,14(2):80-88.
[12]呂躍進.基于模糊一致矩陣的模糊層次分析法的排序[J].模糊系統(tǒng)與數(shù)學,2002,16(2):79-85.
[13]賓光福,李學軍.基于模糊層次分析法的設(shè)備狀態(tài)系統(tǒng)量化評價新方法[J].系統(tǒng)工程理論與實踐,2010,30(4):744-750.
[14]周艷美,李偉華.改進模糊層次分析法及其對方案的評價[J].計算機工程與應(yīng)用,2008,44(5):212-215.
[15]李永峰,朱麗萍.基于模糊層次分析法的產(chǎn)品可用性評價方法[J].機械工程學報,2012,48(14):183-191.