国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

不完美排錯(cuò)下測(cè)試覆蓋相關(guān)的軟件可靠性模型

2021-05-06 14:38張策呂為工邱忠銀高天翼江文倩孟凡超

張策 呂為工 邱忠銀 高天翼 江文倩 孟凡超

摘 ? 要:準(zhǔn)確的建模軟件可靠性并對(duì)可靠性趨勢(shì)進(jìn)行有效地度量與預(yù)測(cè),對(duì)于軟件開(kāi)發(fā)至關(guān)重要,越靠近軟件測(cè)試的真實(shí)過(guò)程,所提出的不完美排錯(cuò)模型就應(yīng)該考慮并融入更多具體的影響因素,建立構(gòu)成要素間更加精準(zhǔn)的軟件可靠性增長(zhǎng)模型SRGM. 考慮故障檢測(cè)、修復(fù)與引入三個(gè)子過(guò)程之間的內(nèi)在聯(lián)系,建立統(tǒng)一的、柔韌的不完美排錯(cuò)框架模型TCM-ID,對(duì)累積檢測(cè)、修復(fù)與引入的故障數(shù)量之間的關(guān)聯(lián)實(shí)施研究,從故障檢測(cè)率、故障修復(fù)率、故障引入率角度衡量軟件測(cè)試的整體功效. 進(jìn)一步,從測(cè)試覆蓋的角度,建立測(cè)試覆蓋函數(shù)相關(guān)的可靠性模型,以便于研究其對(duì)模型的擾動(dòng)影響,用以評(píng)測(cè)模型的性能. 最后,在真實(shí)的應(yīng)用場(chǎng)景下進(jìn)行驗(yàn)證所提出模型的有效性與合理性,模型具有較好的擬合與預(yù)測(cè)性能,整體上優(yōu)于其他模型. 本文所提出的模型,對(duì)于選擇合適的不完美排錯(cuò)下測(cè)試覆蓋相關(guān)的軟件可靠性增長(zhǎng)模型,以及提高測(cè)試效率與軟件可靠性具有重要意義.

關(guān)鍵詞:軟件可靠性;軟件可靠性增長(zhǎng)模型;不完美排錯(cuò);測(cè)試覆蓋;框架模型

中圖分類(lèi)號(hào):TP311 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)志碼:A

Testing Coverage Software Reliability Model under Imperfect Debugging

ZHANG Ce,L?Weigong,QIU Zhongyin,GAO Tianyi,JIANG Wenqian,MENG Fanchao

(School of Computer Science and Technology,Harbin Institute of Technology at Weihai,Weihai ?264209,China)

Abstract:Accurate modeling of software reliability and effective measurement and prediction of reliability trends are critical to software development. The closer to the real process of software testing the model gets, the more specific factors should be considered and integrated into the imperfect debugging model, and the software reliability growth model (SRGM) with more accurate factors should be built. Considering the intrinsic relationships among the three sub-processes including fault detection, repair and introduction, a unified and flexible imperfect debugging framework model TCM-ID is established to study the relationships among cumulative detection, repair and introduced faults. The overall efficiency of the software test is measured from the perspective of fault detection rate, fault repair rate and fault introduction rate. Further, from the perspective of test coverage, a reliability model TCM-ID (Testing Coverage Software Reliability Model under Imperfect Debugging) is established to discuss its perturbation effect on the model and to evaluate the performance of the model. Finally, the validity and rationality of the proposed model are verified in real application scenarios. The model has better fitting and prediction performance, and it is better than other models overall. The model proposed in this paper is of great significance for selecting the appropriate SRGM for the test coverage under the imperfect debugging conditions and improving the test efficiency and software reliability.

Key words:software reliability;software reliability growth model(SRGM);imperfect debugging;testing coverage;framework model

軟件測(cè)試是軟件可靠性不斷增長(zhǎng)的過(guò)程,是提高可靠性必不可少的關(guān)鍵環(huán)節(jié). 軟件測(cè)試過(guò)程是軟件測(cè)試人員在某種測(cè)試環(huán)境下,按照預(yù)定的測(cè)試策略或計(jì)劃,執(zhí)行測(cè)試案例,發(fā)現(xiàn)與檢測(cè)軟件運(yùn)行過(guò)程中的失效,定位、收集和記錄故障,并進(jìn)行故障修復(fù)的過(guò)程. 整個(gè)過(guò)程大致由三個(gè)部分組成,即故障檢測(cè)過(guò)程FDP(Fault Detection Process)、故障分析過(guò)程FAP(Fault Analysis Process)和故障修復(fù)過(guò)程FCP(Fault Correction Process)[1]. 圖1描述了軟件測(cè)試與排錯(cuò)過(guò)程,可以看出,隨著故障被不斷的檢測(cè)和修復(fù),軟件的可靠性得到持續(xù)提高.

