欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

軟件缺陷智能檢測方法和系統(tǒng)與流程

文檔序號:12120606閱讀:491來源:國知局
軟件缺陷智能檢測方法和系統(tǒng)與流程

本發(fā)明涉及軟件安全技術(shù)領(lǐng)域,特別是涉及一種軟件缺陷智能檢測方法和系統(tǒng)。



背景技術(shù):

隨著信息技術(shù)的發(fā)展,軟件復(fù)雜程度不斷提高、軟件規(guī)模不斷增大,尤其是對于復(fù)雜軟件系統(tǒng),良好的軟件質(zhì)量控制和檢測機(jī)制不但可以幫助企業(yè)開發(fā)出高質(zhì)量的軟件產(chǎn)品,減少產(chǎn)品生產(chǎn)和維護(hù)成本,而且在提高客戶滿意度,建立良好的企業(yè)形象和增強(qiáng)企業(yè)在市場上的競爭力等方面都有著重要的意義。

傳統(tǒng)的軟件缺陷智能檢測方法采用基于機(jī)器學(xué)習(xí)的軟件缺陷預(yù)測模型,以軟件模塊的度量數(shù)據(jù)向量作為輸入,通過預(yù)處理、特征提取、模型訓(xùn)練和預(yù)測等步驟,實(shí)現(xiàn)對軟件模塊是否存在缺陷進(jìn)行預(yù)測。該模型由于其性能的評價準(zhǔn)則、歸納偏置等內(nèi)在問題,對軟件有缺陷模塊和軟件無缺陷模塊同等處理,以總體最大預(yù)測精度作為目標(biāo),但對軟件缺陷的檢出率仍然不高。因此,傳統(tǒng)的軟件缺陷智能檢測方法存在預(yù)測準(zhǔn)確度低的缺點(diǎn)。



技術(shù)實(shí)現(xiàn)要素:

基于此,有必要針對上述問題,提供一種可提高預(yù)測準(zhǔn)確度的軟件缺陷智能檢測方法和系統(tǒng)。

一種軟件缺陷智能檢測方法,包括以下步驟:

獲取樣本軟件模塊進(jìn)行預(yù)處理,得到軟件樣本集;所述軟件樣本集包括軟件有缺陷樣本集和軟件無缺陷樣本集;

對所述軟件無缺陷樣本集進(jìn)行聚類處理,得到聚類子集;

對所述聚類子集進(jìn)行隨機(jī)抽樣,得到平衡后的軟件無缺陷樣本集;

根據(jù)所述軟件有缺陷樣本集和所述平衡后的軟件無缺陷樣本集得到更新軟件樣本集;

根據(jù)所述更新軟件樣本集進(jìn)行訓(xùn)練得到缺陷檢測模型;

根據(jù)所述缺陷檢測模型對待測軟件模塊進(jìn)行缺陷預(yù)測,并輸出預(yù)測結(jié)果。

一種軟件缺陷智能檢測系統(tǒng),包括:

樣本集建立模塊,用于獲取樣本軟件模塊進(jìn)行預(yù)處理,得到軟件樣本集;所述軟件樣本集包括軟件有缺陷樣本集和軟件無缺陷樣本集;

聚類處理模塊,用于對所述軟件無缺陷樣本集進(jìn)行聚類處理,得到聚類子集;

抽樣處理模塊,用于對所述聚類子集進(jìn)行隨機(jī)抽樣,得到平衡后的軟件無缺陷樣本集;

樣本集更新模塊,用于根據(jù)所述軟件有缺陷樣本集和所述平衡后的軟件無缺陷樣本集得到更新軟件樣本集;

模型訓(xùn)練模塊,用于根據(jù)所述更新軟件樣本集進(jìn)行訓(xùn)練得到缺陷檢測模型;

缺陷預(yù)測模塊,用于根據(jù)所述缺陷檢測模型對待測軟件模塊進(jìn)行缺陷預(yù)測,并輸出預(yù)測結(jié)果。

