當前位置:學問君>學習教育>畢業論文>

數據挖掘技術在軟件工程中的應用研討論文

學問君 人氣:1.38W

摘要:資訊時代背景下,計算機技術等現代資訊技術在社會各個行業、領域,得到了越來越廣泛且深入的應用,極大提高人們資訊處理效率,方便人們工作、生活的同時,對於數據挖掘技術的科學應用,提出了更高、更新的要求。資訊時代背景下,數據挖掘技術表現出廣闊的應用前景,是快速處理海量資訊的技術基礎。筆者即從數據挖掘技術入手,就其在軟件工程中的應用,發表幾點看法,以供相關人員參考。

數據挖掘技術在軟件工程中的應用研討論文

【關鍵詞】數據挖掘技術;軟件工程;應用

本文即圍繞數據挖掘技術,就其在軟件工程中的具體應用,進行了分析和探討,具體內容如下:

1數據挖掘技術概述

數據挖掘(Datamining),也稱爲數據採礦,是數據庫知識發現的一個基礎環節,是在海量數據中自動完成隱藏特殊關係數據搜尋的過程,數據挖掘技術就是這一過程應用的相關技術。一般來說,數據挖掘過程可以分爲四個環節進行,分別是選擇軟件庫儲存的數據、完成選擇數據的預處理、對預處理得到的格式化數據進行挖掘、以及最終獲得目標數據。軟件工程是數據挖掘技術的重要應用領域,具體的數據挖掘工作普遍分爲三個層次進行,分別是交互式可視數據探查、自動模式提取和建構模型。三個層次之間存在着直接的關聯聯繫,其中可視數據探查是後兩者的基礎,而建構模型又是前兩者的指導。軟件工程領域應用數據挖掘技術的目的,主要是藉助聚類、分析、預測、統計等技術手段,在海量數據資源中快速分辨、尋找符合人們應用需求的數據資訊,並自動將檢索到的資訊反饋至軟件系統。此外,爲保障數據挖掘的科學性和有效性,數據源還應儘可能達到龐大、真實的要求。

2數據挖掘技術的應用分析

2.1開源軟件開發中的應用分析

所謂開源軟件,就是原始碼處於開放狀態的軟件,一般來說,開源軟件普遍對客戶免費開放,也正由於開源軟件的這一特性,導致對開源軟件的管理和控制變得相對困難。在這種環境背景下,在開源軟件開發階段引入數據挖掘技術,可有效提高開源軟件的開發質量。以大阪大學設計的分佈式數據挖掘系統爲例,該系統就可以在實現大規模系統挖掘的同時,完成對不同開源軟件的挖掘;再以牛津大學設計的數據挖掘系統爲例,該系統實現了系統開發者和使用者的持續跟蹤管理,從而大幅度地提高了開源軟甲的使用率。

2.2軟件項目管理中的應用分析

數據挖掘技術在軟件項目管理中的應用,主要表現在以下兩個方面:

(1)版本控制資訊挖掘包含的對組織關係的挖掘;

(2)對版本控制資訊的挖掘。

就軟件項目管理而言,其本身具有鮮明的系統性和複雜性特徵,對組織關係的挖掘,是實現各類資源科學分配和協調的重要前提。以整個軟件項目管理過程中產生的電子郵件、共享文檔爲例,對此進行數據挖掘就可以有效區分不同工種人員的組織關係,避免秩序混亂問題的發生,從而保障軟件項目管理工作的順利進行。另一方面,版本控制可以實現對檔案內容變化的詳細記錄,並作爲用戶瞭解版本修訂情況的依據和基礎。針對版本控制資訊應用數據挖掘技術可進一步降低系統維護成本,同時可起到一定的警示作用,及時反映系統修復記錄中存在的紕漏,最終達到提高軟件項目管理水平的目的。

2.3程序代碼中的應用分析

本文涉及的程序代碼,主要是指克隆代碼,即透過簡單的“複製、粘貼”操作獲得並再次進行使用的代碼。數據挖掘在克隆代碼檢測中的應用,是數據挖掘技術應用的早期形式之一,目前應用較爲普遍的方法包括基於標識符對比方法、基於文字對比方法等幾類。總的來說,數據挖掘在克隆代碼檢測中的應用還有待進一步的發展和完善,尤其是關於語法資訊和語義挖掘的考慮,以提高檢測的科學性和準確性。對橫切關注點進行挖掘,也是數據挖掘技術的重要應用,主要是由於部分關注點在程序中的代碼具有極高的相似度,甚至是使用相同代碼導致的。目前,應用於Aspect的挖掘方法衆多,根據不同方法的具體特點,可以分爲形式概念分析方法、本文和類型分析方法、聚類分析方法、以及自然語言分析方法等等。在對執行模式進行數據挖掘時,應優先選擇方法執行關係挖掘和形式概念分析法兩種方法。此外,數據挖掘技術還可用於對數據庫目標構件或代碼的挖掘應用,在數據挖掘技術的支援下,可大幅度提高檢索速度、效率和準確度。

2.4故障檢測中的應用分析

從故障檢測的角度分析,對程序執行記錄進行數據挖掘,可提供程序的交互模式和說明,而以上資訊均可以作爲軟件故障定位和檢測的依據。對程序說明的數據挖掘過程,就是對資訊的.跟蹤和逆向建模的過程,該過程對於加深對程序的理解,以及優化程序後續的維護管理,具有重要的作用和意義。目前,基於規則的挖掘方法是應用較爲普遍的方法,其主要透過對程序行爲的挖掘發現對應的規則,進而藉助時態邏輯完成表達。

3數據挖掘技術的主要應用方法

3.1分類

數據挖掘技術涉及的相關分類方法,大致等同於某種預測分類標號的執行動作。在實際應用過程中,通常需要建構相應的分析模型,並提前根據相應規則輸入概念集或數據類集,以作爲分析模型的應用基礎。目前,數據挖掘技術應用於軟件工程領域的分類方法中,主要的分類方法包括神經網絡分類法、判斷樹法、貝葉斯分類法、以及支援向量機等幾類。其中,判斷樹法在分類計算過程中主要藉助貪心算法作爲邏輯基礎,根據從上而下遞歸的模式完成判定樹的構造,而判定樹包含的各個子節點,就分別表示不同的軟件類別標號。

3.2聚類

聚類具體是指將研究涉及的大量數據,按照一定標準細分爲不同簇或類的過程,從而在保障相同簇的對象之間擁有較好相似度的同時,不同的簇的對象之間有着較明顯的差異度。聚類和分類有着本質上的差異,聚類過程劃分的類對象具有不可預知性,即無指導的學習方法。聚類分析方法在其他算法的預處理範疇中有着大範圍的應用,尤其在數據分佈資訊獨立性分析方面有重要應用,不僅可更好地挖掘孤立點,同時可提高欺詐行爲檢測的效率和準確性。

4結語

綜上所述,資訊時代背景下,數據挖掘技術是快速處理海量資訊、準確尋找目標資訊的關鍵。就軟件工程而言,數據挖掘技術在開源軟件開發、軟件項目管理、程序代碼、以及故障檢測等方面,均有着重要的應用,相關人員必須提高對數據挖掘技術的重視和關注,切實加強數據挖掘技術的實際應用,以促進我國軟件工程行業的進一步發展。

參考文獻

[1]張佳新.數據挖掘技術在軟件工程中的應用探究[J].電腦編程技巧與維護,2018(04):88-89,114.

[2]阮弘毅.軟件工程數據挖掘技術應用研究[J].數碼世界,2018(02):126.