由于軟件測(cè)試與排錯(cuò)的復(fù)雜性、隨機(jī)性和不確定性[2-5],檢測(cè)到的故障在修復(fù)階段可能沒(méi)有成功排除,出現(xiàn)排錯(cuò)的不完全現(xiàn)象,如圖1中上面的反饋線(xiàn);另外,在故障的修復(fù)過(guò)程中,由于程序的內(nèi)在結(jié)構(gòu)邏輯可能被破壞,從而存在引入新故障的可能[6-7],如圖1中下面的反饋線(xiàn). 包括這兩種情況等實(shí)際測(cè)試情況在內(nèi)的復(fù)合現(xiàn)象通常被稱(chēng)為不完美排錯(cuò)現(xiàn)象. 因此,不完美排錯(cuò)[5,8-12]是更加靠近真實(shí)軟件測(cè)試過(guò)程的研究,能夠描述更多的實(shí)際情形,得到了科研人員的重視. 軟件可靠性增長(zhǎng)模型SRGM(Software Reliability and Growth Model)[13-15]可用來(lái)對(duì)軟件測(cè)試過(guò)程進(jìn)行建模,通過(guò)數(shù)學(xué)手段來(lái)定量描述故障檢測(cè)、修復(fù)等關(guān)系,是對(duì)軟件可靠性進(jìn)行有效度量與預(yù)測(cè)的重要工具. 在現(xiàn)有SRGM研究看來(lái),不完美排錯(cuò)是對(duì)實(shí)際軟件測(cè)試過(guò)程的一種近似抽象,包括排錯(cuò)的不徹底現(xiàn)象[16]、引入新故障現(xiàn)象[9-10]或者是軟件中總故障數(shù)量a(t)的不斷增長(zhǎng)現(xiàn)象[17]. 這些研究從不同角度和內(nèi)容對(duì)測(cè)試過(guò)程進(jìn)行了不完美排錯(cuò)建模,有力地推動(dòng)了SRGM的發(fā)展,但對(duì)不完美排錯(cuò)的全面準(zhǔn)確描述還不夠深入. 例如,很多大型軟件的測(cè)試過(guò)程中,故障排錯(cuò)的不完全與引入新故障通常是同時(shí)存在的,二者相互交織在一起. 從測(cè)試覆蓋角度來(lái)看,包括經(jīng)典的G-O(Goel L - Okumoto K)模型[18-19]在內(nèi)的很多完美排錯(cuò)和不完美排錯(cuò)模型,均默認(rèn)或假定測(cè)試覆蓋滿(mǎn)足100%,但顯然這是不切合實(shí)際的. 測(cè)試覆蓋針對(duì)程序結(jié)構(gòu)進(jìn)行測(cè)試策略下的測(cè)試,涵蓋語(yǔ)句覆蓋、分支覆蓋、條件覆蓋、路徑覆蓋、數(shù)據(jù)流覆蓋、函數(shù)覆蓋、調(diào)用覆蓋,因此從測(cè)試覆蓋的角度研究可靠性可以更加細(xì)膩地剖析可靠性的變動(dòng). 事實(shí)上,軟件測(cè)試過(guò)程是較為復(fù)雜的隨機(jī)過(guò)程. 為了得到更加有效的可靠性模型,就需要對(duì)測(cè)試過(guò)程中的隨機(jī)因素加以考慮.

本文在現(xiàn)有研究的基礎(chǔ)上提出一種全面考慮不完美排錯(cuò)的軟件可靠性過(guò)程分析方法,明確考慮到了測(cè)試覆蓋,所提出的模型能夠更加準(zhǔn)確地描述軟件測(cè)試過(guò)程.

文章結(jié)構(gòu)安排如下:第1節(jié)對(duì)考慮真實(shí)測(cè)試過(guò)程的不完美排錯(cuò)進(jìn)行建模,提出了一種不完美排錯(cuò)下測(cè)試覆蓋相關(guān)的軟件可靠性增長(zhǎng)框架模型,進(jìn)而給出了具體的測(cè)試覆蓋函數(shù)相關(guān)的可靠性模型;第2節(jié)通過(guò)公開(kāi)發(fā)表的失效數(shù)據(jù)集驗(yàn)證了所提出模型的有效性與合理性. 最后總結(jié)了全文,并指出后續(xù)研究方向.

1 ? 不完美排錯(cuò)下測(cè)試覆蓋相關(guān)的軟件可靠性

增長(zhǎng)框架模型

1.1 ? 基本假設(shè)

基于對(duì)測(cè)試環(huán)境的認(rèn)知,遵循SRGM研究所作假設(shè)的常規(guī)共識(shí),考慮測(cè)試覆蓋下的不完美排錯(cuò)模型假設(shè)如下[18,20-24]:

1)軟件失效隨機(jī)發(fā)生,故障檢測(cè)與修復(fù)過(guò)程服從非齊次泊松過(guò)程N(yùn)HPP(Non-Homogeneous Poisson Process)[12,18,25],即到t時(shí)刻累積檢測(cè)出的故障數(shù)N(t)服從期望函數(shù)為m(t)的NHPP分布,滿(mǎn)足m(t=0)=0,則利用NHPP基本性質(zhì),能夠得到t時(shí)刻檢測(cè)到k個(gè)故障的概率以及m(t)與故障檢測(cè)率λ(t)的基本關(guān)系:

Pr [N(t)=k]=,k = 0,1,2,… ? ?(1)

m(t) = λ(τ)dτ ? ? ? (2)

2)軟件失效由軟件中剩余的故障引發(fā);

3)在時(shí)間區(qū)間(t,t+Δt)內(nèi),最多發(fā)生一個(gè)故障,且所檢測(cè)到的故障數(shù)量與當(dāng)前剩余的故障總數(shù)成比例;

4)在時(shí)間區(qū)間(t,t+Δt)內(nèi),被修復(fù)的故障數(shù)量與被檢測(cè)的故障數(shù)量成比例;

5)故障修復(fù)的過(guò)程中,存在引入新故障的現(xiàn)象,引入的故障數(shù)量與累積修復(fù)的故障數(shù)量成比例.

1.2 ? 不完美測(cè)試框架模型

令m(t)和r(t)分別表示截止至t時(shí)刻累積檢測(cè)到和修復(fù)的故障數(shù)量,a(t)表示t時(shí)刻軟件中總的故障數(shù)量. 則基于上述假設(shè),建立了下面的基于故障檢測(cè)率函數(shù)b(t)、故障修復(fù)函數(shù)p(t)和新故障引入函數(shù)γ(t)的故障檢測(cè)、修復(fù)與引入模型,如式(3)所示.

式(3)中第一個(gè)方程基于第三條假設(shè),描述了t時(shí)刻檢測(cè)的故障數(shù)量與剩余故障數(shù)量的關(guān)系;第二個(gè)方程基于第五條假設(shè),從t時(shí)刻新增加的故障角度建立了總故障個(gè)數(shù)a(t)的表達(dá)式;第三個(gè)方程基于第四條假設(shè),對(duì)Δt時(shí)間內(nèi)檢測(cè)的故障數(shù)量與修復(fù)的故障數(shù)量進(jìn)行建模.

b(t)是故障檢測(cè)率,表示測(cè)試人員在測(cè)試環(huán)境下運(yùn)用測(cè)試技術(shù)檢測(cè)出故障的概率,其可以從多種角度來(lái)進(jìn)行設(shè)定. 當(dāng)考慮測(cè)試覆蓋時(shí),故障檢測(cè)率b(t)可表示如下:

c(t)表示截止至t時(shí)刻已經(jīng)被(測(cè)試案例)測(cè)試的代碼所占的百分比;1 - c(t)表示到t時(shí)刻尚未被測(cè)試的代碼所覆蓋的比例. 顯然,c(t)的導(dǎo)數(shù)c′(t),則表示t時(shí)刻點(diǎn)上的測(cè)試覆蓋率. 易知,故障檢測(cè)率FDR(Fault Detection Rate)[26]與c′(t)成正比例,且與1-c(t)成反比例,b(t) = c′(t)/[1 - c(t)]. r(t)表示新故障引入率,p(t)表示t時(shí)刻故障被成功修復(fù)的比例函數(shù).

此微分方程組的邊界條件為:

m(0) = 0r(0) = 0a(0) = a ? ? ? ? (5)

這里,采用如下過(guò)程進(jìn)行求解,為方便令:

至此,完成了測(cè)試覆蓋函數(shù)下考慮故障不完全修復(fù)與新故障引入的不完美測(cè)試框架模型的構(gòu)建,得到了SRGM研究中重要的關(guān)鍵內(nèi)容:m(t)、r(t)和a(t). 從測(cè)試過(guò)程的整體來(lái)看,截止t時(shí)刻,累積修復(fù)的故障數(shù)量r(t)小于等于累積檢測(cè)的故障數(shù)量m(t),m(t)小于軟件中故障總數(shù). 將上述模型簡(jiǎn)記為T(mén)CM-ID(Testing Coverage Software Reliability Model under Imperfect Debugging).

測(cè)試階段的軟件可靠性表示為R(x|T),即假定軟件上一次失效時(shí)間是T (T≥0,x>0),依據(jù)NHPP基本性質(zhì),可得在(T,T+x)內(nèi)的軟件可靠性表示為:

若假定從T=0開(kāi)始,則m(t)=0,將式(15)代入式(19),則可以得到更易理解的可靠性R(x),如式(20)所示:

1.3 ? 關(guān)于模型的柔韌型討論