上述軟件缺陷智能檢測方法和系統(tǒng),獲取樣本軟件模塊進(jìn)行預(yù)處理,得到軟件樣本集。對軟件無缺陷樣本集進(jìn)行聚類處理,得到聚類子集。對聚類子集進(jìn)行隨機(jī)抽樣,得到平衡后的軟件無缺陷樣本集。根據(jù)軟件有缺陷樣本集和平衡后的軟件無缺陷樣本集得到更新軟件樣本集。根據(jù)更新軟件樣本集進(jìn)行訓(xùn)練得到缺陷檢測模型。根據(jù)缺陷檢測模型對待測軟件模塊進(jìn)行缺陷預(yù)測,并輸出預(yù)測結(jié)果。通過對樣本軟件模塊進(jìn)行分類,并對軟件無缺陷樣本集進(jìn)行聚類和抽取樣本,保證了樣本的平衡。根據(jù)平衡后的軟件無缺陷樣本集訓(xùn)練缺陷檢測模型,使缺陷預(yù)測模型能夠更好的對缺陷數(shù)據(jù)進(jìn)行估計和擬合,對有缺陷數(shù)據(jù)的預(yù)測能夠得到明顯的提升,提高了預(yù)測準(zhǔn)確度。

附圖說明

圖1為一實(shí)施例中軟件缺陷智能檢測方法的流程圖;

圖2為一實(shí)施例中軟件缺陷智能檢測系統(tǒng)的結(jié)構(gòu)圖。

具體實(shí)施方式

在一個實(shí)施例中,一種軟件缺陷智能檢測方法,如圖1所示,包括以下步驟:

步驟S110:獲取樣本軟件模塊進(jìn)行預(yù)處理,得到軟件樣本集。

軟件樣本集包括軟件有缺陷樣本集和軟件無缺陷樣本集。樣本軟件模塊指已知是否存在缺陷的軟件模塊。例如,對于軟件中已知的Q個模塊,其中軟件無缺陷模塊有M個,軟件有缺陷模塊有N個,M+N=Q。在獲取得到樣本軟件模塊之后根據(jù)是否存在缺陷進(jìn)行分類,得到軟件有缺陷樣本集和軟件無缺陷樣本集。

在一個實(shí)施例中,步驟S110包括步驟112至步驟116。

步驟112:分別對樣本軟件模塊進(jìn)行標(biāo)記處理,得到各樣本軟件模塊的缺陷標(biāo)記。

對每一個模塊i,i=1,2,...,Q,分別對其是否存在缺陷標(biāo)記flagi。flagi=1,存在缺陷;flagi=0,沒有缺陷。可以理解,各樣本軟件模塊的標(biāo)記方式以及得到的缺陷標(biāo)記的取值并不唯一,在其他實(shí)施例中,也可以是令存在缺陷的樣本軟件模塊的缺陷標(biāo)記為0,令不存在缺陷的樣本軟件模塊的缺陷標(biāo)記為1等。

步驟114:分別對樣本軟件模塊進(jìn)行靜態(tài)度量,得到各樣本軟件模塊的樣本向量。

對每一個模塊i,i=1,2,...,Q,分別對其源代碼進(jìn)行靜態(tài)度量。本實(shí)施例中靜態(tài)度量具體可包括Halstead度量、MaCabe度量、Khoshgoftaar度量和CK度量等,得到共k個度量值,并將這些度量值分別標(biāo)記為ti1,ti2,...,tik,構(gòu)成樣本向量Ti={ti1,ti2,...,tik}。

步驟116:根據(jù)各樣本軟件模塊的缺陷標(biāo)記,對對應(yīng)樣本軟件模塊的樣本向量進(jìn)行分類,得到軟件有缺陷樣本集和軟件無缺陷樣本集。

將軟件有缺陷模塊的樣本向量分為一類,得到軟件有缺陷樣本集{Ti|flagi=1}。將軟件無缺陷模塊的樣本向量分為一類,得到軟件無缺陷樣本集{Ti|flagi=0}。軟件有缺陷樣本集和軟件無缺陷樣本集構(gòu)成軟件樣本集{Ti|i=1,2,...,Q}。

