[發(fā)明專利]一種基于遷移性分析的跨項(xiàng)目缺陷預(yù)測方法有效
| 申請?zhí)枺?/td> | 201910524720.0 | 申請日: | 2019-06-18 |
| 公開(公告)號: | CN110175726B | 公開(公告)日: | 2021-03-26 |
| 發(fā)明(設(shè)計(jì))人: | 余躍;張迅暉;毛新軍;曾雅蓉;王濤;李志星;范強(qiáng) | 申請(專利權(quán))人: | 中國人民解放軍國防科技大學(xué) |
| 主分類號: | G06Q10/04 | 分類號: | G06Q10/04;G06F17/18;G06F11/36 |
| 代理公司: | 長沙國科天河知識產(chǎn)權(quán)代理有限公司 43225 | 代理人: | 邱軼 |
| 地址: | 410073 湖*** | 國省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 遷移性 分析 項(xiàng)目 缺陷 預(yù)測 方法 | ||
本發(fā)明公開了一種基于遷移性分析的跨項(xiàng)目缺陷預(yù)測方法,針對開源社區(qū)中跨項(xiàng)目缺陷預(yù)測模型的遷移需求,考慮項(xiàng)目之間的相關(guān)性,利用開源社區(qū)中包括提交代碼、提交關(guān)聯(lián)文本信息、提交相關(guān)歷史信息等在內(nèi)的各種維度的信息,分析項(xiàng)目間缺陷預(yù)測模型的可遷移性,進(jìn)而形成缺陷預(yù)測方法。該方法的提出,輔助代碼審查,促進(jìn)開源項(xiàng)目快速健康發(fā)展。
技術(shù)領(lǐng)域
本發(fā)明設(shè)計(jì)一種基于遷移性分析的跨項(xiàng)目缺陷預(yù)測方法,主要包含項(xiàng)目間不同維度的關(guān)聯(lián)因素對跨項(xiàng)目缺陷預(yù)測效果的影響分析,以及基于分析結(jié)果和集成投票方法形成的跨項(xiàng)目缺陷預(yù)測方法。
背景技術(shù)
自2010年pull request技術(shù)提出以來,Github社區(qū)在7年時(shí)間累積產(chǎn)生了超過3千萬的pull request,并且仍在以迅猛的速度增長。然而,由于提交pull request的項(xiàng)目開發(fā)人員編程經(jīng)驗(yàn)不足、開發(fā)過程不合理、需求理解不正確,導(dǎo)致其提交的pull request會引入各種各樣的軟件缺陷,進(jìn)而對軟件質(zhì)量和軟件的健康發(fā)展產(chǎn)生影響。開源社區(qū)采用輕量級的過程管理工具以來,大大降低了外圍貢獻(xiàn)者參與項(xiàng)目貢獻(xiàn)門檻,但同時(shí)增加了開源項(xiàng)目過程制品維護(hù)的難度,以完全人工的方式去查看新增代碼是否會引入新缺陷,既耗時(shí)又費(fèi)力。因此,引入自動化缺陷預(yù)測方法,可以輔助缺陷發(fā)現(xiàn),減輕審查者工作量,進(jìn)而加速軟件健康穩(wěn)定的發(fā)展。然而傳統(tǒng)的基于有監(jiān)督學(xué)習(xí)的機(jī)器學(xué)習(xí)缺陷預(yù)測方法依賴于足夠可利用的訓(xùn)練樣本,以總結(jié)出經(jīng)驗(yàn)知識來對未來數(shù)據(jù)做決策,這對于沒有足夠歷史數(shù)據(jù)積累的新興開源項(xiàng)目來說是不友好的,因此我們考慮通過跨項(xiàng)目缺陷預(yù)測模型的遷移解決該問題,幫助新興項(xiàng)目渡過冷啟動階段。
跨項(xiàng)目缺陷預(yù)測模型遷移性分析,需要考慮項(xiàng)目之間的相關(guān)性,利用開源社區(qū)中包括提交代碼、提交關(guān)聯(lián)文本信息、提交相關(guān)歷史信息等在內(nèi)的各種維度的信息,分析項(xiàng)目間缺陷預(yù)測模型的可遷移性,進(jìn)而形成缺陷預(yù)測方法。
發(fā)明內(nèi)容
本發(fā)明的目的在于針對開源社區(qū)中跨項(xiàng)目缺陷預(yù)測模型的遷移需求,提出一種基于遷移性分析的跨項(xiàng)目缺陷預(yù)測方法,全面分析了該情況下影響模型遷移性的各種因素,利用集成投票的方式進(jìn)行跨項(xiàng)目缺陷預(yù)測,具有較高的準(zhǔn)確率。
為實(shí)現(xiàn)上述技術(shù)目的,本發(fā)明的技術(shù)方案如下:
一種基于遷移性分析的跨項(xiàng)目缺陷預(yù)測方法,包括以下步驟:
S1.根據(jù)開源社區(qū)中開源項(xiàng)目包含的pull request數(shù)量及開源語言種類,選取開源社區(qū)中開源項(xiàng)目作為遷移分析的項(xiàng)目集合,進(jìn)行數(shù)據(jù)采集;
其中數(shù)據(jù)采集內(nèi)容包括:項(xiàng)目源代碼、歷史代碼提交信息、代碼提交更改信息、代碼提交歷史軌跡、代碼提交更改的文件、代碼提交更改的文件對應(yīng)的歷史開發(fā)人員數(shù)量、代碼提交更改文件的平均時(shí)間間隔以及缺陷信息;其中缺陷信息包括缺陷報(bào)告、缺陷報(bào)告標(biāo)記位和缺陷報(bào)告對應(yīng)的編號,pull request、ReadMe文件;
S2.提取遷移分析項(xiàng)目集合中的每個(gè)開源項(xiàng)目對應(yīng)的歷史代碼提交信息和缺陷信息,將S1中采集到的數(shù)據(jù)分為引入缺陷的代碼提交和未引入缺陷的代碼提交;
S3.將S2中得到的引入缺陷的代碼提交分別提取在擴(kuò)散維度、代碼維度、代碼更改目的維度、文本信息維度和歷史維度下代碼提交可能引入缺陷的項(xiàng)目內(nèi)度量因素,得到代碼提交可能引入缺陷的項(xiàng)目內(nèi)多維度量因素;
S4.利用S2中得到的引入缺陷的代碼提交以及S3中提取的可能引入缺陷的項(xiàng)目內(nèi)多維度量因素,利用隨機(jī)森林方法訓(xùn)練遷移分析項(xiàng)目集合中每個(gè)項(xiàng)目的項(xiàng)目內(nèi)缺陷預(yù)測模型;
S5.統(tǒng)計(jì)遷移分析項(xiàng)目集合中不同項(xiàng)目間,在項(xiàng)目維度、技術(shù)維度和人員維度下影響項(xiàng)目間缺陷預(yù)測的項(xiàng)目間關(guān)聯(lián)關(guān)系多維度量因素;
S6.根據(jù)S4中得到的遷移分析項(xiàng)目集合中每個(gè)項(xiàng)目的項(xiàng)目內(nèi)缺陷預(yù)測模型,計(jì)算遷移分析項(xiàng)目集合中每個(gè)項(xiàng)目的項(xiàng)目內(nèi)缺陷預(yù)測模型對其他項(xiàng)目缺陷預(yù)測的準(zhǔn)確率,得到項(xiàng)目間缺陷預(yù)測準(zhǔn)確率;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國人民解放軍國防科技大學(xué),未經(jīng)中國人民解放軍國防科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910524720.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:商品運(yùn)輸損耗預(yù)估方法、計(jì)算機(jī)裝置及存儲介質(zhì)
- 下一篇:一種電網(wǎng)調(diào)峰輔助服務(wù)市場主輔協(xié)調(diào)優(yōu)化方法
- 同類專利
- 專利分類
G06Q 專門適用于行政、商業(yè)、金融、管理、監(jiān)督或預(yù)測目的的數(shù)據(jù)處理系統(tǒng)或方法;其他類目不包含的專門適用于行政、商業(yè)、金融、管理、監(jiān)督或預(yù)測目的的處理系統(tǒng)或方法
G06Q10-00 行政;管理
G06Q10-02 .預(yù)定,例如用于門票、服務(wù)或事件的
G06Q10-04 .預(yù)測或優(yōu)化,例如線性規(guī)劃、“旅行商問題”或“下料問題”
G06Q10-06 .資源、工作流、人員或項(xiàng)目管理,例如組織、規(guī)劃、調(diào)度或分配時(shí)間、人員或機(jī)器資源;企業(yè)規(guī)劃;組織模型
G06Q10-08 .物流,例如倉儲、裝貨、配送或運(yùn)輸;存貨或庫存管理,例如訂貨、采購或平衡訂單
G06Q10-10 .辦公自動化,例如電子郵件或群件的計(jì)算機(jī)輔助管理
- 一種項(xiàng)目信息處理方法及系統(tǒng)
- 軟件項(xiàng)目管理方法、終端及計(jì)算機(jī)可讀存儲介質(zhì)
- 一種基于微信公眾號的線上項(xiàng)目申請審批的方法及系統(tǒng)
- 一種項(xiàng)目管理系統(tǒng)及方法
- 一種建筑項(xiàng)目綜合管理系統(tǒng)
- 一種項(xiàng)目管理方法、裝置及設(shè)備
- 項(xiàng)目管理方法、裝置、計(jì)算機(jī)設(shè)備和存儲介質(zhì)
- 項(xiàng)目管理系統(tǒng)、方法、計(jì)算機(jī)設(shè)備和計(jì)算機(jī)可讀存儲介質(zhì)
- 一種電力項(xiàng)目業(yè)務(wù)中臺及其微服務(wù)系統(tǒng)
- 一種基于標(biāo)簽確定項(xiàng)目成員的方法、裝置以及存儲介質(zhì)