TCM-ID采用微分方程組的形式對(duì)不完美排錯(cuò)下的測(cè)試過(guò)程進(jìn)行建模,其中融入了故障排錯(cuò)率p(t)、故障檢測(cè)率b(t)和新故障引入率λ(t),因此求解得到的m(t)、r(t)和a(t)是多參數(shù)的融合體. 為此,可以看出該模型是具有較強(qiáng)柔韌性的框架模型,可以支持一系列的不完美排錯(cuò)相關(guān)的具體模型的構(gòu)建.

1)采用方程組的形式建立了不完美排錯(cuò)相關(guān)的軟件可靠性模型;

2)關(guān)鍵的故障數(shù)量表達(dá)式(m(t)、c(t)和a(t))均是通過(guò)求解得出,且具體由3個(gè)參變量函數(shù)來(lái)決定,即故障檢測(cè)率b(t)、故障排錯(cuò)概率p(t)以及故障引入率λ(t),這些參變量函數(shù)可根據(jù)實(shí)際情況進(jìn)行設(shè)定,這為模型的框架性、統(tǒng)一性和柔韌性提供了支撐,為SRGM所關(guān)注的m(t)等信息提供了更為客觀的依據(jù),從而使其更加直接地受制于實(shí)際因素;

3)故障修復(fù)過(guò)程中存在故障的引入,因此,單位時(shí)間內(nèi)新增加的故障數(shù)量應(yīng)與累積修復(fù)的故障數(shù)量成比例.

1.4 ? 測(cè)試覆蓋函數(shù)視角下TCM-ID

故障檢測(cè)率FDR:b(t)是可靠性建模中必不可少的構(gòu)成元素,其描述了測(cè)試環(huán)境下故障被檢測(cè)出來(lái)的能力. 當(dāng)前研究中以人為設(shè)定FDR為某種函數(shù)為主,且為求解簡(jiǎn)便,多以b(t)=b為常見(jiàn). 顯然,由于測(cè)試環(huán)境的復(fù)雜性,測(cè)試階段、測(cè)試策略等因素的不同會(huì)使FDR呈現(xiàn)多種變化形式. 文獻(xiàn)[27-28]認(rèn)為測(cè)試覆蓋函數(shù)與FDR緊密相關(guān),可以成為FDR建模的元素,并提出c′(t)/(1-c(t))可用來(lái)度量t時(shí)刻的故障檢測(cè)率b(t). c′(t)描述了測(cè)試用例[29]的執(zhí)行情況,通過(guò)c(t)的變動(dòng)可以獲得不同的FDR函數(shù). 這樣,可以得到下述的不完美排錯(cuò)過(guò)程模型:

依據(jù)上述求解過(guò)程進(jìn)行求解,可以得到測(cè)試覆蓋函數(shù)下的不完美測(cè)試模型中的m(t):

至此,從測(cè)試覆蓋函數(shù)c(t)的角度得到了SRGM研究中的關(guān)鍵待求變量m(t). 通過(guò)設(shè)定各類(lèi)測(cè)試覆蓋函數(shù)c(t),可以得到一系列相關(guān)的m(t). 為簡(jiǎn)化計(jì)算,不妨令p(t) = p,γ(t) = γ. 這里令a(t) = (1 - e-btc)[30],則可求得m(t)如下:

可以看出,本文所提出的模型在測(cè)試覆蓋函數(shù)視角下,將可靠性研究由傳統(tǒng)的FDR相關(guān)演進(jìn)為不完美排錯(cuò)下測(cè)試覆蓋相關(guān)的可靠性模型.

2 ? 數(shù)值算例

2.1 ? 參與比較的模型

這里選定了一系列典型的不完美排錯(cuò)模型參與比較,以對(duì)比模型之間的性能差異,如表1所示.

選取4個(gè)已被廣泛用來(lái)進(jìn)行驗(yàn)證可靠性模型性能的失效數(shù)據(jù)集DS1[24],DS2[35],DS3[36],DS4[22],它們均來(lái)自國(guó)際知名公司在系統(tǒng)開(kāi)發(fā)過(guò)程中所搜集的軟件測(cè)試失效數(shù)據(jù),具有廣泛的代表性,可以表征多樣的軟件測(cè)試場(chǎng)景;同時(shí),選取通過(guò)可靠性過(guò)程仿真獲得的失效數(shù)據(jù)集DS5[37]進(jìn)行同步驗(yàn)證,該數(shù)據(jù)集來(lái)自基于率函數(shù)對(duì)不完美排錯(cuò)下的軟件測(cè)試情況進(jìn)行仿真,更加靠近真實(shí)情況.

2.2 ? 比較標(biāo)準(zhǔn)