步驟S120:對軟件無缺陷樣本集進(jìn)行聚類處理,得到聚類子集。

對軟件無缺陷樣本集{Ti|flagi=0}進(jìn)行聚類,得到聚類子集,聚類子集的具體數(shù)量并不唯一。本實(shí)施例中,采用MeanShift方法進(jìn)行聚類,計算量小,可提高聚類分析速度。步驟S120包括步驟122至步驟128。

步驟122:以軟件無缺陷樣本集中的樣本向量為起點(diǎn),計算樣本向量的meanshift向量。具體為:

其中,Mh表示樣本向量T的meanshift向量,Sh(T)表示半徑為常數(shù)h的高維球區(qū)域內(nèi),滿足關(guān)系(T-Ti)T(T-Ti)<h2的K個樣本向量的集合,Ti為Sh(T)中的樣本向量。需要說明的是,(T-Ti)T(T-Ti)<h2中,括號內(nèi)的T表示樣本向量,括號右上角的運(yùn)算符號T表示轉(zhuǎn)置。

步驟124:判斷樣本向量的meanshift向量是否大于預(yù)設(shè)閾值。若是,則將樣本向量與meanshift向量之和作為新的樣本向量,并返回步驟122。若否,則進(jìn)行步驟126。預(yù)設(shè)閾值ε為預(yù)先設(shè)定且可根據(jù)實(shí)際情況調(diào)整,如果meanshift向量Mh大于ε,以Ti+Mh作為新的起點(diǎn),再次計算新的meanshift向量Mh。

步驟126:將樣本向量與meanshift向量之和作為樣本向量的中心點(diǎn)。如果Mh小于或等于ε,則確認(rèn)Ti+Mh為中心點(diǎn)。重復(fù)步驟122至步驟126直至遍歷所有樣本向量,生成P個中心點(diǎn)。

步驟128:根據(jù)樣本向量的中心點(diǎn)對樣本向量進(jìn)行聚類,得到聚類子集。將趨于同一中心點(diǎn)的樣本向量劃分為一類,形成P個聚類子集。

通過聚類方法計算軟件缺陷分布的多個子集,更好的刻畫軟件缺陷分布,為進(jìn)一步的樣本平衡抽樣奠定基礎(chǔ)。

步驟S130:對聚類子集進(jìn)行隨機(jī)抽樣,得到平衡后的軟件無缺陷樣本集。

對聚類形成的P個聚類子集進(jìn)行抽樣,以保證樣本平衡。對于第j個聚類子集的樣本數(shù)為mj,則有對每個聚類子集進(jìn)行抽樣的數(shù)量并不唯一,本實(shí)施例中,對所述聚類子集進(jìn)行隨機(jī)抽樣的抽取樣本個數(shù)為:

其中,mj'為對第j個聚類子集進(jìn)行隨機(jī)抽樣的抽取樣本個數(shù),mj為第j個聚類子集的樣本數(shù),M為軟件無缺陷模塊的總數(shù),N為軟件有缺陷模塊的總數(shù)。

