基于序列匹配的代碼克隆分析系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf_第1頁(yè)
已閱讀1頁(yè),還剩61頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、隨著計(jì)算機(jī)技術(shù)的發(fā)展和軟件需求的不斷增加,在軟件快速開(kāi)發(fā)和再工程中越來(lái)越頻繁地強(qiáng)調(diào)代碼復(fù)用。好的代碼復(fù)用方式能反映出好的設(shè)計(jì)意圖,節(jié)省開(kāi)發(fā)成本,提高軟件質(zhì)量,而不好的復(fù)用方式會(huì)對(duì)整個(gè)軟件系統(tǒng)的開(kāi)發(fā)和維護(hù)帶來(lái)很多不利因素,因此對(duì)于代碼復(fù)用的分析顯得越來(lái)越重要。代碼克隆分析作為衡量代碼復(fù)用的一種有效方式,在軟件開(kāi)發(fā)、維護(hù)以及質(zhì)量保證中發(fā)揮著重要作用。 代碼克隆檢測(cè)技術(shù)是對(duì)源代碼中的復(fù)用代碼進(jìn)行檢測(cè)和分析的技術(shù),它通過(guò)使用各種檢測(cè)算法

2、,在不同粒度上對(duì)源代碼的文本結(jié)構(gòu)或語(yǔ)義邏輯進(jìn)行分析,并找出相似的代碼結(jié)構(gòu)。代碼克隆檢測(cè)已經(jīng)應(yīng)用到軟件工程的各個(gè)領(lǐng)域,如程序分析、軟件理解、軟件質(zhì)量評(píng)估、程序剽竊檢測(cè)、系統(tǒng)演化追蹤、軟件再工程等。本文設(shè)計(jì)的系統(tǒng)就是以代碼克隆檢測(cè)技術(shù)為基礎(chǔ),采用Smith-Waterman匹配算法進(jìn)行克隆檢測(cè)。 在實(shí)際應(yīng)用中,常用的克隆檢測(cè)技術(shù)是基于文本或者語(yǔ)法樹的檢測(cè),前者速度快、準(zhǔn)確率低而后者的準(zhǔn)確率高、計(jì)算代價(jià)也高。本文考察了源代碼的抽象表示

3、方法,克隆檢測(cè)粒度,克隆檢測(cè)技術(shù),在介紹克隆檢測(cè)流程和常用匹配算法的基礎(chǔ)上,利用語(yǔ)法樹和序列匹配相結(jié)合的方式,給出了一種基于抽象語(yǔ)法樹的代碼序列生成方法和一種基于序列匹配的克隆檢測(cè)方法。 本文最后設(shè)計(jì)和實(shí)現(xiàn)一個(gè)代碼克隆分析系統(tǒng)。在前端預(yù)處理系統(tǒng)中,對(duì)生成的抽象語(yǔ)法樹進(jìn)行了壓縮處理,這樣就使得程序經(jīng)過(guò)詞法分析、語(yǔ)法分析之后,輸出的語(yǔ)法樹中的內(nèi)部節(jié)點(diǎn)數(shù)目大大減少,同時(shí),將轉(zhuǎn)換后的代碼以序列的形式存儲(chǔ)到哈希表中,有效地控制了檢測(cè)粒度,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論