采用均方誤差值(Mean Square Error,MSE),Variation,RMS-PE和回歸曲線(xiàn)方程的相關(guān)指數(shù)(R-square)度量曲線(xiàn)擬合效果,利用相對(duì)誤差(Relative Error,RE)度量模型的預(yù)測(cè)能力.

式中:yi表示到ti時(shí)累積的失效個(gè)數(shù),m(ti)表示到ti時(shí)利用模型得到的估算值,k表示失效數(shù)據(jù)樣本數(shù)量. 顯然,MSE,Variance,RMS-PE和BMMRE的值越小,R-square值越接近于1,擬合效果越好;RE越趨近于0,模型預(yù)測(cè)效果越好.

2.3 ? 性能驗(yàn)證

為了驗(yàn)證所提出模型的有效性,將表1中的模型在5個(gè)公開(kāi)發(fā)表的真實(shí)數(shù)據(jù)集DS1~DS5上進(jìn)行實(shí)驗(yàn). 基于擬合得到的參數(shù)值,計(jì)算5個(gè)失效數(shù)據(jù)中不同時(shí)刻各個(gè)模型的m(t),繪制出m(t)與真實(shí)失效數(shù)據(jù)間的擬合曲線(xiàn),如圖2所示.

從圖2可以直觀看出:

1)在DS1、DS2、DS4和DS5上,個(gè)別模型已經(jīng)嚴(yán)重偏離真實(shí)的失效曲線(xiàn)(M-1模型與DS1、DS2、DS4和DS5上的失效數(shù)據(jù)曲線(xiàn)走勢(shì)嚴(yán)重不符;M-3模型在DS2和DS4上也產(chǎn)生了同樣的情況),表明模型已經(jīng)嚴(yán)重失真. 在DS3上參與比較的模型,在整體趨勢(shì)上與真實(shí)的失效數(shù)據(jù)相一致;

2)在DS5上,本文所提出的模型同樣表現(xiàn)出優(yōu)秀性能,與失效數(shù)據(jù)曲線(xiàn)走勢(shì)保持一致,重疊度高;

3)在所有5個(gè)數(shù)據(jù)集上,本文提出的模型TCM-ID與真實(shí)的失效數(shù)據(jù)曲線(xiàn)有較高程度的重合,這表明該模型具有較好的擬合性能.

為了進(jìn)一步區(qū)分不同模型的性能差異,這里定量化地計(jì)算并列出了各模型在5個(gè)擬合標(biāo)準(zhǔn)上的數(shù)值,如表2所示.

從表2可以直觀看到,與圖2曲線(xiàn)相一致,個(gè)別模型的擬合指標(biāo)數(shù)值不理想,反映出其性能較差(M-1模型在DS1、DS2和DS4上性能欠佳;M-3模型在DS2和DS4上也有同樣的情況). 在DS2數(shù)據(jù)集上,本文所提出的模型在4個(gè)指標(biāo)上均優(yōu)于其他模型(MSE,Variance,RMS-PE,BMMRE數(shù)值越小表明模型性能越好:R-square越接近于1表明模型性能越好),并在數(shù)值上具有明顯的比較優(yōu)勢(shì),顯示出了該模型優(yōu)異的性能. 在DS3上,所提出的模型TCM-ID在前4個(gè)指標(biāo)上同樣表現(xiàn)出了優(yōu)秀的性能;在BMMRE指標(biāo)上與其他模型處于相同量級(jí),沒(méi)有出現(xiàn)明顯的差異,綜合來(lái)看,可以表明模型TCM-ID具有優(yōu)秀的性能. 在DS4上,M-5和本文所提出的模型均表現(xiàn)出了優(yōu)異的性能,二者在數(shù)值上較為接近,處于同一數(shù)量級(jí)別(M-5在MSE,Variance,RMS-PE這3個(gè)指標(biāo)上略?xún)?yōu)于TCM-ID,TCM-ID在R-square和BMMRE上優(yōu)于M-5),顯示出了TCM-ID的良好性能;綜合全部數(shù)據(jù)集來(lái)看,M-5僅僅在DS4上表現(xiàn)優(yōu)秀,表明該模型具有很強(qiáng)的不穩(wěn)定性能,難以適應(yīng)更多的數(shù)據(jù)集. 因此TCM-ID的性能要明顯優(yōu)于M-5. 同樣,M-4也僅僅在DS1上顯示出了優(yōu)秀的性能,同樣具有較強(qiáng)的隨機(jī)性,不如本文所提出的模型具有在多個(gè)數(shù)據(jù)集上連續(xù)優(yōu)秀的穩(wěn)定性. 在仿真失效數(shù)據(jù)集DS5上,TCM-ID在5個(gè)具體的指標(biāo)上均優(yōu)于其他7個(gè)模型,同樣顯示出了優(yōu)秀的性能. DS5來(lái)自于對(duì)不完美排錯(cuò)軟件測(cè)試過(guò)程的仿真,這與本文建立的不完美測(cè)試框架模型具有一致性,對(duì)更加靠近真實(shí)故障檢測(cè)、修復(fù)與引入的實(shí)際情況進(jìn)行了準(zhǔn)確描述.

