摘 要 數據挖掘是指在大數據中開發出有價值信息數據的過程。計算機技術的不斷進步,通過人工的方式進行軟件的開發與維護難度較大。而數據挖掘能夠有效的提升軟件開發的效率,并能夠在大量的數據中獲得有效的數據。文章主要探究軟件工程中數據挖掘技術的任務和存在的問題,并重點論述軟件開發過程中出現的問題和相關的解決措施。
【關鍵詞】軟件工程 數據挖掘 解決措施
在軟件開發過程中,為了能夠獲得更加準確的數據資源,軟件的研發人員就需要搜集和整理數據。但是在大數據時代,人工獲取數據信息的難度極大。當前,軟件工程中運用最多的就是數據挖掘技術。軟件挖掘技術是傳統數據挖掘技術在軟件工程方向的其中一部分。但是它具有自身的特征,體現在以下三個方面:
(1)在軟件工程中,對有效數據的挖掘和處理;
(2)挖掘數據算法的選擇問題;
(3)軟件的開發者該如何選擇數據。
1 在軟件工程中數據挖掘的主要任務
在數據挖掘技術中,軟件工程數據挖掘是其中之一,其挖掘的過程與傳統數據的挖掘無異。通常包括三個階段:第一階段,數據的預處理;第二階段,數據的挖掘;第三階段,對結果的評估。第一階段的主要任務有對數據的分類、對異常數據的檢測以及整理和提取復雜信息等。雖然軟件工程的數據挖掘和傳統的數據挖掘存在相似性,但是也存在一定的差異,其主要體現在以下三個方面:
1.1 軟件工程的數據更加復雜
軟件工程數據主要包括兩種,一種是軟件報告,另外一種是軟件的版本信息。當然還包括一些軟件代碼和注釋在內的非結構化數據信息。這兩種軟件工程數據的算法是不同的,但是兩者之間又有一定的聯系,這也是軟件工程數據挖掘復雜性的重要原因。
1.2 數據分析結果的表現更加特殊
傳統的數據挖掘結果可以通過很多種結果展示出來,最常見的有報表和文字的方式。但是對于軟件工程的數據挖掘來講,它最主要的職能是給軟件的研發人員提供更加精準的案例,軟件漏洞的實際定位以及設計構造方面的信息,同時也包括數據挖掘的統計結果。所以這就要求軟件工程的數據挖掘需要更加先進的結果提交方式和途徑。
1.3 對數據挖掘結果難以達成一致的評價
我國傳統的數據挖掘已經初步形成統一的評價標準,而且評價體系相對成熟。但是軟件工程的數據挖掘過程中,研發人員需要更多復雜而又具體的數據信息,所以數據的表示方法也相對多樣化,數據之間難以進行對比,所以也就難以達成一致的評價標準和結果。不難看出,軟件工程數據挖掘的關鍵在于對挖掘數據的預處理和對數據結果的表示方法。
2 軟件工程研發階段出現的問題和解決措施
軟件在研發階段主要的任務是對軟件運行程序的編寫。以下是軟件在編碼和結果的提交過程中出現的問題和相應的解決措施。
2.1 對軟件代碼的編寫過程
該過程需要軟件的研發人員能夠對自己需要編寫的代碼結構與功能有充分的了解和認識。并能夠依據自身掌握的信息,在數據庫中搜集到可以使用的數據信息。通常情況下,編程需要的數據信息可以分為三個方面:
(1)軟件的研發人員能夠在已經存在的代碼中搜集可以重新使用的代碼;
(2)軟件的研發人員可以搜尋可以重用的靜態規則,比如繼承關系等。
(3)軟件的開發人員搜尋可以重用的動態規則。
包括軟件的接口調用順序等。在尋找以上信息的過程中,通常是利用軟件的幫助文檔、尋求外界幫助和搜集代碼的方式實現,但是以上方式在搜集信息過程中往往會遇到較多的問題,比如:幫助文檔的準確性較低,同時不夠完整,可利用的重用信息不多等。
2.2 對軟件代碼的重用
在對軟件代碼重用過程中,最關鍵的問題是軟件的研發人員必須掌握需要的類或方法,并能夠通過與之有聯系的代碼實現代碼的重用。但是這種方式哦足跡信息將會耗費工作人員大量的精力。而通過關鍵詞在代碼庫中搜集可重用的軟件代碼,同時按照代碼的相關度對搜集到的代碼進行排序,該過程使用的原理就是可重用的代碼必然模式基本類似,最終所展現出來的搜索結果是以上下文結構的方式展現的。比如:類與類之間的聯系。其實現的具體流程如下:
(1)軟件的開發人員創建同時具備例程和上下文架構的代碼庫;
(2)軟件的研發人員能夠向代碼庫提供類的相關信息,然后對反饋的結果進行評估,創建新型的代碼庫。
(3)未來的研發人員在搜集過程中能夠按照評估結果的高低排序,便于查詢,極大地縮減工作人員的任務量,提升其工作效率。
2.3 對動態規則的重用
軟件工程領域內對動態規則重用的研究已經相對成熟,通過在編譯器內安裝特定插件的方式檢驗代碼是否為動態規則最適用的,并能夠將不適合的規則反饋給軟件的研發人員。其操作流程為:
(1)軟件的研發人員能夠規定動態規則的順序,主要表現在:使用某一函數是不能夠調用其他的函數。
(2)實現對相關數據的保存,可以通過隊列等簡單的數據結構完成。在利用編譯拓展中檢測其中的順序。
(3)能夠將錯誤的信息反饋給軟件的研發人員。
3 結束語
在軟件工程的數據挖掘過程中,數據挖掘的概念才逐步被定義,但是所需要挖掘的數據是已經存在的。數據挖掘技術在軟件工程中的運用能夠降低研發人員的工作量,同時軟件工程與數據挖掘的結合是計算機技術必然的發展方向。從數據挖掘的過程來講,在其整個實施過程和周期中都包括軟件工程。而對數據挖掘的技術手段來講,它在軟件工程中的運用更加普遍。在對數據挖掘技術的研究過程中可以發現,該技術雖然已經獲得一定的效果,但是還有更多未被挖掘的空間,還需要進一步的研究和發現。
參考文獻
[1]王藝蓉.試析面向軟件工程數據挖掘的開發測試技術[J].電子技術與軟件工程,2017(18):64.
[2]吳彥博.軟件工程中數據挖掘技術的運用探索[J].數字通信世界,2017(09):187.
[3]周雨辰.數據挖掘技術在軟件工程中的應用研究[J].電腦迷,2017(08):27-28.
[4]劉桂林.分析軟件工程中數據挖掘技術的應用方式[J].中國新通信,2017,19(13):119.
作者簡介
鄭宇(1981-),男,貴州省貴陽市人。碩士研究生學歷。講師。研究方向為軟件工程。
作者單位
貴州財經大學信息學院 貴州省貴陽市 550025