龍艷
摘 要:在軟件開發(fā)領域,數(shù)據(jù)挖掘技術憑借其優(yōu)勢被大力推崇,但礙于國內針對此技術的研究尚停留在初級階段,故而只有通過不斷的理論探討和實踐積累,才能確保其發(fā)揮更大的價值。針對此,本文圍繞數(shù)據(jù)挖掘技術在軟件工程領域的實際應用展開深度探討。
關鍵詞:數(shù)據(jù)挖掘技術;軟件工程;應用
1 簡要剖析數(shù)據(jù)挖掘技術
1.1 數(shù)據(jù)挖掘技術的基本概念
數(shù)據(jù)挖掘技術的發(fā)展時間可追溯到上世紀末期,是建立在數(shù)據(jù)庫中海量理論知識基礎上而來的,并成為數(shù)據(jù)庫領域創(chuàng)新型應用研究技術的典型代表。經過不斷的理論研討和實踐積累,數(shù)據(jù)挖掘技術已經在數(shù)據(jù)庫領域占據(jù)了主導地位,然而由于多方面原因,該技術缺乏明確的基本概念。
當下,由弗勞利提出的針對數(shù)據(jù)挖掘技術的定義是最受公眾認可的,其將該項技術理解為從海量數(shù)據(jù)庫中提取具有實際應用價值,且內容新穎、形式獨特的數(shù)據(jù)信息,并將其作用于可理解模式中。具體內容如下:
其一,數(shù)據(jù)信息不僅要包含多方面專業(yè)領域,并且要保證信息的真實可靠;
其二,能夠符合公眾的興趣愛好;
其三,所獲取的信息新穎獨特且有實際應用價值;
其四,對知識量沒有特定的要求。
總而言之,數(shù)據(jù)挖掘技術對專業(yè)性要求較高,涉獵內容廣泛且復雜,是集人工智能模式、數(shù)據(jù)分析模式于一身的創(chuàng)新型學科。
1.2 技術應用流程簡介
數(shù)據(jù)挖掘流程主要包括如下三個階段:
1)數(shù)據(jù)預處理。在此階段中,高效獲取原始數(shù)據(jù)信息的根本在于明確任務處理對象,換言之,就是獲取符合實際需求標準的數(shù)據(jù)信息。數(shù)據(jù)清洗的宗旨是彌補原始數(shù)據(jù)缺陷,保證數(shù)據(jù)信息的完整性。數(shù)據(jù)抽取就是從海量的數(shù)據(jù)庫中快速獲取與實際任務存在緊密關聯(lián)的數(shù)據(jù)信息。而數(shù)據(jù)轉換的實質就是切換數(shù)據(jù)的格式,提高數(shù)據(jù)信息的適用性,最大限度的滿足需求。
2)數(shù)據(jù)挖掘。首要步驟是制定合理的挖掘任務,具體包括數(shù)據(jù)歸納分類、數(shù)據(jù)評價總結等,然后再確定恰當?shù)耐诰蜻\算方法,結合數(shù)據(jù)的實際特征及系統(tǒng)的具體需求推敲運算方法。
3)模式評估與知識表示。模式的實際用途在于準確表達數(shù)據(jù)挖掘成果,以興趣度作為度量標準,構建有識別能力的完整表達模式。
2 在軟件工程領域應用數(shù)據(jù)挖掘技術的實際策略
軟件工程涉及諸多與軟件相關的數(shù)據(jù)資料,通常這些數(shù)據(jù)資料由軟件代碼庫統(tǒng)一保管儲存,合理應用數(shù)據(jù)庫可以進一步提高軟件開發(fā)人員的實際工作效率,確保系統(tǒng)維護人員全方位了解整個系統(tǒng)框架。例如程序員在分配軟件工程具體任務的過程中,可以迅速且準確的識別系統(tǒng)組件的獨立性。在軟件工程中,統(tǒng)一軟件開發(fā)過程的循環(huán)會生成海量的數(shù)據(jù)信息,而這些數(shù)據(jù)都是待挖掘對象,基于軟件工程的周期限制,整個過程分為如下幾個階段:
2.1 根據(jù)需求采取特異行設計
需求和設計階段就是依照軟件工程的設計標準制定切實可行的方案,一旦需求發(fā)生變化,軟件工程設計要順從這種變化,而且這對程序設計人員的專業(yè)技術也提出了更高的標準要求,設計人員需要掌握優(yōu)越的設計手段,借助數(shù)據(jù)挖掘技術深度剖析軟件代碼重新組構問題,以提高程序代碼抽取的實際效率。
2.2 確定運算法則
此階段是對數(shù)據(jù)挖掘技術需求量最大的關鍵階段,具體包括如下幾個環(huán)節(jié):
其一,在軟件工程編碼過程中,需要結合工程研發(fā)的實際需求,實時記錄軟件編碼程序,以此為基準,深度剖析程序代碼的內在關聯(lián)。
其二,具有調試效應的數(shù)據(jù)挖掘技術。對于軟件工程來說,由于其調試過程對專業(yè)性要求較高,因此多為軟件開發(fā)技術人員獨立操控,其宗旨在于提高軟件系統(tǒng)的安全性和適用性,滿足用戶的需求。軟件系統(tǒng)調試工作基于其自身的復雜繁瑣性,需要消耗大量的時間和精力,并且調試技術人員要遵照行業(yè)標準規(guī)范,特別是針對系統(tǒng)較為復雜的軟件工程,其在一定程度上加大了調試工作的難度。開展調試工作的實際目的就是分析系統(tǒng)漏洞,定位軟件錯誤信息,而通過合理應用數(shù)據(jù)挖掘技術,可以有針對性的減小調試工作的難度。
其三,檢測軟件工程漏洞。任何軟件工程都無法完全避免系統(tǒng)漏洞,根據(jù)相關社會調查結果顯示,常見的軟件工程系統(tǒng)漏洞一般不會給用戶造成過重的經濟損失,例如,1996年發(fā)生在美國的航天飛船墜毀事件,就是最具代表性的實際案例。而且軟件系統(tǒng)漏洞檢測需要消耗整個開發(fā)設計周期超過百分之三十的時間,使得軟件工程系統(tǒng)漏洞檢測工作越發(fā)重要。具體包括如幾點內容:
1)從源代碼中推斷錯誤、復制粘貼錯誤檢測和函數(shù)匹配檢測。以從源代碼中推斷錯誤為例,先要使用頻繁項集挖掘算法找出代碼中頻繁項集,確定滿足最小支持度的程序規(guī)則,進而推斷程序對規(guī)則的順從程度,一旦發(fā)現(xiàn)其中大部分都符合程序基本要求,說明那一小部分極有可能是漏洞規(guī)則。
2)在軟件工程中,系統(tǒng)維護階段較為關鍵,該階段要求維護技術人員充分認知整個系統(tǒng)框架。通常來說,軟件維護的具體工作包括彌補程序缺陷,糾正程序錯漏,優(yōu)化設計環(huán)境,并按照實際需求增設程序應用。在系統(tǒng)維護階段應用數(shù)據(jù)挖掘技術的主要內容有:第一,引導軟件修改。對于軟件系統(tǒng)來說,一個代碼的調整都會引發(fā)一系列關聯(lián)反應,而數(shù)據(jù)挖掘技術就是要確定修改模式,以防模塊修改頻率過高;第二,落實切面挖掘。具體來說就是有針對性的補充編程程序,進一步提高系統(tǒng)的安全穩(wěn)定性。
3 結語
綜上所述,將數(shù)據(jù)挖掘技術合理應用到軟件工程項目中,能夠促進軟件工程的良好發(fā)展,結合現(xiàn)階段的實際應用概況可知,數(shù)據(jù)挖掘技術擁有極為寬廣的發(fā)展空間,需要技術人員進行深入的研究,不斷改進技術水平,強化專業(yè)素質,從而為軟件工程的良性發(fā)展獻策獻力。
參考文獻:
[1]石樂天.數(shù)據(jù)挖掘技術在軟件工程中的應用[J].信息與電腦(理論版),2018(04).
[2]張勇.軟件工程行業(yè)中數(shù)據(jù)挖掘的應用探討[J].中國新通信,2018(05).