栗元龍
(天津市河?xùn)|區(qū)職工大學(xué),天津 300000)
21世紀以來,計算機技術(shù)開始逐步滲透到人們的生活和學(xué)習(xí)中,不斷改變著人們的生活方式,尤其在近幾年,計算機技術(shù)和網(wǎng)絡(luò)技術(shù)更是得到了前所未有的普及與發(fā)展。為了滿足社會發(fā)展對計算機軟件的需求,利用數(shù)據(jù)挖掘技術(shù)在海量數(shù)據(jù)中提取有價值的信息,并將其應(yīng)用到軟件開發(fā)與設(shè)計中非常重要,這不僅可以大幅度降低軟件開發(fā)成本,而且還有助于提高軟件的開發(fā)效率和整體質(zhì)量。
所謂數(shù)據(jù)挖掘技術(shù),簡單的說就是在海量數(shù)據(jù)中提取目標信息的一種計算方式。在大數(shù)據(jù)時代,軟件工程需要處理的信息量很大,如果仍然采用傳統(tǒng)的數(shù)據(jù)處理方法,那么不僅工作量大,而且處理效果也不盡人意。所以,迫切需要一種新型的數(shù)據(jù)處理方式,由此數(shù)據(jù)挖掘技術(shù)應(yīng)運而生,能夠快速、準確的在海量數(shù)據(jù)中提取所需信息,給數(shù)據(jù)整理和分析工作帶來的很大方便。
軟件項目管理所采用的方法是否科學(xué),將直接影響到軟件工程的整體質(zhì)量,將數(shù)據(jù)挖掘技術(shù)應(yīng)用在此項工作中,可以從兩個方面分析其優(yōu)勢所在。首先是對項目組織關(guān)系的有效梳理和協(xié)調(diào)。隨著軟件工程規(guī)模的不斷擴大,工程管理越來越復(fù)雜。在這種情況下,若想切實提高項目管理目標,首要任務(wù)就是做好人力資源的高效分配及利用。數(shù)據(jù)挖掘技術(shù)的應(yīng)用可以實現(xiàn)對人員組織關(guān)系的深入分析,然后以項目管理需求為依據(jù),實現(xiàn)人力資源的重新梳理和優(yōu)化,確保項目的高效運轉(zhuǎn)。其次是對系統(tǒng)漏洞進行修復(fù),保證項目管理水平。這一點主要體現(xiàn)在版本控制信息的管理上,將數(shù)據(jù)挖掘技術(shù)應(yīng)用到版本控制信息管理中,可以幫助設(shè)計者及時發(fā)現(xiàn)系統(tǒng)中的漏洞并進行處理,不僅節(jié)約了后期維護成本,而且還有助于提高項目管理水平。
開放性是開源軟件的一個主要特點,正因為如此,致使源數(shù)據(jù)的管理和控制難度較大,從而降低了管理效果。數(shù)據(jù)挖掘技術(shù)在此項工作中的應(yīng)用主要以分布式數(shù)據(jù)挖掘系統(tǒng)為主,通過對大規(guī)模系統(tǒng)和多個開源軟件的挖掘,并對系統(tǒng)開發(fā)人員和使用人員進行跟蹤管理,在提高開源軟件使用率的同時,為開源軟件質(zhì)量提供保障。
在軟件工程中,軟件程序開發(fā)占據(jù)著重要地位,直接決定了軟件的性能和開發(fā)效率。近年來,為了切實提高軟件開發(fā)速度,采用的技術(shù)主要以克隆代碼技術(shù)為主,數(shù)據(jù)挖掘技術(shù)在軟件程度開發(fā)中的應(yīng)用主要就是對該技術(shù)進行檢測,檢測方法主要以度量比對法、文本比對法和標識符比對法為主。此外,數(shù)據(jù)挖掘技術(shù)還可以在軟件程序開發(fā)過程中用于挖掘數(shù)據(jù)庫的有用代碼。具體方法包括對輸入輸出關(guān)系記錄進行檢索、利用關(guān)鍵詞進行索引、根據(jù)代碼源和語義的相似性進行檢索、利用構(gòu)建交互關(guān)系圖進行索引以及采用形式化描述方法進行數(shù)據(jù)挖等。其原理與百度、谷歌等搜索引擎的功能原理類似。
在軟件工程項目開發(fā)過程中,程序設(shè)計不可避免地會出現(xiàn)一些漏洞,或因編程人員的操作失誤,使軟件功能受到影響。為了保證軟件能夠快速恢復(fù)應(yīng)用,技術(shù)人員就需要對軟件故障問題進行快速定位和檢測,并根據(jù)實際情況盡快對程序代碼加以優(yōu)化和完善,確保各項功能的正常發(fā)揮。采用數(shù)據(jù)挖掘技術(shù)進行故障檢測主要是通過對信息進行跟蹤檢測,或采用逆向建模方法,及時發(fā)現(xiàn)軟件故障問題,提高程序的可維護性。
數(shù)據(jù)挖掘技術(shù)在軟件故障檢測中的應(yīng)用主要包括兩種方式,一是基于規(guī)則的挖掘方式,二是基于自動化的挖掘方式?;谝?guī)則的挖掘方式是根據(jù)程序行為總結(jié)運行規(guī)則,并采用時態(tài)邏輯進行表達?;谧詣踊耐诰蚍绞骄唧w是指基于自動機抽象表示的API 規(guī)則挖掘方法。兩種方法都能夠有效發(fā)現(xiàn)軟件故障問題。傳統(tǒng)的軟件故障監(jiān)測主要采用程序切片定位技術(shù),不僅過程較為復(fù)雜、定位準確性低且耗時較長。采用數(shù)據(jù)挖掘技術(shù)代替?zhèn)鹘y(tǒng)軟件故障監(jiān)測方法,可以有效提高故障檢測效率,同時對故障點進行精確定位,為軟件檢測和調(diào)試提供方便。
綜上所述,將數(shù)據(jù)挖掘技術(shù)應(yīng)用到軟件工程行業(yè)中,不僅可以有效解決軟件開發(fā)和設(shè)計過程中出現(xiàn)的各類問題,提高軟件開發(fā)效率和質(zhì)量,而且還可以大幅度降低開發(fā)成本,為企業(yè)發(fā)展創(chuàng)造更高的經(jīng)濟效益和社會效益。因此,在未來的時間里,企業(yè)應(yīng)提高對數(shù)據(jù)挖掘技術(shù)的重視度,并將其有效滲透到軟件開發(fā)和設(shè)計中,以此來更好的促進行業(yè)的長足發(fā)展。