綜上可以看出,本文所提出的模型TCM-ID能夠保持連貫的穩(wěn)定性能,在全部失效數(shù)據(jù)集上或者處于最優(yōu)或者處于良好(且與某個(gè)數(shù)據(jù)集上表現(xiàn)優(yōu)秀的模型之間差異較?。? 這種原因可以解釋為:

1)TCM-ID在建模中充分考慮到了排錯(cuò)的不完全性與排錯(cuò)過(guò)程中存在新故障引入這種真實(shí)存在的客觀現(xiàn)象,將更多的軟件測(cè)試過(guò)程中的隨機(jī)性納入到模型中,將不完美排錯(cuò)用微分方程進(jìn)行了準(zhǔn)確的建模. 相比之下,M-4與M-5模型因缺少對(duì)真實(shí)不完美排錯(cuò)因素的考慮,或者僅從不完全排錯(cuò)或新故障引入某個(gè)單一方面建模,導(dǎo)致它們僅能在個(gè)別數(shù)據(jù)集上表現(xiàn)優(yōu)秀.

2)在測(cè)試覆蓋方面,本文的模型在建模過(guò)程中引入了測(cè)試覆蓋函數(shù),用以描述和建模測(cè)試過(guò)程中故障被測(cè)試覆蓋從而被檢測(cè)出來(lái)的程度,更加精準(zhǔn)地刻畫(huà)了真實(shí)測(cè)試的情形;相比之下,其他模型認(rèn)為測(cè)試覆蓋是100%,這與真實(shí)的測(cè)試過(guò)程并不相符.

所有這些差異,使得其他模型的綜合性能劣于本文所提出的模型.

關(guān)于模型的預(yù)測(cè)性能,圖3分別繪制了不同模型在5個(gè)失效數(shù)據(jù)集上的相對(duì)誤差RE曲線(xiàn). 整體上看,在失效數(shù)據(jù)集的后半程時(shí)間內(nèi),模型開(kāi)始進(jìn)行快速地收斂,逐漸向著0曲線(xiàn)靠攏,表明其預(yù)測(cè)性能在提高. 從圖3可以看出,本文所提出的模型能夠較好地向著0曲線(xiàn)收縮,特別是在測(cè)試時(shí)間過(guò)半之后收縮速度明顯加快.

至此,從圖2、圖3和表2可以看出,本文所提出的模型充分考慮到了軟件測(cè)試與排錯(cuò)過(guò)程的不完美特點(diǎn),并將測(cè)試覆蓋作為重要的影響因素進(jìn)行考慮,所建立的模型具有較好的擬合與預(yù)測(cè)性能,整體上優(yōu)于其他模型.

3 ? 結(jié)論與下一步研究?jī)?nèi)容

針對(duì)測(cè)試環(huán)境的復(fù)雜性和隨機(jī)性,以及當(dāng)前研究所做假設(shè)偏離實(shí)際的問(wèn)題,本文建立了涵蓋故障檢測(cè)、修復(fù)和新故障引入的統(tǒng)一的不完美排錯(cuò)框架模型,模型中融入了測(cè)試覆蓋因素,使得測(cè)試中的實(shí)施細(xì)節(jié)得以在數(shù)學(xué)模型中呈現(xiàn),進(jìn)而從測(cè)試覆蓋的角度研究分類(lèi)模式下測(cè)試覆蓋的能力,對(duì)可靠性性能影響評(píng)測(cè)進(jìn)行了深入研究. 因考慮到更多真實(shí)測(cè)試的隨機(jī)性,本文所建立的模型不僅具有良好的柔韌性,在擬合與預(yù)測(cè)兩個(gè)方面也均具有較好的性能,整體上優(yōu)于其他模型. 后續(xù)研究中,還應(yīng)該深入鉆研軟件排錯(cuò)過(guò)程中的隨機(jī)性(包括多個(gè)測(cè)試階段內(nèi)的延遲、多種測(cè)試覆蓋類(lèi)型函數(shù)等),以及針對(duì)大型開(kāi)源軟件和復(fù)雜網(wǎng)絡(luò)軟件的測(cè)試階段可靠性建模與評(píng)測(cè),同時(shí)要采用人工神經(jīng)網(wǎng)絡(luò)、遺傳算法和隨機(jī)過(guò)程等數(shù)學(xué)工具建立更加精準(zhǔn)的驗(yàn)證模型.

參考文獻(xiàn)

[1] ? ?HUANG C Y ,HUANG W C . Software reliability analysis and measurement using finite and infinite server queueing models[J]. IEEE Transactions on Reliability,2008,57(1):192—203.

