天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

當前位置:主頁 > 科技論文 > 搜索引擎論文 >

復雜軟件系統(tǒng)的重構技術:現(xiàn)狀、問題與展望

發(fā)布時間:2021-10-27 07:19
  軟件重構是改善軟件質量的一種重要手段,它在不改變軟件外部行為特性的情況下,通過調整軟件內部結構來提高軟件的可理解性、可維護性和可擴展性。然而,隨著開源軟件的迅猛發(fā)展,軟件的規(guī)模和復雜程度日益增加,現(xiàn)有的重構技術在應對規(guī)模龐大且復雜的軟件系統(tǒng)時,重構效果并不如意。因此,提高重構技術的可擴展性一直是軟件工程領域研究的熱點。從技術負債角度出發(fā),探究重構時機,思考重構技術對軟件質量的深入影響,明確重構技術旨在尋找重構代碼的自動化方法,從而降低維護成本,提高代碼質量。文中對工程實例進行分析并對文獻進行梳理,調研了自2010年至今國內外96篇相關領域的文獻,嘗試以復雜系統(tǒng)的視角對這些研究工作進行歸納、比較,提煉總結軟件重構領域的研究方向與技術方法,探討重構技術研究中的特點與難點,思考重構技術研究中存在的問題及未來的研究方向,對軟件重構技術的研究趨勢進行了展望。 

【文章來源】:計算機科學. 2020,47(12)北大核心CSCD

【文章頁數(shù)】:10 頁

【部分圖文】:

復雜軟件系統(tǒng)的重構技術:現(xiàn)狀、問題與展望


軟件重構過程

重構方法


重構序列的組合所形成的解空間十分龐大,因此從龐大的解空間中尋求一個最優(yōu)的重構序列是十分困難的,而這正是搜索算法的優(yōu)勢所在。如圖2所示,首先,針對需要被改進的軟件系統(tǒng),將此類系統(tǒng)轉換成軟件組件(類或方法)的集合或者抽象表示為圖形的形式并作為算法的輸入;然后,使用重構建議、軟件質量度量指標和其他信息作為算法的指導過程,并且將所有的重構操作映射為向量作為解決方案的表現(xiàn)形式;最后,利用適應度函數(shù)(Fitness Function)動態(tài)評估解的優(yōu)劣,在搜索收斂至最優(yōu)或局部最優(yōu)時,即可得到一組最優(yōu)的重構序列。在這方面的工作中,Amal等提出了一種基于神經網絡的適應度函數(shù),通過遺傳算法手動評估重構的解決方案以進行少量迭代,然后利用人工神經網絡進行訓練以評估剩余迭代的重構解決方案[40]。在某些重構問題中,任何兩個或多個目標之間可能存在冗余。Dea等提出了一種新的軟件重構方法,即PCA-NSGA-II多目標重構方法。該方法是在PCA-NSGA-II演化多目標算法的基礎上改進而來的,通過去除冗余來保留沖突目標,從而避免維數(shù)災難[41]。為了解決相互沖突的優(yōu)化目標,Mkaouer等提出了一種新的重構問題表示方法,即將每個需要改進的質量屬性視為一個獨立的優(yōu)化目標,利用NSGA-III算法,使用8個不同的目標來評估重構解決方案[42]。

【參考文獻】:
期刊論文
[1]一種基于深度學習的上帝類檢測方法[J]. 卜依凡,劉輝,李光杰.  軟件學報. 2019(05)
[2]基于量子搜索的軟件工程[J]. 吳楠,宋方敏,LI XiangDong.  中國科學:信息科學. 2015(05)



本文編號:3461130

資料下載
論文發(fā)表

本文鏈接:http://sikaile.net/kejilunwen/sousuoyinqinglunwen/3461130.html


Copyright(c)文論論文網All Rights Reserved | 網站地圖 |

版權申明:資料由用戶fd0a7***提供,本站僅收錄摘要或目錄,作者需要刪除請E-mail郵箱bigeng88@qq.com