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

        ?

        基于軟件圈復(fù)雜度相關(guān)的不完美排錯(cuò)可靠性增長(zhǎng)模型*

        2019-11-28 03:09:52李耀敏
        艦船電子工程 2019年11期
        關(guān)鍵詞:測(cè)試人員開發(fā)人員復(fù)雜度

        張 峰 費(fèi) 琪 李耀敏

        (1.91404部隊(duì) 秦皇島 066000)(2.江蘇自動(dòng)化研究所 連云港 222061)(3.中船重工集團(tuán)第722研究所 武漢 430205)

        1 引言

        隨著社會(huì)的發(fā)展,產(chǎn)品變得越來越智能,部分硬件已被軟件完全代替,軟件在當(dāng)今社會(huì)發(fā)展中所占比重已遠(yuǎn)遠(yuǎn)超越硬件,且在產(chǎn)品事故率統(tǒng)計(jì)中,失效事件絕大多數(shù)都是由軟件失效引起的,故軟件的質(zhì)量在人們生活中已變得越來越重要,軟件可靠性直接影響著軟件質(zhì)量和開發(fā)成本[1~3],軟件可靠性評(píng)測(cè)的關(guān)鍵是構(gòu)建軟件可靠性模型,因此建立科學(xué)合理的評(píng)測(cè)模型便成為軟件評(píng)測(cè)中的關(guān)鍵問題。

        1970年Goel和Okumoto首次使用非齊次泊松過程(Non-Homogeneous Poisson Process,NHPP)描述軟件可靠性模型,G-O模型[3]。此后在此模型的基礎(chǔ)上,提出 了 很 多 新模型[4~15],包括 Delayed S-shaped 模 型[9]、Weibull-TEF 模 型[10]和 變型 S型-TEF模型[8]。通過對(duì)這些模型進(jìn)行分析,存在如下缺陷:

        1)在建立可靠性模型時(shí)未與軟件圈復(fù)雜度進(jìn)行關(guān)聯(lián),不同等級(jí)的圈復(fù)雜度對(duì)應(yīng)軟件的復(fù)雜程度不同,測(cè)試人員對(duì)此進(jìn)行檢測(cè)時(shí),檢測(cè)效率會(huì)不同,開發(fā)人員對(duì)相應(yīng)問題進(jìn)行排錯(cuò)時(shí),排錯(cuò)率及錯(cuò)誤引入率也會(huì)不同;

        2)在進(jìn)行可靠性建模時(shí),不能同時(shí)引入故障檢測(cè)率、錯(cuò)誤排除率、錯(cuò)誤引入率。

        軟件圈復(fù)雜度(Cyclomatic Complexity)是一種代碼復(fù)雜度的衡量標(biāo)準(zhǔn),在1976年由Thomas J.McCabe,Sr.提出[11]。在軟件測(cè)試的概念里,圈復(fù)雜度用來衡量一個(gè)模塊判定結(jié)構(gòu)的復(fù)雜程度,數(shù)量上表現(xiàn)為線性無關(guān)的路徑條數(shù),即合理的預(yù)防錯(cuò)誤所需測(cè)試的最少路徑條數(shù)。圈復(fù)雜度大說明程序代碼可能質(zhì)量低且難于測(cè)試和維護(hù),根據(jù)經(jīng)驗(yàn),程序的可能錯(cuò)誤和高的圈復(fù)雜度有著很大關(guān)系。

        本文依據(jù)圈復(fù)雜度的值將此劃分為三個(gè)等級(jí)低、中、高,針對(duì)不同等級(jí)的圈復(fù)雜度對(duì)應(yīng)的代碼狀況、可測(cè)性、維護(hù)成本、對(duì)測(cè)試人員測(cè)試能力要求及開發(fā)人員對(duì)問題的排錯(cuò)能力如表1所示。

        2 基于軟件圈復(fù)雜度相關(guān)的不完美排錯(cuò)可靠性增長(zhǎng)模型建立

        在構(gòu)建基于軟件的不完美排錯(cuò)非齊次泊松過程可靠性模型時(shí),需做如下假設(shè):

        1)軟件執(zhí)行的任務(wù)剖面與可靠性測(cè)試時(shí)所執(zhí)行的剖面相同;

        2)測(cè)試人員在任意時(shí)間序列內(nèi)發(fā)現(xiàn)的問題是相互獨(dú)立互不相關(guān)的;

        3)在時(shí)刻 t發(fā)現(xiàn)的錯(cuò)誤累計(jì)數(shù) [M(t),t≥0]是一個(gè)隨時(shí)間變化獨(dú)立增長(zhǎng)的過程,M(t)為服從期望函數(shù) f(t)的泊松分布(備注:低圈復(fù)雜度、中圈復(fù)雜度及高圈復(fù)雜度分別服從期望函數(shù)為 f1(t)、f2(t)及 f3(t)的Poisson分布);

        4)在時(shí)間間隔 (t,t+Δt)內(nèi),故障檢測(cè)率 c(t)定義為:時(shí)間間隔(t,t+Δt)內(nèi)檢測(cè)到故障總數(shù)的期望值與軟件剩余未發(fā)現(xiàn)故障數(shù)的比例,滿足0<c(t)<1的條件,不同圈復(fù)雜度軟件模塊對(duì)應(yīng)的故障檢測(cè)率也不同,故進(jìn)一步對(duì)不同圈復(fù)雜度軟件模塊的故障檢測(cè)率c(t)做如下詳細(xì)分解。

        表1 圈復(fù)雜度對(duì)應(yīng)劃分表

        (1)針對(duì)低圈復(fù)雜度的軟件模塊,對(duì)測(cè)試人員能力要求低,每個(gè)測(cè)試人員檢測(cè)出故障的概率相似,故假設(shè)故障檢測(cè)率為常量,即:c1(t)=c;

        (2)針對(duì)圈復(fù)雜度為中及高的軟件模塊,記故障檢測(cè)率分別為c2(t)及c3(t),不同測(cè)試人員故障檢測(cè)率不同,經(jīng)驗(yàn)豐富、測(cè)試人員學(xué)習(xí)能力越高、對(duì)軟件越熟悉的人對(duì)應(yīng)的故障檢測(cè)率也越高。

        5)在時(shí)間間隔 (t,t+Δt)內(nèi),排錯(cuò)率 p(t)定義為:時(shí)間間隔(t,t+Δt)內(nèi)開發(fā)人員排除的錯(cuò)誤數(shù)與單位時(shí)間內(nèi)測(cè)試人員期望發(fā)現(xiàn)的故障數(shù)成正比,滿足0<p(t)≤1的條件,不同圈復(fù)雜度軟件模塊對(duì)應(yīng)的故障排除率也不同,故進(jìn)一步對(duì)不同圈復(fù)雜度軟件模塊的故障排錯(cuò)率 p(t)做如下詳細(xì)分解。

        (1)針對(duì)低圈復(fù)雜度及中圈復(fù)雜度的軟件模塊,記排錯(cuò)率分別為 p1(t),因軟件較簡(jiǎn)單,故開發(fā)人員為完美排錯(cuò),可將所有錯(cuò)誤都排除,即排錯(cuò)率為p1(t)=1;

        (2)針對(duì)中圈復(fù)雜度及高圈復(fù)雜度的軟件模塊,記排錯(cuò)率為 p2(t)及 p3(t),因軟件特別復(fù)雜,開發(fā)人員在排錯(cuò)時(shí)很難將所有錯(cuò)誤排除,即滿足0<p2(t)<1,0<p3(t)<1的條件。

        6)在時(shí)間間隔 (t,t+Δt)內(nèi),錯(cuò)誤引入率 y(t)的變化定義為:時(shí)間間隔(t,t+Δt)內(nèi)預(yù)估錯(cuò)誤總數(shù)的變化與單位時(shí)間內(nèi)開發(fā)人員排除的錯(cuò)誤數(shù)成正比,滿足0≤y(t)<1的條件,不同圈復(fù)雜度軟件模塊對(duì)應(yīng)的錯(cuò)誤引入率也不同,故進(jìn)一步對(duì)不同圈復(fù)雜度軟件模塊的錯(cuò)誤引入率y(t)做如下詳細(xì)分解:

        (1)針對(duì)低圈復(fù)雜度軟件模塊,記錯(cuò)誤引入率為 y1(t),因軟件簡(jiǎn)單,故開發(fā)人員排錯(cuò)時(shí)相對(duì)容易,對(duì)排錯(cuò)是完美排錯(cuò),即錯(cuò)誤引入率為y1(t)=0;

        (2)針對(duì)中圈復(fù)雜度的軟件模塊,記錯(cuò)誤引入率為y2(t),軟件相對(duì)復(fù)雜,開發(fā)人員排錯(cuò)時(shí)為非完美排錯(cuò),但針對(duì)已排除的錯(cuò)誤,不會(huì)引入新的錯(cuò)誤,即錯(cuò)誤引入率為y2(t)=0;

        (3)針對(duì)高圈復(fù)雜度的的軟件模塊,記錯(cuò)誤引入率為 y3(t),因軟件特別復(fù)雜,開發(fā)人員為非完美排錯(cuò),排錯(cuò)過程中會(huì)引入新問題,即滿足0<y3(t)<1的條件。

        依據(jù)上述6個(gè)假設(shè),可以針對(duì)不同圈復(fù)雜度的軟件模塊進(jìn)行可靠性建模,上述前3個(gè)假設(shè)為NHPP可靠性模型的統(tǒng)一假設(shè),后3個(gè)假設(shè)是與軟件圈復(fù)雜度相關(guān)聯(lián)的可靠性模型建模假設(shè)。

        2.1 不完美排錯(cuò)NHPP可靠性一般模型建立

        依據(jù)基于軟件圈復(fù)雜度相關(guān)的不完美排錯(cuò)可靠性增長(zhǎng)模型假設(shè)4)、5)、6)可得如下不完美排錯(cuò)NHPP可靠性增長(zhǎng)的一般模型方程組:

        備注:f(t)為期望故障數(shù),c(t)為測(cè)試人員對(duì)軟件的故障檢測(cè)率,s(t)為軟件中預(yù)期故障總數(shù),j(t)為已解決錯(cuò)誤數(shù),p(t)為開發(fā)人員在排除錯(cuò)誤時(shí)的錯(cuò)誤排除率,y(t)為非完美排錯(cuò)時(shí)的錯(cuò)誤引入率。

        2.2 低圈復(fù)雜度軟件模塊的NHPP可靠性模型建立

        依據(jù)方程(1)及可靠性模型假設(shè)4)、5)、6)可得針對(duì)低圈復(fù)雜度軟件模塊的NHPP可靠性模型為

        基于上述針對(duì)低圈復(fù)雜度,軟件測(cè)試人員對(duì)錯(cuò)誤的檢測(cè)率及開發(fā)人員對(duì)錯(cuò)誤的排錯(cuò)率分析得出如下條件:

        由方程(2)和(3)可得低圈復(fù)雜度軟件模塊的期望故障數(shù)為

        其中s1為初始時(shí)刻預(yù)期的軟件故障數(shù),c1表示測(cè)試人員的排錯(cuò)率。

        2.3 中圈復(fù)雜度軟件模塊的NHPP可靠性模型建立

        依據(jù)方程(1)及可靠性模型假設(shè)4)、5)、6)可得針對(duì)中圈復(fù)雜度軟件模塊的NHPP可靠性模型為

        基于上述針對(duì)中圈復(fù)雜度,軟件測(cè)試人員對(duì)錯(cuò)誤的檢測(cè)率及開發(fā)人員對(duì)錯(cuò)誤的排錯(cuò)率分析得出如下條件:

        其中 p2滿足0<p2<1的條件。

        測(cè)試人員對(duì)中圈復(fù)雜度的故障檢測(cè)率隨著對(duì)軟件產(chǎn)品的熟悉,故障檢測(cè)率會(huì)提升,當(dāng)學(xué)習(xí)到一定程度,故障檢測(cè)率便會(huì)穩(wěn)定下來,符合S型變化曲線,此塊關(guān)于故障檢測(cè)率本文用Logistic曲線來描述測(cè)試人員對(duì)故障的檢測(cè)能力。

        其中a為測(cè)試人員對(duì)中圈復(fù)雜度軟件模塊的初始故障檢測(cè)率,b為測(cè)試人員學(xué)習(xí)能力的尺度。滿足如下條件:0<a<1,b>0,依據(jù)方程(5)、(6)、(7)可得中圈復(fù)雜度軟件模塊的期望故障數(shù)為

        其中s2表示初始時(shí)刻預(yù)期的軟件故障總數(shù)。

        2.4 高圈復(fù)雜度軟件模塊的NHPP可靠性模型建立

        依據(jù)方程(1)及可靠性模型假設(shè)4)、5)、6)可得針對(duì)高圈復(fù)雜度軟件模塊的NHPP可靠性模型為

        基于上述針對(duì)高圈復(fù)雜度的軟件模塊,軟件測(cè)試人員對(duì)錯(cuò)誤的檢測(cè)率及開發(fā)人員對(duì)錯(cuò)誤的排錯(cuò)率、錯(cuò)誤引入率分析得出如下條件:

        其中 p3、y滿足0<p3<1、0<y<1的條件。

        c3(t)在此借用中圈復(fù)雜度的模型,用Logistic增長(zhǎng)模型來描述測(cè)試人員的能力。

        其中m為測(cè)試人員對(duì)高圈復(fù)雜度軟件模塊的初始故障檢測(cè)率,n為測(cè)試人員學(xué)習(xí)能力的尺度。滿足如下條件:0<m<1,n>0,依據(jù)方程(9)、(10)、(11)可得高圈復(fù)雜度軟件模塊的期望故障數(shù)為

        備注:s3表示初始時(shí)刻預(yù)期的軟件故障總數(shù)。

        由此本文分別求得了低圈復(fù)雜度、中圈復(fù)雜度、高圈復(fù)雜度軟件模塊的期望故障數(shù),任一軟件的期望故障數(shù)為

        3 最大似然估計(jì)及模型求解

        為了更好地預(yù)估不同圈復(fù)雜度的故障函數(shù)中的參數(shù),采用最小誤差平方和來計(jì)算:

        其中k為測(cè)試階段數(shù),ti為i階段軟件累計(jì)運(yùn)行時(shí)間,xi為第i階段發(fā)現(xiàn)低圈復(fù)雜度軟件模塊的問題數(shù),yi為第i階段發(fā)現(xiàn)中圈復(fù)雜度軟件模塊的問題數(shù),zi為第i階段發(fā)現(xiàn)高圈復(fù)雜度軟件模塊的問題數(shù),為獲得低圈復(fù)雜度軟件模塊可靠性參數(shù)的最小誤差平方和,SSE1分別對(duì)c1、s1求偏導(dǎo),得如下方程組:

        為獲得中圈復(fù)雜度軟件模塊可靠性參數(shù)最小誤差平方和,SSE2對(duì)s2、a、b、p2分別求偏導(dǎo),得如下方程組:

        為獲得高圈復(fù)雜度軟件模塊可靠性參數(shù)最小誤差平方和,SSE3對(duì)s3、m、n、p3、y分別求偏導(dǎo),得如下方程組:

        在 約 束 條 件 為 :0<c1<1 、0<s1<∞ 、0<s2<∞ 、0<s3<∞ 、0<a<1 、0<b<1 、0<m<1、0<n<1、0<ρ1<1、0<ρ2<1、0<ρ3<1、0<y<1條件下通過方程(15)、(16)、(17)即可求得參數(shù)s1、s2、s3、a、b、m、n、p1、p2、p3、y的值。

        4 實(shí)驗(yàn)分析

        為了證明本模型的有效性,并對(duì)新模型進(jìn)行評(píng)估,引入某軟件測(cè)評(píng)中心針對(duì)通信系統(tǒng)的測(cè)評(píng)數(shù)據(jù)進(jìn)行評(píng)估,表2給出了問題的發(fā)布時(shí)間及問題所對(duì)應(yīng)的軟件模塊的圈復(fù)雜度等級(jí),測(cè)試團(tuán)隊(duì)從第1周開始測(cè)試直至第32周結(jié)束共發(fā)現(xiàn)問題總數(shù)為1264個(gè),軟件問題與檢測(cè)時(shí)間、軟件模塊對(duì)應(yīng)情況見表2~表5。

        表2 低圈復(fù)雜度軟件模塊對(duì)應(yīng)問題缺陷統(tǒng)計(jì)表

        表3 中圈復(fù)雜度軟件模塊對(duì)應(yīng)問題缺陷統(tǒng)計(jì)表

        表4 高圈復(fù)雜度軟件模塊對(duì)應(yīng)問題缺陷統(tǒng)計(jì)表

        表5 軟件對(duì)應(yīng)問題缺陷統(tǒng)計(jì)表

        針 對(duì) 表 2,由 方 程(15)可 求 得 s1=805,c1=0.398,將其代入方程(13)可得低圈復(fù)雜度的軟件可靠性模型為

        低圈復(fù)雜度故障擬合效果如圖1所示。

        圖1 低圈復(fù)雜度軟件模塊故障數(shù)量擬合圖

        針 對(duì) 表 3,由 方 程(16)可 求 得 :s2=267,p2=0.77,a=0.36,b=0.69,將其代入方程(8)可得中圈復(fù)雜度的軟件可靠性模型為

        中圈復(fù)雜度故障擬合效果如圖2所示。

        圖2 中圈復(fù)雜度軟件模塊故障數(shù)量擬合圖

        針對(duì)表4,由方程(17)可求得 s3=67,p3=0.61,m=0.43,n=0.26,y=0.02,將其代入方程(12)可得高圈復(fù)雜度的軟件可靠性模型為

        高圈復(fù)雜度故障擬合效果如圖3所示。

        由方程(13)、(18)、(19)、(20)可得基于圈復(fù)雜度的軟件可靠性模型為

        基于軟件圈復(fù)雜度的故障擬合效果如圖4所示。

        圖3 高圈復(fù)雜度軟件模塊故障數(shù)量擬合圖

        圖4 基于軟件圈復(fù)雜度模型的故障數(shù)量擬合圖

        通過MSE度量模型與G-O模型、Delayed S-shaped 模型、Inflected S-Shaped Model(ISS)模型、變型S型-TEF模型、Logistic-WE模型進(jìn)行比較,比較結(jié)果見表6所示。

        表6 MSE比較

        通過以上實(shí)驗(yàn)分析,本文通過針對(duì)不同軟件圈復(fù)雜度的特性進(jìn)行分析,分別建模,更貼近實(shí)際,得到的可靠性模型擬合效果優(yōu)于現(xiàn)有的模型。

        5 結(jié)語

        本文通過將軟件圈復(fù)雜度劃分為三個(gè)等級(jí):普通、復(fù)雜、特別復(fù)雜。針對(duì)不同等級(jí)的圈復(fù)雜度,分別從代碼狀況、可測(cè)性、可維護(hù)性、對(duì)測(cè)試人員能力的要求、對(duì)開發(fā)人員能力的要求5維角度進(jìn)行了充分分析,從而首次提出了基于軟件圈復(fù)雜度相關(guān)的不完美排錯(cuò)可靠性增長(zhǎng)模型。在進(jìn)行可靠性模型建模的同時(shí)綜合考慮了故障的檢測(cè)率、故障排錯(cuò)率、排錯(cuò)時(shí)故障的引入率三大因素,更加切合實(shí)際,并通過實(shí)際測(cè)試數(shù)據(jù)對(duì)本模型進(jìn)行應(yīng)用,并與現(xiàn)有模型進(jìn)行了比較,證明了本模型的優(yōu)越性。

        猜你喜歡
        測(cè)試人員開發(fā)人員復(fù)雜度
        移動(dòng)應(yīng)用眾包測(cè)試人員信譽(yù)度復(fù)合計(jì)算模型研究
        Semtech發(fā)布LoRa Basics 以加速物聯(lián)網(wǎng)應(yīng)用
        一種低復(fù)雜度的慣性/GNSS矢量深組合方法
        高校分析測(cè)試中心測(cè)試隊(duì)伍建設(shè)方案初探
        山東化工(2018年20期)2018-04-02 16:30:53
        淺析軟件測(cè)試中的心理學(xué)應(yīng)用
        求圖上廣探樹的時(shí)間復(fù)雜度
        某雷達(dá)導(dǎo)51 頭中心控制軟件圈復(fù)雜度分析與改進(jìn)
        讓W(xué)indows 10進(jìn)入開發(fā)者模式
        電腦迷(2015年12期)2015-04-29 23:22:51
        后悔了?教你隱藏開發(fā)人員選項(xiàng)
        電腦愛好者(2015年6期)2015-04-03 01:20:56
        出口技術(shù)復(fù)雜度研究回顧與評(píng)述
        欧美日韩国产乱了伦| 无遮高潮国产免费观看| 久久久久亚洲av无码a片| 狠狠摸狠狠澡| 人人妻人人狠人人爽| 久久久久久国产精品mv| 8ⅹ8x擦拨擦拨成人免费视频| 亚洲国产区男人本色| 国产最新AV在线播放不卡| 国产精品成人av电影不卡| 一本久久a久久精品综合| 水蜜桃在线观看一区二区国产| 人妻蜜桃日产一本久道综合在线| 亚洲高清在线天堂精品| 国产精品亚洲片在线观看不卡| 极品少妇被猛的白浆直喷白浆| 久久久精品人妻一区二区三区蜜桃 | 日本黄色高清视频久久| 日韩一级精品视频免费在线看| 男人的天堂手机版av| 18禁止看的免费污网站| 国产成人a人亚洲精品无码| 免费又黄又爽又猛的毛片| 国产欧美日韩综合一区二区三区| 又色又爽又黄的视频网站| 久久久一本精品久久久一本| 偷拍偷窥女厕一区二区视频| 成人免费a级毛片| 国产精品jizz在线观看老狼| 欧美在线观看一区二区| www.av在线.com| 日本在线观看一二三区| 中国孕妇变态孕交xxxx| 夜鲁很鲁在线视频| 国产又爽又黄的激情精品视频| 亚洲h电影| 亚洲色图视频在线观看,| 中文字幕一区二区综合| 337p粉嫩日本欧洲亚洲大胆| 国产真实夫妇视频| 一本大道色婷婷在线|