[發(fā)明專利]一種面向軟件缺陷個數(shù)預測的特征選擇方法有效
| 申請?zhí)枺?/td> | 201710374939.8 | 申請日: | 2017-05-24 |
| 公開(公告)號: | CN107239798B | 公開(公告)日: | 2020-06-09 |
| 發(fā)明(設計)人: | 余嘯;劉進;馬子逸;崔曉暉;谷懿;井溢洋 | 申請(專利權)人: | 武漢大學 |
| 主分類號: | G06K9/62 | 分類號: | G06K9/62;G06F11/36 |
| 代理公司: | 武漢科皓知識產(chǎn)權代理事務所(特殊普通合伙) 42222 | 代理人: | 魯力 |
| 地址: | 430072 湖*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 面向 軟件 缺陷 個數(shù) 預測 特征 選擇 方法 | ||
本發(fā)明針對軟件缺陷數(shù)據(jù)集中不相關特征和冗余特征會降低軟件缺陷個數(shù)預測模型的性能的問題,提出了一種面向軟件缺陷個數(shù)預測的特征選擇方法。首先利用特征與特征之間的關聯(lián)性,對特征集進行譜聚類,將相互之間冗余度高的特征聚類到同一個簇中。在聚類的結果中,利用特征與軟件缺陷個數(shù)之間的相關性,從每個簇中選出相關性最強的幾個特征,這樣既降低了特征之間的冗余度,又排除了不相關特征,得到最終的有益于缺陷個數(shù)預測模型性能的特征子集。本發(fā)明的技術方案具有簡單、快速的特點,得到的特征子集有助于提高軟件缺陷個數(shù)預測模型的性能。
技術領域
本發(fā)明屬于特征選擇領域,特別是涉及一種面向軟件缺陷個數(shù)預測的特征選擇方法。
背景技術
(1)軟件缺陷預測技術:軟件缺陷是計算機軟件或程序中存在的某個破壞正常運行能力的問題、錯誤以及隱藏的功能缺陷。隨著軟件系統(tǒng)在工程應用中的不斷擴大,軟件缺陷導致的經(jīng)濟損失日益增加。據(jù)美國國家標準與技術所的一項研究表明,軟件缺陷給美國每年造成的損失高達幾百億元,而其中超過三分之一的損失,如果提前稍加測試,即可避免。除了經(jīng)濟領域,還有一些軟件是飛行控制系統(tǒng)軟件和醫(yī)療設備軟件,這些和人命相關的軟件,一旦出現(xiàn)軟件缺陷問題,就會給人民生命財產(chǎn)安全帶來無端災難,因此軟件缺陷預測技術意義重大。軟件缺陷預測技術是軟件質(zhì)量保證中的一項重要技術。軟件缺陷預測通過分析軟件歷史倉庫,建立缺陷預測模型,對新的軟件模塊進行缺陷預測。對預測出潛在缺陷的新的軟件模塊分配更多的測試資源,可以達到合理分配測試和維護資源的目的。目前為止,已有很多高效的軟件缺陷方法被提出。
但這些預測通常只給出有缺陷或無缺陷的二分類結果。現(xiàn)有技術表明,如果只按照有無缺陷來分配有限的測試資源,可能會造成資源分配的浪費。如果我們能夠準確的預測出缺陷個數(shù),使軟件測試人員主要關注那些擁有更多缺陷的軟件模塊,就可使軟件測試工作更為有效。因此,預測軟件缺陷個數(shù)相比于單純的預測軟件模塊是否有缺陷更利于優(yōu)化軟件測試資源的分配。
軟件缺陷個數(shù)預測過程分為四個階段:(a)挖掘軟件歷史倉庫,從中抽取出有用的程序模塊。程序模塊粒度可根據(jù)實際應用場景,可設置為文件、包、類或函數(shù)等。(b)提取出與軟件缺陷有關的特征,并構建出軟件缺陷個數(shù)訓練集。(c)借助特定的建模方法在軟件缺陷個數(shù)訓練集上構建出軟件缺陷個數(shù)預測模型。不同于單純的預測新的軟件模塊是否存在缺陷時采用的是分類模型,軟件缺陷個數(shù)建模方法采用的是回歸模型。(d)在對新的軟件模塊提取出特征后,利用步驟(d)中訓練出的軟件缺陷個數(shù)預測模型,預測該模塊存在多少個缺陷。
在構建軟件缺陷預測模型時,與提取出與軟件缺陷有關的特征中不可避免會產(chǎn)生冗余特征和不相關特征。冗余特征指的是該特征所包含的信息能從其他特征中推演出來的特征。無關特征則是對采用的機器學習算法不能提供任何的幫助。這些特征的存在會嚴重影響軟件缺陷個數(shù)預測模型的準確率,因此,使用特征選擇方法去除這類特征是十分必要的。
(2)特征選擇技術:特征選擇是指從原始特征中選取最小數(shù)量的特征子集,特征子集內(nèi)的屬性應與樣本類別具有最大相關度,而屬性與屬性之間又具有最小相關度。之所以需要對特征進行選擇,一方面是因為往往大量的原始特征會導致處理的時間和空間復雜度過高,另一方面則是大量不相關特征或冗余特征反而會降低分析方法的性能。因此,有效的特征選擇對于缺陷預測技術是非常必要的。目前已有一些研究者將特征選擇的方法應用到軟件缺陷預測中。現(xiàn)有技術有針對軟件度量中窮舉搜索的不可行性,提出了一種混合屬性選擇方法,并減少了特征子集的搜索空間。還有研究構建了一種新的軟件缺陷預測框架,并將基于過濾式的特征選擇方法應用到了軟件缺陷預測中。還有研究提出了一種混合特征選擇方法,首先基于特征子集評估器移除軟件缺陷數(shù)據(jù)集中的無關特征和冗余特征,隨后基于特征排序評估器進一步移除其中的無關特征,實驗結果表明該方法能有效提高缺陷預測模型的性能。但這些特征選擇方法都只是針對預測軟件模塊是否有缺陷的問題。
發(fā)明內(nèi)容
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢大學,未經(jīng)武漢大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710374939.8/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