基于缺陷數(shù)據(jù)樣本分布,在每個子集下采用隨機(jī)抽樣的方法選取樣本,實(shí)現(xiàn)樣本間的平衡。得到平衡后的軟件無缺陷集{Ti'|flagi=0},樣本個數(shù)為

步驟S140:根據(jù)軟件有缺陷樣本集和平衡后的軟件無缺陷樣本集得到更新軟件樣本集。

將軟件有缺陷樣本集與平衡后的軟件無缺陷樣本集合并,作為更新軟件樣本集{Ti'|i=1,2,...,M'+N}。

步驟S150:根據(jù)更新軟件樣本集進(jìn)行訓(xùn)練得到缺陷檢測模型。

在平衡后的高維樣本空間下,選擇適合的數(shù)據(jù)挖掘方法訓(xùn)練缺陷檢測模型。根據(jù)平衡后的軟件無缺陷樣本集訓(xùn)練缺陷檢測模型,使缺陷預(yù)測模型能夠更好的對缺陷數(shù)據(jù)進(jìn)行估計和擬合。在一個實(shí)施例中,步驟S150包括:

其中,Ti、Tj分別為更新軟件樣本集中第i、j個樣本向量,k(Ti,Tj)表示樣本向量Ti、Tj之間的核函數(shù);flagi、flagj分別為更新軟件樣本集中第i、j個樣本向量所對應(yīng)的缺陷標(biāo)記,λi、λj為缺陷檢測模型待訓(xùn)練的參數(shù),表示更新軟件樣本集中第i、j個樣本向量的權(quán)值;s.t.表示約束條件,C為懲罰因子,M’+N表示更新軟件樣本集中樣本向量的個數(shù)。

表示取最大值時缺陷檢測模型的參數(shù)λ的取值;分別將更新軟件樣本集中的樣本向量Ti、Tj代入在取最大值時確定樣本向量Ti的權(quán)值λi的取值,最終得到更新軟件樣本集中所有樣本向量的權(quán)值。

步驟S160:根據(jù)缺陷檢測模型對待測軟件模塊進(jìn)行缺陷預(yù)測,并輸出預(yù)測結(jié)果。

利用缺陷預(yù)測模型對未知的待測軟件模塊進(jìn)行缺陷預(yù)測,得到預(yù)測結(jié)果并輸出,告知工作人員完成對待測軟件模塊的缺陷預(yù)測。在一個實(shí)施例中,步驟S160包括步驟162和步驟164。

步驟162:對待測軟件模塊進(jìn)行靜態(tài)度量,得到待測軟件模塊的樣本向量。具體地,對待測軟件模塊源代碼進(jìn)行靜態(tài)度量,靜態(tài)度量同樣可包括Halstead度量、MaCabe度量、Khoshgoftaar度量和CK度量等。

步驟164:根據(jù)待測軟件模塊的樣本向量以及缺陷預(yù)測模型對待測軟件模塊進(jìn)行缺陷預(yù)測。具體為:

其中,T為待測軟件模塊的樣本向量,g(T)表示待測軟件模塊的缺陷標(biāo)記,sgn表示對求整型變量,當(dāng)大于0時取1,當(dāng)小于或等于0時取0;Ti為更新軟件樣本集中第i個樣本向量,flagi為更新軟件樣本集中第i個樣本向量所對應(yīng)的缺陷標(biāo)記,λi表示由缺陷預(yù)測模型得到的更新軟件樣本集中第i個樣本向量的權(quán)值,M’+N表示更新軟件樣本集中樣本向量的個數(shù),b為常數(shù)。同樣,本實(shí)施例中K(Ti,T)表示樣本向量Ti、T之間的核函數(shù)。進(jìn)行整型變量的方式與缺陷標(biāo)記的定義對應(yīng)。

在實(shí)際應(yīng)用中,由于軟件失效的概率相比正常的概率較低,軟件失效模塊占軟件模塊總數(shù)相對較少。然而,當(dāng)這些少量的軟件失效模塊未被發(fā)現(xiàn)時,一旦投入實(shí)際使用,所帶來的經(jīng)濟(jì)損失和社會損失是不可估量的。并且,由于軟件失效模塊占軟件模塊總數(shù)相對較少,這使得其在軟件缺陷檢測模型訓(xùn)練樣本數(shù)據(jù)相差懸殊時,智能檢測方法產(chǎn)生偏向性。

上述軟件缺陷智能檢測方法,針對軟件復(fù)雜程度不斷提高、軟件規(guī)模不斷增大,尤其是對于復(fù)雜軟件系統(tǒng)缺陷檢測工作量巨大,缺陷定位困難等問題。通過對樣本軟件模塊進(jìn)行分類,并對軟件無缺陷樣本集進(jìn)行聚類和抽取樣本,保證了樣本的平衡。根據(jù)平衡后的軟件無缺陷樣本集訓(xùn)練缺陷檢測模型,使缺陷預(yù)測模型能夠更好的對缺陷數(shù)據(jù)進(jìn)行估計和擬合,對有缺陷數(shù)據(jù)的預(yù)測能夠得到明顯的提升,提高了預(yù)測準(zhǔn)確度。

在一個實(shí)施例中,一種軟件缺陷智能檢測系統(tǒng),如圖2所示,包括樣本集建立模塊110、聚類處理模塊120、抽樣處理模塊130、樣本集更新模塊140、模型訓(xùn)練模塊150和缺陷預(yù)測模塊160。

樣本集建立模塊110用于獲取樣本軟件模塊進(jìn)行預(yù)處理,得到軟件樣本集。

軟件樣本集包括軟件有缺陷樣本集和軟件無缺陷樣本集。樣本軟件模塊指已知是否存在缺陷的軟件模塊。在獲取得到樣本軟件模塊之后根據(jù)是否存在缺陷進(jìn)行分類,得到軟件有缺陷樣本集和軟件無缺陷樣本集。在一個實(shí)施例中,樣本集建立模塊110包括第一樣本集建立單元、第二樣本集建立單元和第三樣本集建立單元。

第一樣本集建立單元用于分別對樣本軟件模塊進(jìn)行標(biāo)記處理,得到各樣本軟件模塊的缺陷標(biāo)記。

對每一個模塊i,i=1,2,...,Q,分別對其是否存在缺陷標(biāo)記flagi。flagi=1,存在缺陷;flagi=0,沒有缺陷。可以理解,各樣本軟件模塊的標(biāo)記方式以及得到的缺陷標(biāo)記的取值并不唯一,在其他實(shí)施例中,也可以是令存在缺陷的樣本軟件模塊的缺陷標(biāo)記為0,令不存在缺陷的樣本軟件模塊的缺陷標(biāo)記為1等。

第二樣本集建立單元用于分別對樣本軟件模塊進(jìn)行靜態(tài)度量,得到各樣本軟件模塊的樣本向量。

對每一個模塊i,i=1,2,...,Q,分別對其源代碼進(jìn)行靜態(tài)度量。本實(shí)施例中靜態(tài)度量具體可包括Halstead度量、MaCabe度量、Khoshgoftaar度量和CK度量等,得到共k個度量值,并將這些度量值分別標(biāo)記為ti1,ti2,...,tik,構(gòu)成樣本向量Ti={ti1,ti2,...,tik}。

第三樣本集建立單元用于根據(jù)各樣本軟件模塊的缺陷標(biāo)記,對對應(yīng)樣本軟件模塊的樣本向量進(jìn)行分類,得到軟件有缺陷樣本集和軟件無缺陷樣本集。

將軟件有缺陷模塊的樣本向量分為一類,得到軟件有缺陷樣本集{Ti|flagi=1}。將軟件無缺陷模塊的樣本向量分為一類,得到軟件無缺陷樣本集{Ti|flagi=0}。軟件有缺陷樣本集和軟件無缺陷樣本集構(gòu)成軟件樣本集{Ti|i=1,2,...,Q}。

聚類處理模塊120用于對軟件無缺陷樣本集進(jìn)行聚類處理,得到聚類子集。

對軟件無缺陷樣本集{Ti|flagi=0}進(jìn)行聚類,得到聚類子集,聚類子集的具體數(shù)量并不唯一。本實(shí)施例中,采用MeanShift方法進(jìn)行聚類,計算量小,可提高聚類分析速度。聚類處理模塊120包括第一處理單元、第二處理單元、第三處理單元和第四處理單元。

第一處理單元用于以軟件無缺陷樣本集中的樣本向量為起點(diǎn),計算樣本向量的meanshift向量。具體為:

其中,Mh表示樣本向量T的meanshift向量,Sh(T)表示半徑為常數(shù)h的高維球區(qū)域內(nèi),滿足關(guān)系(T-Ti)T(T-Ti)<h2的K個樣本向量的集合,Ti為Sh(T)中的樣本向量。需要說明的是,(T-Ti)T(T-Ti)<h2中,括號內(nèi)的T表示樣本向量,括號右上角的運(yùn)算符號T表示轉(zhuǎn)置。

第二處理單元用于判斷樣本向量的meanshift向量是否大于預(yù)設(shè)閾值。預(yù)設(shè)閾值ε為預(yù)先設(shè)定且可根據(jù)實(shí)際情況調(diào)整。

第三處理單元,用于在樣本向量的meanshift向量大于預(yù)設(shè)閾值時,將樣本向量與meanshift向量之和作為新的樣本向量,并控制第一處理單元再次以軟件無缺陷樣本集中的樣本向量為起點(diǎn),計算樣本向量的meanshift向量;以及在樣本向量的meanshift向量小于或等于預(yù)設(shè)閾值時,將樣本向量與meanshift向量之和作為樣本向量的中心點(diǎn)。

如果meanshift向量Mh大于ε,以Ti+Mh作為新的起點(diǎn),再次計算新的meanshift向量Mh。如果Mh小于或等于ε,則確認(rèn)Ti+Mh為中心點(diǎn)。重復(fù)進(jìn)行計算直至遍歷所有樣本向量,生成P個中心點(diǎn)。

第四處理單元用于根據(jù)樣本向量的中心點(diǎn)對樣本向量進(jìn)行聚類,得到聚類子集。將趨于同一中心點(diǎn)的樣本向量劃分為一類,形成P個聚類子集。

通過聚類方法計算軟件缺陷分布的多個子集,更好的刻畫軟件缺陷分布,為進(jìn)一步的樣本平衡抽樣奠定基礎(chǔ)。

抽樣處理模塊130用于對聚類子集進(jìn)行隨機(jī)抽樣,得到平衡后的軟件無缺陷樣本集。

對聚類形成的P個聚類子集進(jìn)行抽樣,以保證樣本平衡。對于第j個聚類子集的樣本數(shù)為mj,則有對每個聚類子集進(jìn)行抽樣的數(shù)量并不唯一,本實(shí)施例中,對所述聚類子集進(jìn)行隨機(jī)抽樣的抽取樣本個數(shù)為:

其中,mj'為對第j個聚類子集進(jìn)行隨機(jī)抽樣的抽取樣本個數(shù),mj為第j個聚類子集的樣本數(shù),M為軟件無缺陷模塊的總數(shù),N為軟件有缺陷模塊的總數(shù)。

基于缺陷數(shù)據(jù)樣本分布,在每個子集下采用隨機(jī)抽樣的方法選取樣本,實(shí)現(xiàn)樣本間的平衡。得到平衡后的軟件無缺陷集{Ti'|flagi=0},樣本個數(shù)為

樣本集更新模塊140用于根據(jù)軟件有缺陷樣本集和平衡后的軟件無缺陷樣本集得到更新軟件樣本集。

將軟件有缺陷樣本集與平衡后的軟件無缺陷樣本集合并,作為更新軟件樣本集{Ti'|i=1,2,...,M'+N}。

模型訓(xùn)練模塊150用于根據(jù)更新軟件樣本集進(jìn)行訓(xùn)練得到缺陷檢測模型。在平衡后的高維樣本空間下,選擇適合的數(shù)據(jù)挖掘方法訓(xùn)練缺陷檢測模型。根據(jù)平衡后的軟件無缺陷樣本集訓(xùn)練缺陷檢測模型,使缺陷預(yù)測模型能夠更好的對缺陷數(shù)據(jù)進(jìn)行估計和擬合。在一個實(shí)施例中,模型訓(xùn)練模塊150根據(jù)更新軟件樣本集進(jìn)行訓(xùn)練得到缺陷檢測模型,包括:

其中,Ti、Tj分別為更新軟件樣本集中第i、j個樣本向量,k(Ti,Tj)表示樣本向量Ti、Tj之間的核函數(shù);flagi、flagj分別為更新軟件樣本集中第i、j個樣本向量所對應(yīng)的缺陷標(biāo)記,λi、λj為缺陷檢測模型待訓(xùn)練的參數(shù),表示更新軟件樣本集中第i、j個樣本向量的權(quán)值;s.t.表示約束條件,C為懲罰因子,M’+N表示更新軟件樣本集中樣本向量的個數(shù)。

表示取最大值時缺陷檢測模型的參數(shù)λ的取值;分別將更新軟件樣本集中的樣本向量Ti、Tj代入在取最大值時確定樣本向量Ti的權(quán)值λi的取值,最終得到更新軟件樣本集中所有樣本向量的權(quán)值。

缺陷預(yù)測模塊160用于根據(jù)缺陷檢測模型對待測軟件模塊進(jìn)行缺陷預(yù)測,并輸出預(yù)測結(jié)果。

利用缺陷預(yù)測模型對未知的待測軟件模塊進(jìn)行缺陷預(yù)測,得到預(yù)測結(jié)果并輸出,告知工作人員完成對待測軟件模塊的缺陷預(yù)測。在一個實(shí)施例中,缺陷預(yù)測模塊160包括第一預(yù)測單元和第二預(yù)測單元。

第一預(yù)測單元用于對待測軟件模塊進(jìn)行靜態(tài)度量,得到待測軟件模塊的樣本向量。具體地,對待測軟件模塊源代碼進(jìn)行靜態(tài)度量,靜態(tài)度量同樣可包括Halstead度量、MaCabe度量、Khoshgoftaar度量和CK度量等。

第二預(yù)測單元用于根據(jù)待測軟件模塊的樣本向量以及缺陷預(yù)測模型對待測軟件模塊進(jìn)行缺陷預(yù)測。具體為:

其中,T為待測軟件模塊的樣本向量,g(T)表示待測軟件模塊的缺陷標(biāo)記,sgn表示對求整型變量,當(dāng)大于0時取1,當(dāng)小于或等于0時取0;Ti為更新軟件樣本集中第i個樣本向量,flagi為更新軟件樣本集中第i個樣本向量所對應(yīng)的缺陷標(biāo)記,λi表示由缺陷預(yù)測模型得到的更新軟件樣本集中第i個樣本向量的權(quán)值,M’+N表示更新軟件樣本集中樣本向量的個數(shù),b為常數(shù)。同樣,本實(shí)施例中K(Ti,T)表示樣本向量Ti、T之間的核函數(shù)。進(jìn)行整型變量的方式與缺陷標(biāo)記的定義對應(yīng)。

上述軟件缺陷智能檢測系統(tǒng),針對軟件復(fù)雜程度不斷提高、軟件規(guī)模不斷增大,尤其是對于復(fù)雜軟件系統(tǒng)缺陷檢測工作量巨大,缺陷定位困難等問題。通過對樣本軟件模塊進(jìn)行分類,并對軟件無缺陷樣本集進(jìn)行聚類和抽取樣本,保證了樣本的平衡。根據(jù)平衡后的軟件無缺陷樣本集訓(xùn)練缺陷檢測模型,使缺陷預(yù)測模型能夠更好的對缺陷數(shù)據(jù)進(jìn)行估計和擬合,對有缺陷數(shù)據(jù)的預(yù)測能夠得到明顯的提升,提高了預(yù)測準(zhǔn)確度。

以上所述實(shí)施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡潔,未對上述實(shí)施例中的各個技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說明書記載的范圍。

以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
道真| 志丹县| 阿荣旗| 报价| 遵化市| 海口市| 卢龙县| 南陵县| 高唐县| 新邵县| 潮安县| 巴马| 乡城县| 织金县| 苍梧县| 西乌| 大厂| 大宁县| 铜鼓县| 晋宁县| 江永县| 聂荣县| 澎湖县| 东阳市| 贺州市| 怀远县| 乌拉特后旗| 二手房| 五家渠市| 乌海市| 高要市| 讷河市| 湟中县| 湛江市| 将乐县| 张掖市| 林西县| 潼南县| 黎平县| 思茅市| 阿城市|