度量驅(qū)動的設(shè)計模式挖掘及基于模板的定制化重構(gòu)
【圖文】:
可以為挖掘出的設(shè)計模式實例的重構(gòu)提供解決方案,從而更好地在開發(fā)中利用設(shè)計模式。圖1.1 描述了本文方法的大致框架,其主要研究內(nèi)容如下:(1)通過分析和研究 GoF 定義的 23 種設(shè)計模式及衍生的設(shè)計模式變體類圖,提出了一種用于形式化定義設(shè)計模式的特征模型。其包含 4 種類之間的結(jié)構(gòu)特征和 7 種類方法間的行為特征。利用 11 種特征模型可以直接定義相應(yīng)的設(shè)計模式和常見變體。(2)利用 EA 工具對軟件源碼進(jìn)行逆向工程解析,并將軟件源碼和設(shè)計模式轉(zhuǎn)化為相應(yīng)的類結(jié)構(gòu)行為關(guān)系圖,即數(shù)據(jù)圖。數(shù)據(jù)圖中的頂點表示軟件源碼中的類或設(shè)計模式的角色,邊表示軟件源碼中類和類之間和類中方法之間的關(guān)系。針對轉(zhuǎn)換的數(shù)據(jù)圖,根據(jù)特定算法獲取中心頂點和半徑獲得相關(guān)區(qū)域。在相關(guān)區(qū)域中,根據(jù)數(shù)據(jù)圖頂點的出入度以及邊的權(quán)值將結(jié)構(gòu)行為特征相結(jié)合,以確定設(shè)計模式搜索順序。根據(jù)搜索順序可以直接靶向設(shè)計模式實例。此方法可以大大減少挖掘過程的搜索空間,提高方法執(zhí)行的效率。(3)在不改變設(shè)計意圖的情況下對挖掘出的設(shè)計模式進(jìn)行重構(gòu)。本文根據(jù)設(shè)計模式的結(jié)構(gòu)行為特征結(jié)合對類、屬性和方法的添加或刪除操作,定義了 13種基本重構(gòu)操作并通過復(fù)合形成 10 種組合型重構(gòu)操作。在此基礎(chǔ)上,為每一種設(shè)計模式制定了詳細(xì)的重構(gòu)模板,并提出了基于重構(gòu)模板的設(shè)計模式重構(gòu)框架和重構(gòu)流程。(4)為了驗證本文提出的挖掘方法的有效性,我們將此方法應(yīng)用于 8 個開源軟件系統(tǒng)的源碼中?
圖 5.4 設(shè)計模式實例重構(gòu)用戶填寫界面1)首先,用戶選擇 Adapter 模式實例中需要重構(gòu)的實例,了解到 Adapter模式的重構(gòu)類型為關(guān)聯(lián)型;然后選擇關(guān)聯(lián)類操作會出現(xiàn)重構(gòu)方式:添加 Adapter或刪除 Adapter,此時選擇添加 Adapter;隨后用戶填寫類名為 HelloWorld,并選擇繼承的父類 TestCase 和關(guān)聯(lián)的類 TestResult。此時,,點擊確認(rèn)提交,可以獲得重構(gòu)后的 XML 文件。圖 5.5、圖 5.6 和圖 5.7 是獲得重構(gòu)后的 XML 文件,我們可以看到 XML 文件中添加了 HelloWorld 類、testresult 屬性、HelloWorld 類和TestCase 之間的繼承關(guān)系以及 HelloWorld 類和 TestResult 之間的關(guān)聯(lián)關(guān)系。2)其次,用戶根據(jù)重構(gòu)選項選擇生成相應(yīng)的設(shè)計模式代碼時,點擊生成Javacode 按鈕即可得到與 XML 相對應(yīng)的類的相關(guān)代碼,如圖 5.8 所示。3)最后,用戶可以針對其他需要重構(gòu)的設(shè)計模式實例返回主頁進(jìn)行對應(yīng)的修改,從而達(dá)到改變的目的。
【學(xué)位授予單位】:杭州電子科技大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2018
【分類號】:TP311.5
【相似文獻(xiàn)】
相關(guān)期刊論文 前10條
1 李安亞;王少妮;;對比模式挖掘研究進(jìn)展[J];科研信息化技術(shù)與應(yīng)用;2017年05期
2 魏芹雙;;對比模式挖掘研究進(jìn)展[J];網(wǎng)絡(luò)安全技術(shù)與應(yīng)用;2017年01期
3 李中元;邊馥苓;;空間同位模式挖掘研究進(jìn)展[J];地理空間信息;2013年06期
4 王琳;羅可;;基于頻繁項集的條件模式挖掘[J];計算機(jī)工程與設(shè)計;2009年16期
5 張雪;陳未如;;面向生物信息的結(jié)構(gòu)關(guān)系模式挖掘約束條件分析[J];科技咨詢導(dǎo)報;2007年05期
6 周歡;王海濤;鐘之陽;劉方鑫;;時空軌跡數(shù)據(jù)智能處理與模式挖掘技術(shù)研究[J];電信快報;2018年07期
7 史殿習(xí);李寒;楊若松;莫曉峗;魏菁;;用戶日常頻繁行為模式挖掘[J];國防科技大學(xué)學(xué)報;2017年01期
8 鄒蕾;;時間序列周期模式挖掘算法分析[J];中國管理信息化;2016年03期
9 陸瑤;;基于頻繁特征模式挖掘的期貨市場單邊運行深度的預(yù)測[J];中國管理信息化;2015年17期
10 陸億紅;王子仁;黃燕;;適合稀少空間特征的同位模式挖掘算法[J];浙江工業(yè)大學(xué)學(xué)報;2007年04期
相關(guān)會議論文 前10條
1 繆裕青;尹東;;分布式存儲結(jié)構(gòu)的頻繁閉合模式挖掘并行算法[A];2007年全國開放式分布與并行計算機(jī)學(xué)術(shù)會議論文集(下冊)[C];2007年
2 王淼;尚學(xué)群;謝華博;李戰(zhàn)懷;;行常量差異共表達(dá)基因模式挖掘算法研究[A];第29屆中國數(shù)據(jù)庫學(xué)術(shù)會議論文集(B輯)(NDBC2012)[C];2012年
3 陸葉;王麗珍;陳紅梅;趙麗紅;;基于可能世界的不確定空間co-location模式挖掘研究[A];NDBC2010第27屆中國數(shù)據(jù)庫學(xué)術(shù)會議論文集(B輯)[C];2010年
4 呂靜;陳未如;劉俊;Osei Adjei;;并發(fā)分支模式挖掘[A];第二十一屆中國數(shù)據(jù)庫學(xué)術(shù)會議論文集(技術(shù)報告篇)[C];2004年
5 劉玉葆;蔡嘉榮;印鑒;黃志蘭;;基于最大訪問模式挖掘的數(shù)據(jù)庫異常行為檢測[A];第二十三屆中國數(shù)據(jù)庫學(xué)術(shù)會議論文集(研究報告篇)[C];2006年
6 胡偉成;曹三省;李丹;;一種基于QPop增量時域分割升維的媒體內(nèi)容應(yīng)用模式挖掘改進(jìn)算法[A];第二十二屆中國數(shù)據(jù)庫學(xué)術(shù)會議論文集(技術(shù)報告篇)[C];2005年
7 薛丹;李德敏;裴仁林;;移動計算中基于PrefixSpan算法的用戶移動模式挖掘[A];第二十一屆中國數(shù)據(jù)庫學(xué)術(shù)會議論文集(技術(shù)報告篇)[C];2004年
8 王麗珍;陸葉;陳紅梅;肖清;;基于前綴樹結(jié)構(gòu)的空間co-location模式挖掘算法研究[A];NDBC2010第27屆中國數(shù)據(jù)庫學(xué)術(shù)會議論文集(B輯)[C];2010年
9 宋國杰;馬帥;唐世渭;楊冬青;;基于模式挖掘的交通預(yù)測模型[A];第十九屆全國數(shù)據(jù)庫學(xué)術(shù)會議論文集(技術(shù)報告篇)[C];2002年
10 夏慶;馬元元;孫志揮;;路徑遍歷模式挖掘方法的改進(jìn)[A];第十六屆全國數(shù)據(jù)庫學(xué)術(shù)會議論文集[C];1999年
相關(guān)重要報紙文章 前6條
1 東方通CEO 沈惠中;以PPP模式挖掘產(chǎn)業(yè)大數(shù)據(jù)金礦[N];中國電子報;2015年
2 記者 溫婷 編輯 全澤源;上海文交所總裁張?zhí)欤河脛?chuàng)新模式挖掘“文化的北大荒”[N];上海證券報;2010年
3 本報記者 姜旭 實習(xí)記者 侯偉;“互聯(lián)網(wǎng)+音樂”:創(chuàng)新模式挖掘商機(jī)[N];中國知識產(chǎn)權(quán)報;2015年
4 冉鳳林 本報記者 曾小清;線上線下融合 O2O模式挖掘消費潛力[N];四川日報;2015年
5 本報記者 于萍;園林上市公司試水PPP模式挖掘千億級市場[N];中國證券報;2015年
6 ;成功模式挖掘資源潛在價值[N];人民郵電;2006年
相關(guān)博士學(xué)位論文 前10條
1 楊曉飛;基于表觀遺傳數(shù)據(jù)的功能模式挖掘與分析[D];西安電子科技大學(xué);2016年
2 錢烽;同位模式挖掘研究[D];浙江大學(xué);2012年
3 Shafqat Ali Shad;移動用戶軌跡與行為模式挖掘方法研究[D];中國科學(xué)技術(shù)大學(xué);2013年
4 覃桂敏;復(fù)雜網(wǎng)絡(luò)模式挖掘算法研究[D];西安電子科技大學(xué);2012年
5 劉勇;圖模式挖掘技術(shù)的研究[D];哈爾濱工業(yè)大學(xué);2010年
6 朱麗達(dá);基因調(diào)控網(wǎng)絡(luò)的模式挖掘及其在藥物篩選中的應(yīng)用[D];武漢大學(xué);2014年
7 張峻銘;基于軌跡數(shù)據(jù)的移動對象聚集模式挖掘方法研究[D];北京郵電大學(xué);2016年
8 董曉莉;時間序列數(shù)據(jù)挖掘相似性度量和周期模式挖掘研究[D];天津大學(xué);2007年
9 王樂;數(shù)據(jù)流模式挖掘算法及應(yīng)用研究[D];大連理工大學(xué);2013年
10 沙朝鋒;基于信息論的數(shù)據(jù)挖掘算法[D];復(fù)旦大學(xué);2008年
相關(guān)碩士學(xué)位論文 前10條
1 孫鴻艷;云環(huán)境下時空軌跡漸變移動簇模式挖掘算法研究[D];南京師范大學(xué);2018年
2 呂夢瑤;基于知識圖譜的需求模式挖掘方法的研究[D];哈爾濱工業(yè)大學(xué);2018年
3 魯潤澤;基于子圖同構(gòu)和機(jī)器學(xué)習(xí)的設(shè)計模式挖掘方法研究[D];杭州電子科技大學(xué);2018年
4 張萍;度量驅(qū)動的設(shè)計模式挖掘及基于模板的定制化重構(gòu)[D];杭州電子科技大學(xué);2018年
5 馬佳麗;基于時空數(shù)據(jù)的頻繁軌跡挖掘算法研究[D];西北大學(xué);2018年
6 劉暢;城市交通中聚集模式的挖掘方法研究[D];西南交通大學(xué);2018年
7 于重生;基于時空規(guī)律的位置預(yù)測方法研究[D];山東大學(xué);2018年
8 歐陽雙;基于高效用模式挖掘的微博文本突發(fā)話題檢測方法研究[D];武漢大學(xué);2018年
9 陳京;移動云服務(wù)環(huán)境下的用戶異常行為檢測[D];河南科技大學(xué);2017年
10 席元鴻;時間序列部分周期模式挖掘研究[D];西北師范大學(xué);2011年
本文編號:2612868
本文鏈接:http://www.sikaile.net/kejilunwen/ruanjiangongchenglunwen/2612868.html