楊茜婷 張瀟 任貴銀 魏煜霖
摘要:因大數(shù)據(jù)的合理且高效應(yīng)用,極大程度便利了各行各業(yè)數(shù)據(jù)分析工作,而對(duì)于大型軟件工程領(lǐng)域來(lái)說(shuō),其在技術(shù)及管理方面所涉及的數(shù)據(jù)量都十分大,因而在軟件工程領(lǐng)域的一個(gè)重難點(diǎn)問(wèn)題就是如何對(duì)這些數(shù)據(jù)進(jìn)行有效管理和充分利用,基于數(shù)據(jù)挖掘技術(shù)的應(yīng)用能夠很好的應(yīng)對(duì)上述問(wèn)題,因此針對(duì)軟件工程領(lǐng)域中數(shù)據(jù)挖掘技術(shù)應(yīng)用的探討十分必要。
關(guān)鍵詞:新時(shí)期;數(shù)據(jù)挖掘技術(shù);軟件工程領(lǐng)域;應(yīng)用
中圖分類號(hào):TP311.13;TP311.5?文獻(xiàn)標(biāo)識(shí)碼:A?文章編號(hào):1672-9129(2020)05-0029-01
Abstract:because?of?the?large?data?is?reasonable?and?efficient?application,greatly?facilitate?the?data?analysis?work?in?all?walks?of?life,and?for?large?software?engineering?domain,the?amount?of?data?involved?in?technology?and?management?is?very?big,so?a?difficult?point?in?the?field?of?software?engineering?problem?is?how?to?effective?management?and?make?full?use?of?these?data,based?on?the?application?of?data?mining?technology?can?be?very?good?deal?with?these?problems,so?in?view?of?the?data?mining?technology?in?the?field?of?software?engineering?application?discussion?is?necessary.
Key?words:New?era;Data?mining?technology;Software?engineering;application
大數(shù)據(jù)分析領(lǐng)域中,全新的數(shù)據(jù)處理理念之一就是數(shù)據(jù)挖掘,其核心目的在于分析處理巨大數(shù)量且低密度價(jià)值的數(shù)據(jù),從中將一些對(duì)所研究問(wèn)題有價(jià)值的信息提取出來(lái)。在軟件工程發(fā)展不斷深入的背景下,海量數(shù)據(jù)分析難題開始在軟件開放、項(xiàng)目管理等方面逐漸凸顯,如源代碼及版本管理、分析漏洞等。在軟件長(zhǎng)期運(yùn)行的一個(gè)過(guò)程,也會(huì)有大量數(shù)據(jù)被積累,此時(shí)僅借助傳統(tǒng)數(shù)據(jù)處理技術(shù)很難完成相應(yīng)的分析和處理,因此針對(duì)軟件工程領(lǐng)域中、數(shù)據(jù)挖掘技術(shù)應(yīng)用研究的意義十分重大。
1?軟件漏洞掃描中應(yīng)用數(shù)據(jù)挖掘
在軟件工程中的重要內(nèi)容就是漏洞檢查,其能夠保障軟件工程中的安全隱患得以及時(shí)有效發(fā)現(xiàn),促使軟件質(zhì)量逐步提升,為系統(tǒng)安全提供有效保障。以往漏洞檢測(cè)技術(shù)應(yīng)用時(shí),因需要對(duì)較大數(shù)據(jù)量進(jìn)行掃描,此時(shí)如果以逐條依次分析的方式進(jìn)行處理,必然會(huì)造成長(zhǎng)時(shí)間等待現(xiàn)象,不具備較強(qiáng)的可操作性。而將數(shù)據(jù)挖掘技術(shù)應(yīng)用到漏洞掃描中,能夠促進(jìn)掃描效率逐步提升,具體來(lái)說(shuō)掃描步驟可通過(guò)以下方式來(lái)進(jìn)行:第一對(duì)測(cè)試項(xiàng)目進(jìn)行創(chuàng)建,以用戶具體需求為依據(jù),在軟件測(cè)試方案方面進(jìn)行針對(duì)性制定,確保需要掃描哪些類型漏洞、應(yīng)該采用何種方式進(jìn)行掃描等得以充分明確。第二,對(duì)漏洞信息進(jìn)行收集,針對(duì)漏洞進(jìn)行掃描的前提要素就是對(duì)漏洞進(jìn)行認(rèn)知,簡(jiǎn)單來(lái)說(shuō)就是要定義漏洞,此時(shí)應(yīng)對(duì)有關(guān)軟件缺陷的大量信息進(jìn)行搜集,同時(shí)以定量化的方式來(lái)處理一些屬性。第三,針對(duì)理論模型加以選擇,以掃描要求為依據(jù),對(duì)適當(dāng)數(shù)據(jù)挖掘模型加以選取,同時(shí)以前期收集的數(shù)據(jù)資料為主,充分訓(xùn)練模型,確保有效的訓(xùn)練集及測(cè)試集得以獲取,為最佳掃描策略獲得提供有利條件。第四,漏洞掃描操作開展,這一過(guò)程應(yīng)對(duì)之前得到的模型進(jìn)行采用,將其在軟件掃描測(cè)試過(guò)程進(jìn)行應(yīng)用,同時(shí)在分類數(shù)據(jù)并分析數(shù)據(jù)特征的情況下,將漏洞信息提取出來(lái)。最后,以掃描結(jié)果為依據(jù)對(duì)漏洞進(jìn)行修復(fù),同時(shí)將重新掃描操作開展,對(duì)漏洞成功修復(fù)與否進(jìn)行確認(rèn)。
2?執(zhí)行記錄分析中應(yīng)用數(shù)據(jù)挖掘
從代碼關(guān)聯(lián)性分析角度來(lái)說(shuō),對(duì)其具有重要意義的就是分析程序執(zhí)行路徑,挖掘軟件的執(zhí)行記錄數(shù)據(jù),對(duì)代碼功能深入理解、維護(hù)軟件等能夠提供重要幫助。從本質(zhì)角度來(lái)看,挖掘執(zhí)行記錄的數(shù)據(jù),能夠跟蹤其執(zhí)行路徑,進(jìn)而在此基礎(chǔ)上將逆向模型建立起來(lái)。這一數(shù)據(jù)挖掘過(guò)程步驟一般有插裝及跟蹤、記錄、分析等,在具體應(yīng)用時(shí),應(yīng)將相應(yīng)信息插裝在待測(cè)試的軟件代碼中,同時(shí)對(duì)軟件進(jìn)行執(zhí)行并記錄其執(zhí)行過(guò)程,在通過(guò)相應(yīng)預(yù)處理的后期,需要對(duì)分類及類聚等大數(shù)據(jù)分析方式加以應(yīng)用,借此將關(guān)鍵記錄信息提取出來(lái),以此為基礎(chǔ)將相應(yīng)的系統(tǒng)功能模型或架構(gòu)繪制出來(lái),為對(duì)現(xiàn)有代碼使用的軟件系統(tǒng)進(jìn)行有效跟蹤及分析、軟件工程穩(wěn)定性等提供保障。
3?開源軟件挖掘中應(yīng)用數(shù)據(jù)挖掘
開源軟件數(shù)據(jù)挖掘分析技術(shù)中,常見應(yīng)用領(lǐng)域就是復(fù)制代碼,軟件工程中十分常見的就是代碼復(fù)用,一般來(lái)說(shuō),在多個(gè)項(xiàng)目中都會(huì)反復(fù)使用約一半左右的通用源代碼,此時(shí)則說(shuō)明基于代碼克隆技術(shù)應(yīng)用,能夠確保對(duì)軟件內(nèi)部代碼間、不同軟件間代碼檢測(cè)得以良好實(shí)現(xiàn),確保具有利用價(jià)值的代碼段得以快速提取。在分析代碼特征的情況下,能夠確保代碼克隆過(guò)程引入漏洞的現(xiàn)象發(fā)生得以有效避免,同時(shí)也能夠支撐后期軟件維護(hù)、軟件升級(jí)等。
4?版本信息管理中應(yīng)用數(shù)據(jù)挖掘
在軟件工程領(lǐng)域中,所涉及的重要問(wèn)題之一就是代碼管理,可以說(shuō)當(dāng)前社會(huì)中的所有軟件企業(yè)都會(huì)對(duì)版本控制系統(tǒng)加以應(yīng)用,借此來(lái)維護(hù)軟件或代碼版本,為團(tuán)隊(duì)成員間能夠獲取全局一致且統(tǒng)一化的代碼提供保障作用。但是從大型軟件開發(fā)團(tuán)隊(duì)實(shí)際情況來(lái)看,一項(xiàng)較為復(fù)雜的工作就是代碼管理,在每一次更新版本的過(guò)程中,代碼管理混亂風(fēng)險(xiǎn)都可能會(huì)引入,不利于版本信息管理的同時(shí),也難以保障版本有效更新和升級(jí)。此時(shí)就可應(yīng)用數(shù)據(jù)挖掘技術(shù)來(lái)挖掘軟件變更歷史信息,在對(duì)比分析大量代碼的情況下,將各模塊及模板之間的內(nèi)部聯(lián)系充分確立,此時(shí)不僅能夠?yàn)榇a高效融合給予保障,同時(shí)也能夠?qū)⒙┒匆雴?wèn)題給予有效避免。
結(jié)語(yǔ):在軟件行業(yè)不斷發(fā)展壯大的背景下,相應(yīng)軟件工程的開展,應(yīng)對(duì)全新管理及技術(shù)工具加以應(yīng)用,如此才能確??焖侔l(fā)展需求得以充分滿足。作為數(shù)據(jù)分析技術(shù)之一的數(shù)據(jù)挖掘,其能夠保障快速且精確的數(shù)據(jù)分析及處理得以良好實(shí)現(xiàn),因此在軟件工程中應(yīng)不斷探索數(shù)據(jù)挖掘應(yīng)用,確保為軟件工程提供充足保障。
參考文獻(xiàn):
[1]周鶴.數(shù)據(jù)挖掘技術(shù)在軟件工程中的應(yīng)用探究[J].計(jì)算機(jī)產(chǎn)品與流通,2020(08):22.
[2]賈淑滟.試論數(shù)據(jù)挖掘技術(shù)在軟件工程中的應(yīng)用[J].山西廣播電視大學(xué)學(xué)報(bào),2019,24(04):79-82.
[3]李高杰.軟件工程中數(shù)據(jù)挖掘技術(shù)的應(yīng)用與研究[J].無(wú)線互聯(lián)科技,2019,16(21):141-142.
[4]張立鑒.數(shù)據(jù)挖掘技術(shù)在軟件工程中的應(yīng)用研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2019(06):47-48.