[2] ? ?許家俊,姚淑珍. 軟件可靠性增長(zhǎng)模型的不確定性量化研究[J]. 軟件學(xué)報(bào),2017,28(7):1746—1758.

XU J J,YAO S Z. Characterizing uncertainty of software reliability growth model[J]. Journal of Software,2017,28(7):1746—1758. (In Chinese)

[3] ? ?WANG J Y,ZHANG C. Software reliability prediction using a deep learning model based on the RNN encoder-decoder[J]. Reliability Engineering & System Safety,2018,170(2):73—82.

[4] ? ?PENG R,MA X Y,ZHAI Q Q,et al. Software reliability growth model considering first-step and second-step fault dependency[J]. Journal of Shanghai Jiaotong University (Science),2019,24(4):477—479.

[5] ? ?LI Q,PHAM H. A generalized software reliability growth model with consideration of the uncertainty of operating environments[J]. IEEE Access,2019,7:84253—84267.

[6] ? ?王金勇,張策,米曉萍,等. Weibull分布引進(jìn)故障的軟件可靠性增長(zhǎng)模型[J]. 軟件學(xué)報(bào),2019,30(6):1759—1777.

WANG J Y,ZHANG C,MI X P,et al. A software reliability growth model based on Weibull distribution introduced faults[J]. Journal of Software,2019,30(6):1759—1777 .(In Chinese)

[7] ? ?米曉萍,王金勇. 考慮排錯(cuò)過(guò)程引進(jìn)故障的開(kāi)源軟件可靠性模型研究[J]. 計(jì)算機(jī)應(yīng)用研究,2019,36(7):2070—2080.

MI X P,WANG J Y. Software reliability models for open source software considering correction process and fault introduction[J].Application Research of Computers,2019,36(7):2070—2080. (In Chinese)

[8] ? AGGARWAL A G,GANDHI N,VERMA V,et al. Multi-release software reliability growth assessment:an approach incorporating fault reduction factor and imperfect debugging[J]. International Journal of Mathematics in Operational Research,2019,15(4):446—463.

[9] ? ?KAPUR P K,PHAM H,ANAND S,et al. A unified approach for developing software reliability growth models in the presence of imperfect debugging and error generation[J]. IEEE Transactions on Reliability,2011,60(1):331—340.

[10] ?SINGH O,KAPUR R,SINGH J,Considering the effect of learning with two types of imperfect debugging in software reliability growth modeling[J]. Communications in Dependability and Quality Management,2010,13(4):29—39.

[11] ?SARAF I,LQBAL J. Generalized multi‐release modelling of software reliability growth models from the perspective of two types of imperfect debugging and change point[J].Quality & Reliability Engineering International. 2019,35(7):2358—2370.

[12] ?SARAF I,LQBAL J. Generalized software fault detection and correction modeling framework through imperfect debugging,error generation and change point[J]. International Journal of Information Technology,2019,11(4):751—757.

[13] ?張 策,孟凡超,考永貴,等. 軟件可靠性增長(zhǎng)模型研究綜述[J]. 軟件學(xué)報(bào),2017,28(9):2402—2430.

ZHANG C,MENG F C,KAO Y G,et al. Survey of software reliability growth model[J]. Journal of Software,2017,28(9):2402—2430.(In Chinese)

[14] ?ALMERING V,VAN GENUCHTEN M,CLOUDT G,et al. Using software reliability growth models in practice[J]. IEEE Software,2007,24(6):82—88.

[15] ?ERTO P,GIORGIO M,LEPORE A. The generalized inflection S-shaped software reliability growth model[J]. IEEE Transactions on Reliability,2020,69(1):228—244.

[16] ?GOSEVA-POPSTOJANOVA K,TRIVEDI K S. Failure correlation in software reliability models[J]. IEEE Trans on Reliability,2000,49(1):37—48.

[17] ?AHMAD N,KHAN M G M,RAFI L S. A study of testing-effort dependent inflection S-shaped software reliability growth models with imperfect debugging[J]. International Journal of Quality & Reliability Management,2010,27(1):89—110.

[18] ?GOEL L,OKUMOTO K. Time-dependent error-detection rate model for software reliability and other performance measures[J]. IEEE Transactions on Reliability,1979,R-28(3):206—211.

[19] ?SAMEERA M S,KANCHARLA G R,PRASAD R S. Software reliability measurement using combined Goel OKUMOTO and ANOM perfect debugging model[J]. Journal of Advanced Research in Dynamical and Control Systems,2019,11(S):780—787.

[20] ?CHIU K C,HUANG Y S,LEE T Z. A study of software reliability growth from the perspective of learning effects[J]. Reliability Engineering & System Safety,2008,93(10):1410—1421.

