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