摘 要: 基于隱馬爾可夫模型HMM提出了一種新的信息工程監(jiān)理質量控制方法,并建立了模型。該模型將信息工程質量監(jiān)理過程視為兩層隨機過程,,通過抽取監(jiān)理過程的特征,,將隱馬爾可夫模型的5個要素與質量監(jiān)理過程相對應。利用該模型可以求解質量度量要素觀測序列和質量狀態(tài)的匹配度,,通過調整模型的初始參數(shù)可以將該模型應用于不同的監(jiān)理軟件,,并以概率的形式預測監(jiān)理過程的結果。通過仿真實驗,,驗證了該方法應用于信息工程監(jiān)理質量控制的可行性,。
關鍵詞: 信息工程監(jiān)理;質量控制,;隱馬爾可夫模型,;前向算法
目前,,用于信息工程監(jiān)理[1]質量控制的方法主要有基于模糊理論,、基于因素神經(jīng)網(wǎng)絡、基于灰色系統(tǒng)理論[2]和基于模糊因素神經(jīng)網(wǎng)絡等,;軟件質量的度量模型主要有Boehm模型,、McCall模型和ISO/IEC9126模型[3]等。這些方法和模型都能較好地適應于靜態(tài)問題的解決,,但監(jiān)理人員只有針對信息工程監(jiān)理各個階段實施全過程的動態(tài)監(jiān)理,,才能使影響信息系統(tǒng)質量的要素在開發(fā)過程中處于受控狀態(tài)。隱馬爾可夫模型HMM(Hidden Markov Model)是一種雙重隨機過程,,能夠解決隨機不確定問題,,在很多方面已有廣泛應用[4],具有理論研究透徹,、算法成熟,、效率高、效果好,、易于訓練等特點,,作為一種有效的概率工具,已成為信息抽取領域中一個新的研究方向[5],。本文通過對信息工程質量監(jiān)理過程特點的分析,,將隱馬爾可夫模型映射到質量監(jiān)理中,利用前向算法估計出在該模型下觀測事件序列發(fā)生的概率,,從而在一定程度上有助于對軟件質量進行定量控制,。
1 模型的建立
1.1 特征提取
隱馬爾可夫模型由兩個部分組成[6]:一個是隱蔽的(不可觀測的)、具有有限狀態(tài)的馬爾可夫鏈[7],,另一個是與馬爾可夫鏈的每一狀態(tài)相關聯(lián)的觀察事件的隨機過程(可觀測的),。
將隱馬爾可夫模型映射到信息工程監(jiān)理質量評估模型上,即一個軟件的質量狀態(tài)是無法直接觀察到的,,但是可以通過分析與這個軟件相關的質量度量要素,,估算該軟件的質量狀態(tài),,從而進一步得到其量化的評判值。信息化工程監(jiān)理國標中的信息化工程監(jiān)理規(guī)范技術參考模型[8]將信息工程質量監(jiān)理分為工程招標,、工程設計,、工程實施和工程驗收四個階段。各個階段的軟件質量狀態(tài)構成一個馬爾可夫鏈,,度量要素序列是一個隨機過程,,每一個度量要素會對軟件的質量狀態(tài)的轉移帶來一定影響,這樣,,度量要素序列和軟件的質量狀態(tài)之間就構成了一個隱馬爾可夫模型,。通過觀察信息工程監(jiān)理全過程各個階段的度量要素,每個階段都可以得到一個隨機的度量要素序列,,這樣就可以計算軟件的質量狀態(tài)和評判值,。
軟件質量目標控制按照分層法分解為人、軟件元,、開發(fā)方法,、設備及材料和工程環(huán)境五個度量要素,軟件質量狀態(tài)依據(jù)各度量要素分為優(yōu),、良,、中、差四個決斷因子,,如果再定義出它們之間的概率轉換關系,,就會得到由這兩組狀態(tài)構成的隱馬爾可夫模型(如圖1所示)。
根據(jù)該HMM模型,,可以在沒有直接觀測軟件質量的情況下根據(jù)度量要素的分布來推測軟件質量的變化情況,。
如果能較為準確地計算軟件質量處于何種狀態(tài),則可以定量分析軟件的質量情況,。軟件質量狀態(tài)之間的轉移見圖2,。
由圖1可以直觀看出,度量軟件質量的要素有5個,,用V={P,,U,M,,F(xiàn),,E}表示,ν1=P(People),,表示度量要素人的因素,;ν2=U(Units),表示度量要素軟件元質量;ν3=M(Methods),,表示度量要素開發(fā)方法,;ν4=F(Facilities),表示度量要素設備及材料,;ν5=E(Environment),,表示度量要素工程環(huán)境。設質量度量要素觀測序列為O={o1,,o2,,o3,o4},,其中ot∈V,。
設軟件質量情況在信息工程監(jiān)理開始階段狀態(tài)為π,它是一個向量,,表示在信息工程監(jiān)理工程招標階段軟件質量處于各個狀態(tài)的概率,,π={π1,π2,,π3,,π4},πi=P(q1=si),,1≤i≤4。對于工程招標階段,,可以根據(jù)信息工程監(jiān)理協(xié)同工作平臺下的模糊因素神經(jīng)網(wǎng)絡質量評估方法得到一個默認值,,之后的每一階段,通過Trans和Obs可以計算出當前軟件質量處于各種狀態(tài)的概率st=(r1,,…,,r4),將此概率作為下一階段的初始狀態(tài),。在t階段,,狀態(tài)分布表示為rt={rt(i)},1≤i≤4,,狀態(tài)的分布概率公式為:rt(i)=P(qt=si|λ),。再引入一個代價向量C[10],代表軟件在每個狀態(tài)的質量值,,則可以將軟件狀態(tài)的定性分析轉化為定量分析,。
設Trans為軟件質量狀態(tài)轉換矩陣,即質量狀態(tài)之間轉換的概率組成的矩陣,,包含4行4列,,aij表示在t階段質量狀態(tài)為si,那么到t+1階段質量狀態(tài)為sj的概率,即aij=P(qt+1=sj|qt=si),,1≤i,,j≤4。
定義Obs為當軟件處于某一個特定質量狀態(tài)時觀測到某種度量要素的概率矩陣,,bj(k)表示在階段t,,軟件質量處于sj狀態(tài)觀測到度量要素νk的概率,1≤k≤5,,1≤j≤4,。
2 基于前向算法的模型應用
根據(jù)得到的觀察序列O={o1,o2,,o3,,o4}和模型λ=(π,Trans,,Obs)可以計算出在該模型下觀察事件序列發(fā)生的概率P(O|λ),。P(O|λ)評價了給定模型?姿與給定觀測序列匹配的程度。
對隱馬爾可夫模型而言,,狀態(tài)轉換序列是隱藏的,,一個觀測序列可能由任何一種狀態(tài)轉換序列產(chǎn)生。因此要計算一個觀測序列的概率值,,就必須考慮所有可能的狀態(tài)轉換序列,。
窮舉搜索的時間復雜度是2TNT,前向算法的時間復雜度是2N2T,,其中T指的是觀察序列長度,,N指的是隱藏狀態(tài)數(shù)目。對于信息工程監(jiān)理質量控制,,N=4,,T=4,如果利用窮舉搜索算法,,復雜度相對會比較大,,可以采用前向算法來降低復雜度。
給定這種算法,,對于已知的一個度量要素觀察序列,,可以直接用來確定在一些隱馬爾可夫模型中哪一個最好地描述了它,即先用前向算法評估某一個給定的λ,,然后通過多次調整參數(shù)λ來提高評估的概率,,進而通過實時調整信息工程監(jiān)理中的質量的度量要素的比例來達到提高軟件質量控制的目的。
3 仿真實驗
實驗數(shù)據(jù)來源于信息工程監(jiān)理協(xié)同工作平臺(IPSS)下的數(shù)據(jù)庫,。實驗環(huán)境為Eclipse和Java開源工具包jahmm-0.6.1,。文中使用狀態(tài)數(shù)為N=4,,觀測值數(shù)為M=5的隱馬爾可夫模型進行檢驗。
在信息工程監(jiān)理中,,每個階段軟件所處的質量狀態(tài)與前一階段所處的質量狀態(tài)有關,,即前一階段的質量狀態(tài)會影響下一階段質量狀態(tài)出現(xiàn)的概率。
初始質量狀態(tài)概率分布:π=(0.3,,0.3,,0.2,0.2)
四個質量狀態(tài)兩兩之間轉化的概率如表1所示,。
軟件質量處于某個狀態(tài)時,,度量要素所占的比例有一定的規(guī)律性。度量要素觀測值概率分布如表2,。
下面根據(jù)軟件質量初始狀態(tài),、表1和表2的數(shù)據(jù),估計狀態(tài)序列O={P,,U,,M,F(xiàn)}出現(xiàn)的概率,。假設P為工程招標階段觀測到的主導要素,,U為工程設計階段觀測到的主導要素,M為工程實施階段觀測到的主導要素,,F(xiàn)為工程驗收階段觀測到的主導要素,。
在模型λ下,在t時刻觀測事件是ot,、狀態(tài)是si的概率如表3所示,,每個階段的四個概率對應四個質量狀態(tài)。
本文通過對隱馬爾可夫理論的分析,,建立了用于質量控制的隱馬爾可夫模型,并嘗試基于該模型對信息工程監(jiān)理進行質量控制,。本文提出的隱馬爾可夫質量控制模型只是用于控制信息工程監(jiān)理4個階段的5個基本要素,,模型稍顯粗糙。如何基于隱馬爾可夫模型或其他擴展模型與信息工程監(jiān)理質量控制完全的整合,,以及如何利用模型進行質量評估并對模型進行訓練還需要進一步的探索研究,。
參考文獻
[1] 劉宏志,葛迺康.信息化工程監(jiān)理[M].北京:中國電力出版社,,2009.
[2] 劉宏志,,楊建軍.基于灰色系統(tǒng)理論的軟件工程監(jiān)理研究[J].經(jīng)濟管理,2007,,29(18).
[3] 周建.關于軟件質量的定量評估的研究[D].成都:電子科技大學,,2007.
[4] 胡可,,張大力.一類廣義隱馬爾可夫模型的建模與參數(shù)估計[J].中國科學院研究生院學報,2005,,22(2):210-217.
[5] 洪流,,張巍,肖明軍,,等.一種改進的基于HMM的信息抽取模型[J].模式識別與人工智能,,2004,17(3):347-351.
[6] 翟琳琳,,陳儀香.隱馬爾可夫模型在智能學習系統(tǒng)中的應用[J].計算機工程與應用,,2007,43(6):178-180.
[7] Wojciech Pieczynski. Pairwise Markov Chains[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,, 2003,, 25(5): 634-639.
[8] 中國國家標準化管理委員會.信息化工程監(jiān)理規(guī)范——第5部分:軟件工程監(jiān)理規(guī)范[S].中華人民共和國國家標準,GB/T 19668.5-2007,,ICS.35.020,,L01.
[9] LEE H K, KIM J H. An HMM-Based Threshold Model Approach for Gesture Recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,, 1999,, 21(10):961-973.
[10] 董靜.改進的HMM網(wǎng)絡安全風險評估方法研究[D].武漢:華中科技大學,2008.
[11] 彭子平,,張嚴虎,,潘露露.隱馬爾可夫模型原理及其重要應用[J].計算機科學,2008,,35(4).