李 浩
南京城市智能交通股份有限公司
數(shù)據(jù)挖掘技術(shù)在軟件工程中的應(yīng)用探究
李 浩
南京城市智能交通股份有限公司
數(shù)據(jù)挖掘技術(shù)在軟件開發(fā)過程中有著廣泛的應(yīng)用前景,但是國內(nèi)對此技術(shù)的研究僅僅在理論研究階段,需要通過對其深化讓其發(fā)揮更大的價(jià)值。只有不斷探索研究,才能夠讓數(shù)據(jù)挖掘技術(shù)在軟件工程中的應(yīng)用變得更加成熟可靠,并在更加廣泛的其他領(lǐng)域中得到更加優(yōu)異的表現(xiàn)。因此,探究當(dāng)前數(shù)據(jù)挖掘技術(shù)在軟件工程中的應(yīng)用策略。鑒于此,本文主要分析數(shù)據(jù)挖掘技術(shù)在軟件工程中的應(yīng)用。
數(shù)據(jù)挖掘技術(shù);軟件工程;應(yīng)用
1.1 數(shù)據(jù)挖掘技術(shù)的含義
所謂數(shù)據(jù)挖掘,主要指的是在大量的數(shù)據(jù)信息中利用科學(xué)、有效的算法第一時(shí)間獲取到有用信息的篩選過程。大量的信息存在于生產(chǎn)和生活領(lǐng)域,使得人們在處理事情是無從下手,這樣大大降低了人們的工作效率,也浪費(fèi)了工作人員寶貴的時(shí)間。而這一問題通過數(shù)據(jù)挖掘技術(shù)的使用得到了很好的解決。
1.2 數(shù)據(jù)挖掘技術(shù)所采用的方法
(1)遺傳算法的使用。所謂遺傳算法,主要是指基于生物自然選擇與遺傳激勵(lì)的隨機(jī)搜索算法,也是數(shù)據(jù)挖掘技術(shù)常用的一種操作方法。遺傳算法的有點(diǎn)就在于表面上看似無聯(lián)系的事物,卻能在事物模型間建立相關(guān)的練習(xí),實(shí)現(xiàn)事物之間共同發(fā)展,現(xiàn)在生物界越來越重視的遺傳基因等的研究,所以這種方法很受人們的歡迎。
(2)采用決策樹方法。這種方法主要用于對信息的分類和整合,在遇到大量的信息的時(shí)候,能夠在短時(shí)間內(nèi)找出關(guān)鍵的信息,能夠使信息分類的快速化和簡單化,并且保證了信息分類的準(zhǔn)確度,但是此方法的不足之處就在于具有較差的抗噪性能,不能全面的來表述較為復(fù)雜的概念。
(3)采用統(tǒng)計(jì)分析法。往往會(huì)利用回歸分析和主成分分析等方法來分析數(shù)據(jù)庫字段之間的關(guān)系。在字段之間的關(guān)系包括相關(guān)關(guān)系,函數(shù)關(guān)系也是其中的一種,不同的是函數(shù)關(guān)系可以用公式來表示,而相關(guān)關(guān)系則不能通過公示來表示關(guān)系,系統(tǒng)分析法的使用為這種關(guān)系的分析提供了便利。
(4)采用可視化技術(shù)。可視化技術(shù)是采用一些圖表來對數(shù)據(jù)進(jìn)行表現(xiàn),便于對數(shù)據(jù)的理解,比如,使用簡單圖形來展示存在于數(shù)據(jù)庫中的多個(gè)數(shù)據(jù),使研究者看起來一目了然,使單調(diào)的數(shù)據(jù)形象化,更容易掌握數(shù)據(jù)的相關(guān)信息。
(5)采用神經(jīng)網(wǎng)絡(luò)方法。它模擬人腦神經(jīng)元結(jié)構(gòu),以MP模型和Hebb學(xué)習(xí)規(guī)則為基礎(chǔ),用神經(jīng)網(wǎng)絡(luò)連接的權(quán)值表示知識,其學(xué)習(xí)體現(xiàn)在神經(jīng)網(wǎng)絡(luò)權(quán)值的逐步計(jì)算上。前饋式網(wǎng)絡(luò)、反饋式網(wǎng)絡(luò)和自組織網(wǎng)絡(luò)是常用的三種神經(jīng)網(wǎng)絡(luò)模型,分別用于預(yù)測、聯(lián)想記憶和聚類等。
軟件工程度量過程中,其中已經(jīng)從大量數(shù)據(jù)中提取部分信息,但是仍然存在大量的數(shù)據(jù)隱藏在軟件工程數(shù)據(jù)庫內(nèi),而數(shù)據(jù)挖掘技術(shù)的應(yīng)用,能夠有效支持和提高對軟件度量。數(shù)據(jù)挖掘技術(shù)的應(yīng)用,即從數(shù)據(jù)庫中提取全新、重要且有用的信息,在軟件開發(fā)時(shí)可以從大量數(shù)據(jù)中尋找所有相關(guān)信息。隨著軟件開發(fā)需求不斷的提高,數(shù)據(jù)挖掘技術(shù)在實(shí)際應(yīng)用中的優(yōu)勢逐漸被體現(xiàn)出來。并且軟件與硬件基礎(chǔ)設(shè)施已經(jīng)具備處理發(fā)現(xiàn)驅(qū)動(dòng)的數(shù)據(jù)分析所需的密集計(jì)算能力,且各種技術(shù)在持續(xù)更新,具有良好的實(shí)際應(yīng)用效果,例如神經(jīng)網(wǎng)絡(luò)、模式識別、決策樹等。另外,數(shù)據(jù)存儲與貯藏集成可以為軟件開發(fā)組織提供大量的數(shù)據(jù),同時(shí)也進(jìn)一步促使數(shù)據(jù)挖掘技術(shù)在軟件開發(fā)中的應(yīng)用。
3.1 建立數(shù)據(jù)信息軟件
(1)數(shù)據(jù)倉庫系統(tǒng)。一是源數(shù)據(jù)階段:此階段主要是對歷史數(shù)據(jù)、當(dāng)前數(shù)據(jù)和綜合數(shù)據(jù)進(jìn)行收集。二是源數(shù)據(jù)預(yù)處理階段:其主要包括關(guān)系數(shù)據(jù)庫、軟件數(shù)據(jù)文檔和其他。三是進(jìn)入倉庫管理階段:主要包括數(shù)據(jù)倉庫管理工具、抽取、轉(zhuǎn)換、裝載、元數(shù)據(jù)庫和數(shù)據(jù)建模工具。四是知識基DM分析工具:分類分析工具、聚類分析工具、關(guān)聯(lián)分析工具和序列分析工具。五是可視化的軟件領(lǐng)域知識:揭示影響軟件質(zhì)量的必然因素。五個(gè)方面構(gòu)成整個(gè)數(shù)據(jù)倉庫管理系統(tǒng)。
(2)數(shù)據(jù)倉庫建模。首先,需要將客戶所需要的信息進(jìn)行匯總整理,從而做好系統(tǒng)功能、界面、數(shù)據(jù)等方面的確定。其次,客戶評估信息主要是應(yīng)用軟件測試,(其中包括動(dòng)態(tài)測試,也包括靜態(tài)測試,形式化測試)獲得相應(yīng)的評估信息,將其與客戶所需要的信息進(jìn)行匯總,權(quán)衡軟件在應(yīng)用中的質(zhì)量,從中尋找可能存在的錯(cuò)誤,并對其進(jìn)行修改。第三,軟件系統(tǒng)信息是軟件應(yīng)用的基礎(chǔ),其主要包括系統(tǒng)的規(guī)模、范圍、總體要求,以及所需要的支撐環(huán)境。第四,可行性報(bào)告主要指的是其是否具有運(yùn)行的可行性,技術(shù)、經(jīng)濟(jì)、法律、使用是否能夠達(dá)到需要的目的。
3.2 對集成軟件信息數(shù)據(jù)倉庫進(jìn)行信息挖掘
(1)聚類分析發(fā)現(xiàn)。通過某些相似的需求將某一些客戶分成一組成為聚類,使客戶的信息更容易被開發(fā)人員了解,以便于提供更高服務(wù)水平,和滿意的服務(wù)。將某些客戶聚類為一組,可以專門為其要求開發(fā)出具有特別功能的軟件,通過聚類分析,可以對客戶的軟件應(yīng)用情況進(jìn)行有甄別性的觀察,從而讓軟件達(dá)到一種很好的使用效果。
(2)分類分析的發(fā)現(xiàn)。與聚類完全不同,分類分析是通過已經(jīng)標(biāo)記的特點(diǎn)進(jìn)行數(shù)據(jù)分類。分類就是為了通過記錄表現(xiàn)來方便的描述這一類數(shù)據(jù)所具有的特點(diǎn)。分類分析主要應(yīng)用于決策樹、神經(jīng)網(wǎng)絡(luò)和徑向基礎(chǔ)函數(shù)等軟件中。分類分析的結(jié)果可讓我們在數(shù)據(jù)庫的設(shè)計(jì)過程中更有針對性,可以通過軟件對所應(yīng)對的客戶進(jìn)行屬性劃分,針對不同的客戶提供不同的服務(wù)或者保護(hù)。
(3)序列分析的發(fā)現(xiàn)。序列分析是完全獨(dú)立的一種分析算法,其區(qū)別于以上兩種算法。這類算法主要是根據(jù)數(shù)據(jù)的序列或者事件進(jìn)行檢測。由于不同的客戶要求同一軟件為其提供的功能一般不同,因此,軟件分析人員就可將客戶按其所傾向需求的功能模式進(jìn)行分類。
總之,為更好的適應(yīng)網(wǎng)絡(luò)科技發(fā)展,社會(huì)上對于軟件的需求也在增加,然而隨著軟件規(guī)模的擴(kuò)大,很多軟件開發(fā)無法得到合理控制,因此,數(shù)據(jù)挖掘技術(shù)被應(yīng)用到軟件工程中了,主要是借助技術(shù)手段獲取有價(jià)值的數(shù)據(jù),以便及時(shí)確定故障所在,檢測系統(tǒng)漏洞,最終完成成本評估。
[1]陳建樺.數(shù)據(jù)挖掘技術(shù)在軟件工程中的應(yīng)用研究[J].硅谷,2014,01:73+51.
[2]劉玉峰.數(shù)據(jù)挖掘技術(shù)在軟件知識庫中的應(yīng)用研究[D].廣西師范大學(xué),2010.