亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于隱馬爾可夫鏈模型的軟件維護(hù)性評(píng)估方法研究

        2016-11-23 10:02:52郝學(xué)良朱小冬
        關(guān)鍵詞:概率狀態(tài)軟件

        郝學(xué)良,朱小冬,葉 飛

        (軍械工程學(xué)院,石家莊 050003)

        基于隱馬爾可夫鏈模型的軟件維護(hù)性評(píng)估方法研究

        郝學(xué)良,朱小冬,葉飛

        (軍械工程學(xué)院,石家莊050003)

        針對(duì)當(dāng)前軟件可維護(hù)性評(píng)估主觀性強(qiáng),可操作性弱等問題,提出了定量描述維護(hù)性的維護(hù)時(shí)間統(tǒng)計(jì)概率描述方法,引入隱馬爾可夫鏈(HMC)模型對(duì)維護(hù)性狀態(tài)變遷過程進(jìn)行描述,以可度量的維護(hù)性內(nèi)部屬性影響因素集量化值為觀測(cè)序列,以維護(hù)時(shí)間統(tǒng)計(jì)概率為狀態(tài)序列,構(gòu)造了反映可維護(hù)性狀態(tài)轉(zhuǎn)移的HMC模型;收集配置管理庫中軟件模塊歷史維護(hù)時(shí)間從而確定完成維護(hù)任務(wù)頻率來估計(jì)軟件維護(hù)性初始狀態(tài),利用復(fù)雜網(wǎng)絡(luò)特性計(jì)算軟件維護(hù)性影響因素集的量化值,理論上即可評(píng)估出當(dāng)前軟件所處的維護(hù)性狀態(tài),最后運(yùn)用實(shí)例對(duì)模型進(jìn)行了訓(xùn)練與評(píng)估;結(jié)果表明,利用模型評(píng)估出的概率與實(shí)際維護(hù)任務(wù)統(tǒng)計(jì)出的可維護(hù)性概率基本一致,說明該方法可行且可重復(fù),具有一定實(shí)踐意義和研究前景。

        軟件維護(hù)性;隱馬爾可夫鏈模型;模糊推理;信息融合;軟件維護(hù)性評(píng)估

        0 引言

        軟件維護(hù)性是軟件質(zhì)量的重要屬性之一,它在很大程度上直接決定了軟件的后期維護(hù)成本。提高軟件產(chǎn)品的維護(hù)性已成為軟件生產(chǎn)方和使用方的共識(shí)。軟件維護(hù)性的評(píng)估是軟件維護(hù)性控制和改進(jìn)的基礎(chǔ),已成為近年來軟件維護(hù)性研究的熱點(diǎn)和難點(diǎn)。

        Oman維護(hù)性指數(shù) (Maintainability Index,MI)[1]通過方程式計(jì)算出來一個(gè)經(jīng)驗(yàn)數(shù)值,在一定程度上反映了軟件維護(hù)性的好壞,但是很難在實(shí)際工程中應(yīng)用。Misra(2005)[3]等基于線性回歸技術(shù)的軟件維護(hù)性預(yù)計(jì)模型,一定程度實(shí)現(xiàn)了軟件設(shè)計(jì)階段的維護(hù)性預(yù)計(jì)方法,Thwin(2005)[4]等運(yùn)用人工神經(jīng)網(wǎng)絡(luò)建立了軟件維護(hù)性預(yù)計(jì)模型,將人工智能方法應(yīng)用到了軟件度量領(lǐng)域;Fenton[5]等將貝葉斯網(wǎng)絡(luò)應(yīng)用到軟件度量與預(yù)計(jì)研究當(dāng)中,提出處理不確定性問題的方法,將專家經(jīng)驗(yàn)與知識(shí)結(jié)合起來,實(shí)現(xiàn)對(duì)變量間復(fù)雜關(guān)系的建模。目前關(guān)于軟件維護(hù)性評(píng)估方法的研究存在定性研究多,定量研究少;主觀判斷多,數(shù)據(jù)驗(yàn)證少的特點(diǎn),仍停留在軟件維護(hù)性的內(nèi)部屬性度量階段,缺乏外部屬性和內(nèi)部屬性結(jié)合的綜合研究。針對(duì)以上問題,本文提出了一種基于配置管理庫數(shù)據(jù)的軟件可維護(hù)性評(píng)估方法,將實(shí)際維護(hù)過程中的維護(hù)性外在表現(xiàn)信息與維護(hù)性度量工具所試題的內(nèi)部度量集結(jié)合起來,實(shí)現(xiàn)軟件維護(hù)性的整體評(píng)估。

        1 軟件可維護(hù)性的定義及描述方法

        1.1基于配置管理庫數(shù)據(jù)的維護(hù)性評(píng)估可行性分析

        軟件從用戶需求到開發(fā)再到發(fā)布,在需求的導(dǎo)引下反復(fù)維護(hù),更新,是一個(gè)不斷循環(huán)的生命周期過程。

        由于軟件開發(fā)配置管理庫中記錄了開發(fā)過程中軟件開發(fā)工作量等數(shù)據(jù),我們可利用其中的維護(hù)時(shí)間數(shù)據(jù)進(jìn)行維護(hù)性度量,以可維護(hù)度及平均功能維護(hù)時(shí)間作為軟件維護(hù)性評(píng)估的指標(biāo),并在實(shí)際維護(hù)活動(dòng)中統(tǒng)計(jì)是否能按時(shí)完成任務(wù)的頻率來估計(jì)維護(hù)性狀態(tài)概率,理論上可以實(shí)現(xiàn)軟件維護(hù)性的評(píng)估。再選取相應(yīng)的配置管理庫中的數(shù)據(jù)生成樣本庫,即可實(shí)現(xiàn)對(duì)維護(hù)性狀態(tài)估計(jì)模型進(jìn)行訓(xùn)練。利用訓(xùn)練好的模型從配置管理數(shù)據(jù)庫中的模塊進(jìn)行評(píng)估,即可實(shí)現(xiàn)軟件可維護(hù)性評(píng)估的目的。軟件的開發(fā)過程本身就可以看作是一個(gè)不斷進(jìn)行維護(hù)的過程,在項(xiàng)目開發(fā)的初級(jí)階段,往往對(duì)軟件的需求認(rèn)識(shí)不夠清晰,使得開發(fā)項(xiàng)目難于一次開發(fā)成功,即使認(rèn)識(shí)足夠清楚,任何個(gè)人或團(tuán)體都可能會(huì)出錯(cuò)或疏漏,因此,在軟件開發(fā)過程中出現(xiàn)返工再開發(fā)的情況在所難免。開發(fā)的第一次經(jīng)常是試驗(yàn)開發(fā),其目標(biāo)在于探索可行性,弄清軟件需求,而第二次的開發(fā)實(shí)際上就既是開發(fā)又可看作是對(duì)第一次的維護(hù),常見的 “演化模型”和“螺旋模型”就是這種典型的開發(fā)過程。配置管理工具正是貫穿軟件開發(fā)與軟件維護(hù)的一個(gè)重要的橋梁。配置管理作為軟件過程管理的重要工具,不僅可以保證軟件開發(fā)活動(dòng)的高效,準(zhǔn)確完成,更起著保證軟件具有良好維護(hù)性的作用。

        1.2軟件維護(hù)過程中的維護(hù)性內(nèi)部影響因素集分析

        軟件維護(hù)性影響因素主要有四大類:軟件基本屬性(software basic attribute)、源代碼設(shè)計(jì)特性(source code attribute)、文檔特性(document attribute)和管理因素(management attribute),其中軟件本身的設(shè)計(jì)特性從根本上決定了軟件維護(hù)性的好壞。其中,前三類因素可以利用利用粗糙集原理對(duì)軟件維護(hù)性影響因素進(jìn)行篩選,得到軟件的維護(hù)性影響因素集包括:規(guī)模、結(jié)構(gòu)化因子、復(fù)雜度、耦合度、內(nèi)聚度。并利用模糊推理原理,依據(jù)軟件系統(tǒng)復(fù)雜網(wǎng)絡(luò)特性與影響因素集之間的關(guān)系,實(shí)現(xiàn)維護(hù)性影響內(nèi)部因素對(duì)軟件可維護(hù)性影響的定量化描述[6]。

        但是對(duì)于第四類因素,管理因素,如維護(hù)機(jī)構(gòu)的運(yùn)行機(jī)制,人員的水平等很難體現(xiàn)出來。本文所構(gòu)建的HMC模型正是基于這一最難度量的維護(hù)性影響因素進(jìn)行量化。

        典型的軟件維護(hù)過程一般是由用戶需求更改發(fā)起的。首先由用戶方將更改需求明確為問題報(bào)告,提交給軟件維護(hù)人員,一般是開發(fā)人員。由軟件維護(hù)人員對(duì)用戶需求進(jìn)行分析,進(jìn)一步定位到具體的功能塊,在配置管理中則是定位到具體的配置項(xiàng),這一步即是問題報(bào)告分析時(shí)間。之后可以制定軟件維護(hù)計(jì)劃,以保證有效的軟件維護(hù)實(shí)施和可靠的軟件維護(hù)質(zhì)量。在軟件維護(hù)計(jì)劃中,要定義軟件維護(hù)目標(biāo)、人員和資源分配、組織機(jī)構(gòu)和保障措施等,而且要分析和制定、確認(rèn)軟件維護(hù)的策略、流程和和規(guī)則、實(shí)施方法和工具等。接下來進(jìn)行的工作即是對(duì)源代碼進(jìn)行理解,對(duì)于開發(fā)人員來說,這一步所耗費(fèi)的時(shí)間一般不會(huì)太多。軟件完成更改后,再進(jìn)行回歸測(cè)試,如果滿足用戶需求即可發(fā)布新版本,此時(shí)維護(hù)過程完成。

        軟件的維護(hù)性與軟件的規(guī)模密切相關(guān),通常情況下,規(guī)模越大,維護(hù)難度越大。同時(shí),軟件的維護(hù)性在某種程度上也取決于軟件的復(fù)雜度,同等規(guī)模下,軟件的設(shè)計(jì)越復(fù)雜,越難以維護(hù)。

        軟件維護(hù)的難易大小,成本高低,主要取決于軟件維護(hù)時(shí)間,而維護(hù)時(shí)間主要包括:更改請(qǐng)求(問題報(bào)告)分析時(shí)間、軟件理解時(shí)間、故障定位時(shí)間、更改規(guī)劃及更改影響分析時(shí)間、更改實(shí)施時(shí)間、回歸測(cè)試時(shí)間以及其它的管理延遲時(shí)間等。

        軟件維護(hù)時(shí)間的長(zhǎng)短與目標(biāo)軟件基本屬性(成熟度、軟硬件運(yùn)行環(huán)境等)、源代碼設(shè)計(jì)特性(結(jié)構(gòu)復(fù)雜度、代碼質(zhì)量等)以及文檔特性(完整性、一致性)有著直接的關(guān)系,另外還與人員技術(shù)水平、輔助工具等非軟件系統(tǒng)本身因素有關(guān),我們將這些因素統(tǒng)稱為管理因素。

        1.3三態(tài)可維護(hù)性狀態(tài)概率描述

        根據(jù)GJB中可維護(hù)性的定義,本文將軟件的維護(hù)性狀態(tài)定義為三態(tài),分別為易維護(hù)(s0)、可維護(hù)(s1)和不可維護(hù)(s2)。具體在工程實(shí)際中,假設(shè)在規(guī)定組織環(huán)境內(nèi),計(jì)劃完成維護(hù)任務(wù)時(shí)間或者平均分配到每個(gè)模塊上的完成時(shí)間為T,且在一定的延誤時(shí)間區(qū)間內(nèi)也可算作按時(shí)完成,引入容忍因子α,容忍延誤時(shí)間Δt=T*α,實(shí)際完成維護(hù)任務(wù)時(shí)間為t,對(duì)3種狀態(tài)作如下定義。

        1)易維護(hù)狀態(tài):

        對(duì)于一個(gè)軟件或功能塊在規(guī)定的維護(hù)條件下如果能夠提前完成維護(hù)目標(biāo),那么認(rèn)為該軟件或功能塊處于易維護(hù)狀態(tài),根據(jù)前面對(duì)各時(shí)間的定義,即t∈(0,T);軟件處于易維護(hù)狀態(tài)s0的概率為P(s0)=P(t<T)。

        2)可維護(hù)狀態(tài):

        對(duì)于一個(gè)軟件或功能塊如果能夠在一定容忍延誤程度內(nèi),按時(shí)完成維護(hù)目標(biāo)但是也沒有提前完成,那么認(rèn)為該軟件或功能塊處于可維護(hù)狀態(tài)s1,根據(jù)前面對(duì)時(shí)間的定義,有t∈[T,T+Δt),軟件處于可維護(hù)狀態(tài)的概率為P(s1)=P(T≤t<T +Δt);

        3)不可維護(hù)狀態(tài):

        對(duì)于一個(gè)軟件或功能塊如果在規(guī)定的條件下,不能按時(shí)完成維護(hù)目標(biāo),則認(rèn)為該軟件處于不可維護(hù)狀態(tài),即t∈(t,∞),軟件處于不可維護(hù)狀態(tài)s2的概率為P(s1)=P(t>T)。

        由概率和數(shù)理統(tǒng)計(jì)可知,概率可以用頻率來估計(jì),假如在對(duì)某軟件系統(tǒng)進(jìn)行維護(hù),該軟件系統(tǒng)中的某個(gè)子模塊,計(jì)劃完成維護(hù)任務(wù)時(shí)間為T,容忍延誤時(shí)間Δt=T*α,在時(shí)間區(qū)間(0,T)內(nèi)有r次完成維護(hù)任務(wù),達(dá)到維護(hù)目標(biāo);在時(shí)間區(qū)間(T,T+Δt)內(nèi)有l(wèi)次完成維護(hù)任務(wù),達(dá)到維護(hù)目標(biāo);其余維護(hù)時(shí)間均落于區(qū)間(T+Δt,∞)。

        根據(jù)三態(tài)可維護(hù)性狀態(tài)描述可得軟件處于3種維護(hù)狀態(tài)的概率分別為:

        2 軟件維護(hù)性狀態(tài)轉(zhuǎn)移模型

        軟件維護(hù)性既是一種內(nèi)部屬性,主要受規(guī)模、結(jié)構(gòu)化因子、復(fù)雜度、耦合度、內(nèi)聚度等內(nèi)部因素影響,同時(shí)也是一種外部屬性,受維護(hù)組織,人員,策略等影響。因此,在軟件更改維護(hù)的過程中,會(huì)牽一發(fā)而動(dòng)全身,隨著各影響因素的變化,其維護(hù)性也會(huì)變化,即軟件的維護(hù)性狀態(tài)隨著軟件的演化是動(dòng)態(tài)變化的,對(duì)于其維護(hù)性的評(píng)估也不能靜止地去考慮。因此,引入隱馬爾可夫鏈模型來識(shí)別多種維護(hù)性影響因素集下的軟件維護(hù)性狀態(tài)隨著軟件更改而產(chǎn)生的轉(zhuǎn)移變遷過程。

        2.1HMC模型在維護(hù)性評(píng)估中的應(yīng)用

        最簡(jiǎn)單的隱馬爾

        可夫模型一般用一個(gè)五元組來表示:

        λ=(N,M,A,B,π)(4)

        其中,N表示狀態(tài)數(shù),記N個(gè)隱狀態(tài)為θ1,θ2,…,θN,t時(shí)刻馬爾可夫鏈所處的狀態(tài)為q,且q∈{θ1,θ2,…,θN};M為每個(gè)狀態(tài)對(duì)應(yīng)的可觀測(cè)值數(shù)目,記M個(gè)觀測(cè)值為v1,v2,…,vM,t時(shí)刻觀測(cè)值為ot且ot∈{v1,v2,…,vM};隱狀態(tài)的初始概率分布為π=(π1,π2,…,πM),其中π=P(q=θi),1≤i≤N;A為狀態(tài)轉(zhuǎn)移概率矩陣,A={aij}N×N,其中aij= P(qi+1=θjqi=θi),1≤i,j≤N;B為觀察值概率矩陣,B ={bjk}N×M,其中bjk=P(oi=vkqt=θj)。

        綜上,H MC模型通過狀態(tài)轉(zhuǎn)移矩陣A、觀察值矩陣B和初始狀態(tài)π的分布來描述雙重隨機(jī)過程[7]。H MC在實(shí)際應(yīng)用過程中經(jīng)常會(huì)用到3個(gè)常用的算法,如表1中所示。

        在解決本文所提出的維護(hù)性狀態(tài)評(píng)估問題中,利用配置管理庫中的維護(hù)性統(tǒng)計(jì)數(shù)據(jù)作為模型的初始狀態(tài),用維護(hù)性度量工具度量軟件的內(nèi)部維護(hù)性影響因素量化值作為觀測(cè)序列,采用Baum-Welch算法對(duì)模型參數(shù)進(jìn)行訓(xùn)練,對(duì)訓(xùn)練后的模型再應(yīng)用Forward-Backward算法計(jì)算輸出概率,即可得到軟件的維護(hù)性狀態(tài)概率。

        2.2軟件維護(hù)性狀態(tài)轉(zhuǎn)移模型

        軟件維護(hù)性是軟件的一種能力,這種能力在軟件設(shè)計(jì)階段即已初步形成,在軟件的開發(fā)過程中逐步確定下來,但是由于軟件的維護(hù)不像硬件維修那樣簡(jiǎn)單替換,而是存在不同程度的波及效應(yīng),因此軟件的影響因素集及軟件的可維護(hù)性狀態(tài)都會(huì)隨著軟件維護(hù)的遞進(jìn)而發(fā)生改變,這個(gè)過程即是一個(gè)隱馬爾可夫狀態(tài)轉(zhuǎn)移過程。

        1)三態(tài)維護(hù)性狀態(tài)轉(zhuǎn)移模型:

        前面已提到把軟件系統(tǒng)的可維護(hù)性隱性狀態(tài)分為3個(gè),分別為:易維護(hù)狀態(tài)、可維護(hù)狀態(tài)、不可維護(hù)狀態(tài),這3種狀態(tài)的轉(zhuǎn)移過程可以圖1來表示,縱軸表示可維護(hù)性狀態(tài)的分布,橫軸表示軟件維護(hù)基線或維護(hù)進(jìn)程的更迭。

        結(jié)合軟件三態(tài)維護(hù)性的概率表達(dá),表1表達(dá)了軟件維護(hù)性狀態(tài)概率分布。

        2)軟件維護(hù)性影響因素集概率化表示:

        利用粗糙集原理對(duì)軟件維護(hù)性影響因素進(jìn)行篩選,得到軟件的維護(hù)性影響因素集包括:規(guī)模、結(jié)構(gòu)化因子、復(fù)雜度、耦合度、內(nèi)聚度。并利用模糊推理原理,依據(jù)軟件系統(tǒng)復(fù)雜網(wǎng)絡(luò)特性與影響因素集之間的關(guān)系,實(shí)現(xiàn)維護(hù)性影響因素對(duì)軟件可維護(hù)性影響的定量化,再綜合各影響因素值進(jìn)行歸一化處理,即得到軟件維護(hù)性的觀測(cè)狀態(tài)值[6]。

        表1 維護(hù)性狀態(tài)轉(zhuǎn)移矩陣

        2.3基于模糊推理的影響因素集量化

        將軟件規(guī)模、結(jié)構(gòu)化因子、復(fù)雜度、耦合度、內(nèi)聚度等5個(gè)影響因素與軟件體系結(jié)構(gòu)的復(fù)雜網(wǎng)絡(luò)特性建立關(guān)系,并對(duì)每一個(gè)影響因素建立模糊推理系統(tǒng);利用Pajeck分析軟件模塊的復(fù)雜網(wǎng)絡(luò)特性,將復(fù)雜網(wǎng)絡(luò)特性的取值作為模糊系統(tǒng)的輸入,根據(jù)理論最好值與實(shí)際值的范圍建立分級(jí)標(biāo)準(zhǔn);確定輸入輸出變量后,以內(nèi)聚度作為度量示例,建立模糊推理系統(tǒng)。

        2.4HMC模型改進(jìn)及訓(xùn)練

        由于軟件維護(hù)性的狀態(tài)發(fā)展具有漸進(jìn)的過程,建立HMC維護(hù)性評(píng)估模型,實(shí)質(zhì)上是通過狀態(tài)轉(zhuǎn)移矩陣來對(duì)維護(hù)進(jìn)程中的狀態(tài)轉(zhuǎn)移進(jìn)行描述。對(duì)于這樣一個(gè)矩陣,其初始狀態(tài)往往不能精確獲取,而是通過優(yōu)化訓(xùn)練算法來得到狀態(tài)轉(zhuǎn)移矩陣,從而再通過求解HMC過程來實(shí)現(xiàn)評(píng)估。但是從理論上仍存在以下兩個(gè)問題[9]:

        1)HMC初始模型的選取問題仍未完全解決。實(shí)際情況中軟件的可維護(hù)性狀態(tài)經(jīng)常處于變化當(dāng)中,初始模型的選擇不當(dāng)必然會(huì)對(duì)最終的評(píng)估結(jié)果造成影響。

        2)HMC模型的訓(xùn)練問題在整個(gè)評(píng)估模型中起著重要作用。經(jīng)典的重估公式假設(shè)條件與實(shí)際應(yīng)用中出入較大,可能會(huì)造成收斂速度慢甚至無法完成訓(xùn)練。

        針對(duì)HMC模型存在的上述兩個(gè)問題進(jìn)行改進(jìn),以提高軟件可維護(hù)性狀態(tài)的識(shí)別速度與精度。可利用改進(jìn)的參數(shù)重估公式進(jìn)行多觀測(cè)序列模型訓(xùn)練,重估公式如式(5)所示[8]。由于當(dāng)前軟件的維護(hù)數(shù)據(jù)較少,反映軟件可維護(hù)性狀態(tài)的信息也比較少,可通過歷史維護(hù)數(shù)據(jù)來初步評(píng)估軟件的可維護(hù)性。

        現(xiàn)階段的軟件的維護(hù)更改過程并不是針對(duì)維護(hù)性進(jìn)行的,所以軟件維護(hù)性的狀態(tài)是漸變的沒有明確的界限。

        假設(shè)軟件系統(tǒng)由n個(gè)模塊組成,記為N=(1,2,…,n);每個(gè)模塊都具有m種狀態(tài),記為M=(1,2,…,m);各模塊的可維護(hù)性狀態(tài)概率記為P ,顯然有:

        寵物放置在一邊并局部消毒。從前臂頭靜脈采集2毫升靜脈血作血液檢查。首先,采血部上部與止血帶結(jié)扎,靜脈怒露。用酒精棉球消毒靜脈血管。然后將針和皮膚以45度角皮下穿刺。然后將血液推入EDTA-K2抗凝管。最后,用自動(dòng)流式細(xì)胞儀分析和檢測(cè)血樣并進(jìn)行打印。結(jié)果包括離子檢查和血常規(guī)檢查。

        假設(shè)軟件在初始狀態(tài)下處于可維護(hù)狀態(tài),則初始狀態(tài)的可維護(hù)性概率分布為π0=(0,1,0),狀態(tài)轉(zhuǎn)移概率矩陣A0和影響因素觀測(cè)值矩陣B0采取均勻方法選取,代入式(4)得到初始的H MC模型λ0= (A0,B0,π0)。將歸一化處理后的影響因素集的值作為觀測(cè)序列輸入到初始模型λ0=(A0,B0,π0),利用Baum-Welch算法得到軟件的動(dòng)態(tài)HMC模型λt=(At,Bt,πt),利用前向-后向算法計(jì)算不同模塊的影響因素集的量化值在給定模型λt=(At,Bt,πt)下的概率P(o|λ),反復(fù)訓(xùn)練,直到該概率值收斂,此時(shí)的H MC模型即可以用來評(píng)估軟件可維護(hù)性狀態(tài)。

        令Pj(t)=P(qt=j)表示軟件維護(hù)性在t時(shí)刻處于j狀態(tài)的概率。根據(jù)切普曼-科爾莫哥洛夫微分方程,可以得到P′(t)=P(t)A,求解該微分方程可以分別得到軟件維護(hù)性處于3種狀態(tài)的概率P(s0),P(s1),P(s2)。通過這3種狀態(tài)概率可以對(duì)軟件的維護(hù)性進(jìn)行評(píng)估。

        3 實(shí)例驗(yàn)證

        3.1維護(hù)性數(shù)據(jù)收集與模型求解

        “美騰”是我課題組自行開發(fā)的虛擬維修訓(xùn)練軟件,包含系統(tǒng)登錄、信息建模以及信息管理等12個(gè)模塊,其版本已更新至V3.0。

        在V2.0至V3.0的更新開發(fā)過程中,以“訓(xùn)練內(nèi)容”模塊為例,在配置管理工具中對(duì)每次維護(hù)都記錄了檢出(Check out)和檢入(Check in)時(shí)間,與開發(fā)維護(hù)人員的溝通,剔除自然時(shí)間中的非工作時(shí)間,得到檢出和檢入時(shí)間差作為進(jìn)行一次維護(hù)的實(shí)際工作時(shí)間,實(shí)際數(shù)據(jù)的處理過程如下:其檢出時(shí)間為2010.04.08 09:18,檢入時(shí)間為2010.04.08 16:30,通過與開發(fā)人員的溝通,每天工作時(shí)間8小時(shí),上班時(shí)間為上午八點(diǎn)到十二點(diǎn),下午兩點(diǎn)到六點(diǎn),實(shí)際工作時(shí)間為:

        2010.04.08 09:18到2010.04.08 12:00;

        得到此次維護(hù)的維護(hù)時(shí)間為5小時(shí)。而維護(hù)計(jì)劃時(shí)間為8小時(shí),容忍時(shí)間為2小時(shí),因此該模型的可維護(hù)性狀態(tài)屬于易維護(hù)。對(duì)該模塊的維護(hù)記錄數(shù)據(jù)收集如表2所示。

        由表中數(shù)據(jù)可以統(tǒng)計(jì)出,該模塊的可維護(hù)性處于3種狀態(tài)的概率分別為P(s0)=60%,P(s1)=30%,P(s2)=10%。將π0=(0.6,0.3,0.1)作為初始狀態(tài)概率代入式(4),利用參數(shù)重估公式(5)對(duì)模型進(jìn)行訓(xùn)練,得到反映實(shí)際維護(hù)性狀態(tài)轉(zhuǎn)移的H MC模型。運(yùn)用訓(xùn)練好的模型對(duì)各模塊的后10次維護(hù)過程進(jìn)行跟蹤對(duì)比驗(yàn)證,結(jié)果如表3所示。

        表2 “訓(xùn)練內(nèi)容”模塊維護(hù)時(shí)間數(shù)據(jù)收集

        表3 評(píng)估結(jié)果分析

        3.2結(jié)果分析

        從計(jì)算結(jié)果中可看出,模型所預(yù)測(cè)出的軟件維護(hù)性狀態(tài)概率與實(shí)際維護(hù)進(jìn)程中軟件的可維護(hù)性狀態(tài)概率基本一致,所測(cè)試的軟件模塊處于易維護(hù)性狀態(tài)。

        4 結(jié)論

        針對(duì)軟件維護(hù)性定量評(píng)估依賴主觀經(jīng)驗(yàn)多,可操作性弱,評(píng)估穩(wěn)定度低下的問題,提出了一種軟件維護(hù)性評(píng)估的新方法。建立可維護(hù)性狀態(tài)轉(zhuǎn)移模型,不僅能夠?qū)S護(hù)進(jìn)程中的不確定信息進(jìn)行處理,同時(shí),該模型能夠充分利用反映維護(hù)性外部表現(xiàn)的歷史維護(hù)數(shù)據(jù)和軟件規(guī)模、復(fù)雜度等軟件自身的設(shè)計(jì)特性對(duì)軟件系統(tǒng)進(jìn)行合理的評(píng)估。實(shí)例分析表明,本文提出的方法是有效的,易于實(shí)施且具有可重復(fù)性。

        [1]Oman P.and Hagemeister J.Metrics for Assessing a Software System's Maintainability[A].In proceedings of Conference on Software Maintenance[C].IEEE,1992.

        [2]Misra,S.C..Modeling design/coding factors that drive maintainability of software systems[J].Software Quality Journal 13(3),2005:297-320.

        [3]Thwin,M.M.T.,Quah,T.S..Application of neural networks for software quality prediction using object-oriented metrics[J]. Journal of Systems and Software 76(2),2005:147-156.

        [4]Fenton N E,Krause Paul Neil M.Software measurement:uncertainty and causal modeling[J].IEEE Software 19(4),2002:116-122.

        [5]Sussy B,Jose A,Gonzalo C,eta al.Critical success factors taxonomy for software process deployment[J].Software Qual J,2014(22):21-48.

        [6]吳軍,邵新宇,鄧超.隱馬爾可夫鏈模型在裝備運(yùn)行可靠性預(yù)測(cè)中的應(yīng)用[J].中國(guó)機(jī)械工程,2010,21(19):2345-2349.

        [7]蔡金錠,鄢仁武.ARMA雙譜分析與離散隱馬爾可夫模型在電力電子電路故障診斷中的應(yīng)用[J].中國(guó)電機(jī)工程學(xué)報(bào),2010,30(24):54-60.

        [8]黃景德,郝學(xué)良,黃義.基于改進(jìn)H MM的潛在電子故障狀態(tài)識(shí)別模型[J].儀器儀表學(xué)報(bào),2011,32(11):2481-2486.

        [9]冷曉艷,劉宇,段俊斌,等.裝備軟件綜合保障研究[J].計(jì)算機(jī)測(cè)量與控制,2013,21(10):2750-2752.

        [10]杜晶,楊葉,王青,等.基于證據(jù)的可信軟件過程評(píng)估方法[J].計(jì)算機(jī)科學(xué)與探索,2011,5(6):501-512.

        [11]李明樹,楊秋松,翟健.軟件過程建模方法研究[J].軟件學(xué)報(bào),2009,20(3):524-545.

        Software Maintainability Modeling and Assessment Method Research Based on Hidden Markov Chain Model

        Hao Xueliang,Zhu Xiaodong,Ye Fei
        (Ordnance Engineering College,Shijiazhuang050003,China)

        In order to meet the demand of software maintainability assessment,three-state probability description method was put forward.Hidden Markov Chain model was introduced to estimate maintainability of three-state software,and state transform model was built up.Historical maintenance time of software module was collected from configuration management database to ascertain frequency of success maintenance so as to estimate software maintainability.Affecting factors set value was computed through Fuzzy inference theory.The estimation model was trained and validated through real software case,and the result shows that this method is feasible and repeatable,and can be further studied.

        software maintainability;hidden Markov chain model;fuzzy inference;information fusion;software maintainability assessment

        1671-4598(2016)05-0284-03

        10.16526/j.cnki.11-4762/tp.2016.05.078

        TP311.5

        A

        2015-09-01;

        2015-12-08。

        裝備部重點(diǎn)預(yù)研項(xiàng)目“軟件保障技術(shù)”(編號(hào)不公開)。

        郝學(xué)良(1984-),男,河北省邯鄲市人,博士研究生,主要從事軟件工程理論與應(yīng)用技術(shù)方向研究。

        猜你喜歡
        概率狀態(tài)軟件
        第6講 “統(tǒng)計(jì)與概率”復(fù)習(xí)精講
        禪宗軟件
        英語文摘(2021年10期)2021-11-22 08:02:26
        第6講 “統(tǒng)計(jì)與概率”復(fù)習(xí)精講
        概率與統(tǒng)計(jì)(一)
        概率與統(tǒng)計(jì)(二)
        狀態(tài)聯(lián)想
        軟件對(duì)對(duì)碰
        生命的另一種狀態(tài)
        熱圖
        家庭百事通(2016年3期)2016-03-14 08:07:17
        堅(jiān)持是成功前的狀態(tài)
        山東青年(2016年3期)2016-02-28 14:25:52
        在线看亚洲一区二区三区| 老熟女高潮一区二区三区| 亚洲成成品网站源码中国有限公司| 亚洲三区二区一区视频| 国产偷拍盗摄一区二区| 亚洲一区二区三区在线看| 精人妻无码一区二区三区| 免费无码一区二区三区蜜桃| 美女自卫慰黄网站| 亚洲美女国产精品久久久久久久久| 亚洲视频在线免费观看一区二区 | 国产一区二区三区啪| 男人的av天堂狠狠操| 在线视频观看一区二区| 亚洲 日本 欧美 中文幕| 最近最新中文字幕| 久久精品国产亚洲黑森林| 亚洲av成人久久精品| 一本色道久久亚洲加勒比| 乱中年女人伦av一区二区| 最近中文字幕视频高清| 在线偷窥制服另类| 加勒比av在线一区二区| 日本护士xxxxhd少妇| 亚洲成色在线综合网站| 人妻 色综合网站| 亚洲中文字幕无码永久在线| 亚洲AV无码一区二区一二区教师| 日本免费一区二区精品| 蜜桃视频免费进入观看| 成人午夜福利视频镇东影视| 亚洲Av午夜精品a区| 亚洲综合网中文字幕在线| 国产三级视频不卡在线观看| 色777狠狠狠综合| 亚洲成人观看| 国产一级r片内射视频播放| 亚洲一区二区三区日本久久九 | 国产成人一区二区三区| 嗯啊好爽高潮了在线观看| 中文字幕免费不卡二区|