[21] ?HUANG C Y,LYU M R,KUO S Y. A unified scheme of some nonhomogenous poisson process models for software reliability estimation[J]. IEEE Transactions on Software Engineering,2003,29(3):261—269.

[22] ?PHAM H. Software reliability and cost models:perspectives,comparison,and practice[J]. European Journal of Operational Research,2003,149(3):475—489.

[23] ?PHAM H,NORDMANN L,ZHANG X. A general imperfect-software-debugging model with S-shaped fault-detection rate[J]. IEEE Transactions on Reliability,1999,48(2):169—175.

[24] ?WOOD A. Predicting software reliability[J]. Computer,1996,29(11):69—77.

[25] ?NAGARAJU V,WANDJI T,F(xiàn)IONDELLA L. Improved algorithm for non-homogeneous poisson process software reliability growth models incorporating testing-effort[J].International Journal of Performability Engineering. 2019,15(5):1265—1272.

[26] ?PHAM T,PHAM H. A generalized software reliability model with stochastic fault-detection rate[J]. Annals of Operations Research,2019,277(1):83—93.

[27] ?PHAM H,ZHANG X M. NHPP software reliability and cost models with testing coverage[J]. European Journal of Operational Research,2003,145(2):443—454.

[28] ?ANNIPRINCY B,SRIDHAR S. An efficient software reliability growth models with two types of imperfect debugging[J]. European Journal of Scientific Research,2012,72(4):490—503.

[29] ?鄒北驥,張保國(guó),李軍義,等. 基于形式規(guī)約的軟件測(cè)試用例自動(dòng)生成技術(shù)研究[J].湖南大學(xué)學(xué)報(bào)(自然科學(xué)版),2004,31(3):81—85.

ZOU B J,ZHANG B G,LI J Y,et al. Research on automatic test case generation based on form specification[J]. Journal of Hunan University (Natural Sciences),2004,31(3):81—85. (In Chinese)

[30] ?GOKHALE S S,PHILIP T,MARINOS P N,et al. Unification of finite failure non-homogeneous Poisson process models through test coverage[C]//Proceedings of ISSRE'96:7th International Symposium on Software Reliability Engineering. IEEE,1996:299—307.

[31] ?YAMADA S,TOKUNO K,OSAKI S. Imperfect debugging models with fault introduction rate for software reliability assessment[J]. International Journal of Systems Science,1992,23(12):2241—2252.

[32] ?PHAM H,ZHANG X. An NHPP software reliability model and its comparison[J]. International Journal of Reliability,Quality and Safety Engineering,1997,4(3):269—282.

[33] ?ZHANG X,TENG X,PHAM H. Considering fault removal efficiency in software reliability assessment[J]. IEEE Transactions on Systems,Man and Cybernetics,Part A:Systems and Humans,2003,33(1):114—120.

[34] ?OHBA M,CHOU X M. Does imperfect debugging affect software reliability growth?[C]// Proceedings of the 11th International Conference on Software Engineering. Pittsburgh,PA,USA:ACM,1989:237—244.

[35] ?STRINGFELLOW C,ANDREWS A A. An empirical method for selecting software reliability growth models[J]. Empirical Software Engineering,2002,7(4):319—343.

[36] ?ZHANG X,PHAM H. Software field failure rate prediction before software deployment[J]. Journal of Systems and Software,2006,79(3):291—300.

[37] ?ZHANG C,CUI G,BIAN Y L,et al. Component-based software reliability process simulation considering imperfect debugging[J]. High Technology Letter,2014,20(1):9—15.

收稿日期:2020-04-19

基金項(xiàng)目:國(guó)家自然科學(xué)基金資助項(xiàng)目(61473097),National Natural Science Foundation of China(61473097);山東省重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(GG201703130116,GG201703040002),Key Research and Development Project of Shandong Province(GG201703130116,GG201703040002);威海市科技發(fā)展計(jì)劃項(xiàng)目(ITEAZMZ001807),Weihai Science and Technology Development Plan Project(ITEAZMZ001807)

作者簡(jiǎn)介:張策(1978—),男,吉林永吉人,哈爾濱工業(yè)大學(xué)副教授,博士,碩士生導(dǎo)師

通信聯(lián)系人,E-mail:zhangce@hitwh.edu.cn

徐水县| 界首市| 泾阳县| 巴林左旗| 河曲县| 盐亭县| 房山区| 临武县| 舟曲县| 恩平市| 尖扎县| 伊吾县| 武强县| 通化市| 嘉荫县| 河北区| 若尔盖县| 鹤岗市| 邓州市| 岳阳县| 凤阳县| 涿州市| 福泉市| 甘孜县| 武穴市| 清徐县| 云浮市| 定远县| 凤庆县| 繁峙县| 天等县| 中西区| 铅山县| 莫力| 娄底市| 得荣县| 宜良县| 铜梁县| 嘉鱼县| 安新县| 南江县|