張萬舜
(山東英才學(xué)院 山東 濟(jì)南 250104)
通過分析軟件工程中的數(shù)據(jù)能夠看得出,按照一般性的理解能夠?qū)⑵浞殖蓛煞N類型,其一是結(jié)構(gòu)化的數(shù)據(jù)部分,指的是軟件的版本信息和軟件程序的缺陷報(bào)告等;其二是非結(jié)構(gòu)化數(shù)據(jù)部分,指的是軟件中的文檔數(shù)據(jù)、代碼數(shù)據(jù)等內(nèi)容。因?yàn)檐浖こ讨袛?shù)據(jù)分成了兩種類型,因此不同的數(shù)據(jù)類型需要使用不同的算法實(shí)現(xiàn)[1]。但是兩種數(shù)據(jù)類型之間還存在緊密的聯(lián)系,比如在結(jié)構(gòu)化數(shù)據(jù)種類中的缺陷報(bào)告數(shù)據(jù)中,報(bào)告中的缺陷代碼在數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)種類的同時(shí)還屬于非結(jié)構(gòu)化數(shù)據(jù)種類,因此這使得軟件工程數(shù)據(jù)管理的難度增加,造成了數(shù)據(jù)挖掘有效性降低。
軟件工程數(shù)據(jù)挖掘過程中需要保證軟件信息數(shù)據(jù)轉(zhuǎn)化完全,最終得到數(shù)據(jù)共享的目的。但是依據(jù)傳統(tǒng)的挖掘方法分析,這種方法不僅形式單一,同時(shí)還是得很多原軟件數(shù)據(jù)中的圖片等信息無法得到轉(zhuǎn)化,最終造成了數(shù)據(jù)失真的問題。但是軟件開發(fā)商需要較高的軟件數(shù)據(jù)信息,因此這種傳統(tǒng)的數(shù)據(jù)挖掘手段已經(jīng)不適合現(xiàn)代的軟件工程管理[2]。為了能夠使得軟件程序有效開發(fā),需要做好信息整合工作,以相適應(yīng)的案例完成數(shù)據(jù)挖掘工作,使得軟件的功能更實(shí)用,促進(jìn)數(shù)據(jù)挖掘的有效性。
數(shù)據(jù)挖掘工作受到了傳統(tǒng)工作方法的慣性影響嚴(yán)重,因此造成的結(jié)果就是軟件工程數(shù)據(jù)挖掘的有效性大打折扣。傳統(tǒng)的數(shù)據(jù)挖掘工作已經(jīng)使用了很長的時(shí)間,相對(duì)來說這種方法的實(shí)踐性更高,但是從軟件工程的數(shù)據(jù)管理角度出發(fā)就能夠看得出,要想做好數(shù)據(jù)挖掘工作首先應(yīng)當(dāng)保證工作人員具有全面的數(shù)據(jù)信息,因?yàn)檐浖袛?shù)據(jù)的復(fù)雜性較高,因此使得在實(shí)際的工作中無法使軟件程序中的數(shù)據(jù)有效表達(dá),最終造成了評(píng)價(jià)結(jié)果不統(tǒng)一,影響了評(píng)價(jià)結(jié)果的實(shí)際效果。因?yàn)檐浖こ痰臄?shù)據(jù)信息量大,數(shù)據(jù)結(jié)構(gòu)復(fù)雜,因此在進(jìn)行數(shù)據(jù)挖掘工作的時(shí)候應(yīng)當(dāng)結(jié)合軟件工程的實(shí)際分析,合理的分析軟件工程的數(shù)據(jù)代碼和注釋。
軟件開發(fā)過程中的數(shù)據(jù)代碼等處于展開狀態(tài),這一過程中的數(shù)據(jù)挖掘主要是針對(duì)程序編寫過程和程序成果進(jìn)行挖掘[3]。在編寫階段,數(shù)據(jù)挖掘工作應(yīng)當(dāng)首先分析程序結(jié)構(gòu)、程序功能等信息,然后在軟件系統(tǒng)數(shù)據(jù)代碼庫中選擇合理的模式,也就是說在這一階段的數(shù)據(jù)挖掘工作中應(yīng)當(dāng)尤其注重軟件的檢索功能作用,提高工作效率,降低手工檢索的工作量。在軟件系統(tǒng)的檢索欄中鍵入需要的關(guān)鍵字就能夠快速的查找需要的信息,實(shí)現(xiàn)數(shù)據(jù)挖掘的智能化管理,提升數(shù)據(jù)管理的有效性。最后應(yīng)當(dāng)注重靜態(tài)規(guī)則的作用,合理地分析軟件的調(diào)用關(guān)系、多重繼承關(guān)系等信息,通過遞歸測試的方法指導(dǎo)數(shù)據(jù)挖掘工作,提高工作的效率,使得工作者快速的掌握數(shù)據(jù)關(guān)聯(lián)信息,提高關(guān)聯(lián)信息的準(zhǔn)確性。除此之外,還應(yīng)當(dāng)注重動(dòng)態(tài)規(guī)則的作用[3]。通過動(dòng)態(tài)規(guī)則用于設(shè)定靜態(tài)代碼,使之能夠?qū)?yīng)到數(shù)據(jù)庫中,進(jìn)而使得缺陷代碼顯露出來,提高數(shù)據(jù)挖掘的有效性,降低工作的失誤率。針對(duì)軟件編程的結(jié)果階段中,應(yīng)當(dāng)提交修改的數(shù)據(jù)信息,使得缺陷代碼顯露出來,同時(shí)工作人員還應(yīng)當(dāng)充分分析需求者的要求,對(duì)缺陷代碼定位,通過軟件檢測工作完成多種缺陷檢測,并將檢測的過程和結(jié)果記錄下來,以方便處理軟件程序中的錯(cuò)誤。
隨著現(xiàn)代軟件工程技術(shù)的不斷發(fā)展,數(shù)據(jù)挖掘技術(shù)已經(jīng)跟不上軟件工程的更新速度,因此需要注重技術(shù)的創(chuàng)新?,F(xiàn)代數(shù)據(jù)挖掘過程中需要重視軟件檢索的作用,通過軟件檢索能夠降低工作量,提高數(shù)據(jù)挖掘工作的效率[4]。利用軟件的樹狀網(wǎng)絡(luò)結(jié)構(gòu)和軟件的靜態(tài)網(wǎng)絡(luò)規(guī)則能夠建設(shè)軟件鏈表結(jié)構(gòu),這也是保證數(shù)據(jù)挖掘工作的有效途徑。結(jié)合軟件結(jié)構(gòu)的網(wǎng)絡(luò)情況能夠使得技術(shù)得到創(chuàng)新,使得數(shù)據(jù)挖掘工作效率提升。為了提高數(shù)據(jù)挖掘工作的有效性,需要將數(shù)據(jù)進(jìn)行準(zhǔn)確的預(yù)測。在傳統(tǒng)軟件缺陷定位中,數(shù)據(jù)挖掘工作需要通過整合數(shù)據(jù)實(shí)現(xiàn),這使得缺陷表達(dá)受到了影響,因此在現(xiàn)代的軟件工程數(shù)據(jù)挖掘過程中應(yīng)當(dāng)注重運(yùn)用高性能的方法完成軟件中缺陷查找,及時(shí)尋找病毒的位置,提高病毒檢測的能力[5]。
通過我國目前的軟件工程管理情況分析,我國的數(shù)據(jù)挖掘工作還處于探索階段,未來還需要很長的一段路要走。國內(nèi)很多企業(yè)已經(jīng)建設(shè)了軟件工程數(shù)據(jù)體系,但是因?yàn)橐?guī)模小,技術(shù)落后,因此這種數(shù)據(jù)建設(shè)工作仍舊沒有達(dá)到商業(yè)化的水平。為了提高軟件工程數(shù)據(jù)的開發(fā)效率,我國應(yīng)當(dāng)創(chuàng)新數(shù)據(jù)挖掘的方法,提高數(shù)據(jù)挖掘的有效性,建設(shè)自動(dòng)化的數(shù)據(jù)庫工作體系。因此注重軟件開發(fā)過程和開發(fā)技術(shù)成為提高數(shù)據(jù)挖掘效果的有效手段。