山东大学学报 (工学版) ›› 2020, Vol. 50 ›› Issue (6): 48-58.doi: 10.6040/j.issn.1672-3961.0.2020.229
Zhuoyu XIAO1(
),Pei HE2,Guo CHEN1,Yunbiao XU1,Jie GUO1
摘要:
为解决设计模式挖掘正确率较低的问题, 提出一种带特征指标约束描述的设计模式分类挖掘方法。归纳了47种特征指标, 给出了设计模式约束定义, 对设计模式特征进行了描述, 以Adapter模式、Command模式、Factory Method模式为例, 分结构型、行为型与创建型3类挖掘设计模式, 设计了3个基准系统与4个经典系统的设计模式挖掘试验。试验结果表明, 本研究方法对基准系统的Adapter模式、Command模式、Factory Method模式挖掘正确率为96.13%、91.67%、72.23%, 对经典系统挖掘正确率分别为84.3%、81.26%、73.17%, 与传统方法比较, 本研究方法取得了较好的效果。
中图分类号:
| 1 | LUCIA A D , DEUFEMIA V , GRAVINO C , et al. Detecting the behavior of design patterns through model checking and dynamic analysis[J]. ACM Transactions on Software Engineering and Methodology, 2018, 26 (4): 1- 41. |
| 2 | 肖卓宇, 何锫. 多阶段可松弛的设计模式变体检测方法[J]. 华中科技大学学报(自然科学版), 2018, 46 (1): 26- 31. |
| XIAO Zhuoyu , HE Pei . Multi-stage relaxed detection method for variants of design pattern[J]. Journal of Hua zhong University of science and Technology (Natural Science), 2018, 46 (1): 26- 31. | |
| 3 | MAYVAN B B , RASOOLZADEGAN A , EBRAHIMI A M . A new benchmark for evaluating pattern mining methods based on the automatic generation of testbeds[J]. Information and Software Technology, 2019, 59 (1): 60- 79. |
| 4 |
肖卓宇, 何锫, 陈俊旭, 等. 设计模式变体检测研究[J]. 小型微型计算机系统, 2017, 38 (8): 1751- 1756.
doi: 10.3969/j.issn.1000-1220.2017.08.018 |
|
XIAO Zhuoyu , HE Pei , CHEN Junxu , et al. Research on variants of the design pattern detection[J]. Journal of Chinese Computer Systems, 2017, 38 (8): 1751- 1756.
doi: 10.3969/j.issn.1000-1220.2017.08.018 |
|
| 5 | 肖卓宇, 何锫, 余波, 等. 一种形式化文法关系驱动的设计模式检测方法[J]. 工程科学学报, 2016, 38 (10): 1499- 1508. |
| XIAO Zhuoyu , HE Pei , YU Bo , et al. An approach for design pattern detection based on the formal context-free grammar relation driver[J]. Chinese Journal of Engineering, 2016, 38 (10): 1499- 1508. | |
| 6 |
DWIVEDI A K , TIRKEY A , RATH S K . Applying learning-based methods for recognizing design patterns[J]. Innovations in Systems and Software Engineering, 2019, 15 (2): 87- 100.
doi: 10.1007/s11334-019-00329-3 |
| 7 | MAYVAN B B , RASOOLZADEGAN A , YAZDI Z G . The state of the art on design patterns: a systematic mapping of the literature[J]. Journal of Systems and Software, 2017, 125 (3): 93- 118. |
| 8 | 肖卓宇, 何锫, 余波. 一种多阶段交互式线索驱动的设计模式识别方法[J]. 北京航空航天大学学报, 2017, 43 (9): 1746- 1756. |
| XIAO Zhuoyu , HE Pei , YU Bo . A multi-stage approach based on interactive clues driven for design pattern identification[J]. Journal of Beijing University of Aeronautics and Astronautics, 2017, 43 (9): 1746- 1756. | |
| 9 | 肖卓宇, 黄海, 何锫, 等. 设计模式检测工具有效性评估策略[J]. 计算机科学与探索, 2018, 12 (3): 380- 392. |
| XIAO Zhuoyu , HUANG Hai , HE Pei , et al. Evaluation strategy of efficiency in design pattern detection tools[J]. Journal of Frontiers of Computer Science and Technology, 2018, 12 (3): 380- 392. | |
| 10 | ZHU H , BAYLEY I . An algebra of design patterns[J]. ACM Transactions on Software Engineering and Methodology, 2013, 22 (3): 23- 61. |
| 11 | ZANONI M , FONTANA F A , STELLA F . On applying machine learning techniques for design pattern detection[J]. Journal of Systems and Software, 2015, 88 (5): 102- 117. |
| 12 | CHIHADA A , JALILI S , HASHEMINEJAD S M H , et al. Source code and design conformance, design pattern detection from source code by classification approach[J]. Applied Soft Computing, 2015, 26 (1): 357- 367. |
| 13 | FONTANA F A , MAGGIONI S , RAIBULET C . Design patterns: a survey on their micro-structures[J]. Journal of Software: Evolution and Process, 2013, 25 (1): 27- 52. |
| 14 |
FONTANA F A , MAGGIONI S , RAIBULET C . Understanding the relevance of micro-structures for design patterns detection[J]. Journal of Systems and Software, 2011, 84 (12): 2334- 2347.
doi: 10.1016/j.jss.2011.07.006 |
| 15 |
肖卓宇, 何锫, 李港, 等. 注入间接线索的设计模式变体分类检测[J]. 小型微型计算机系统, 2018, 39 (6): 1335- 1341.
doi: 10.3969/j.issn.1000-1220.2018.06.039 |
|
XIAO Zhuoyu , HE Pei , LI Gang , et al. Injected Indirect clues for variants of design pattern detection[J]. Journal of Chinese Computer Systems, 2018, 39 (6): 1335- 1341.
doi: 10.3969/j.issn.1000-1220.2018.06.039 |
|
| 16 | YU D , ZHANG P , YANG J , et al. Efficiently detecting structural design pattern instances based on ordered sequences[J]. Journal of Systems and Software, 2018, 91 (5): 35- 56. |
| 17 | DWIVEDI A K , TIRKEY A , RATH S K . Software design pattern mining using classification-based techniques[J]. Frontiers of Computer Science, 2018, 12 (5): 908- 922. |
| 18 | PETTERSON N , L WE W , NIVRE J . Evaluation of accuracy in design pattern occurrence detection[J]. IEEE Transactions on Software Engineering, 2010, 36 (4): 575- 590. |
| 19 | 肖卓宇, 黎妍, 何锫, 等. 基于矩阵积分评估的设计模式检测研究[J]. 小型微型计算机系统, 2016, 37 (7): 1428- 1433. |
| XIAO Zhuoyu , LI Yan , HE Pei , et al. Research on matrix grade evaluation based on design pattern detection[J]. Journal of Chinese Computer Systems, 2016, 37 (7): 1428- 1433. | |
| 20 | MAYVAN B B , RASOOLZADEGAN A . Design pattern detection based on the graph theory[J]. Knowledge-Based Systems, 2017, 120 (1): 211- 225. |
| 21 | 肖卓宇, 何锫, 杨鑫维, 等. 基于文法产生式优化的设计模式识别方法[J]. 电子科技大学学报, 2017, 46 (3): 569- 576. |
| XIAO Zhuoyu , HE Pei , YANG Xinwei , et al. An optimization method for design pattern identification based on the grammar production[J]. Journal of University of Electronic Science and Technology of China, 2017, 46 (3): 569- 576. | |
| 22 | GUÉHÉNEUC Y G. P-mart: pattern-like micro architecture repository[C]//Proceedings of the 1st EuroPLoP Focus Group on pattern repositories. Ottawa, Canada: IEEE, 2007: 1-3. |
| 23 | ERICH GAMMA , RICHARD HELM , RALPH JOHNSON , et al. Design pattern: elements of reusable object-oriented software[M]. Bombay, India: Addison Wesley, 1995: 1- 22. |
| 24 | DE LUCIA A, DEUFEMIA V, GRAVINO C, et al. Impact of design pattern implementation variants on the retrieval effectiveness of a recovery tool: an exploratory Study[C]//2018 44th Euromicro Conference on Software Engineering and Advanced Applications. Seaa, Prague: IEEE, 2018: 159-166. |
| 25 | 肖卓宇, 何锫, 余波, 等. 基于FCA与CBR的设计模式检测[J]. 山东大学学报(工学版), 2016, 46 (2): 22- 28. |
| XIAO Zhuoyu , HE Pei , YU Bo , et al. Design patterns detection based on FCA and CBR[J]. Journal of Shandong University (Engineering Science), 2016, 46 (2): 22- 28. | |
| 26 | 肖卓宇, 何锫, 余波. 非标准设计模式的恢复[J]. 计算机工程与设计, 2019, 40 (1): 143- 148. |
| XIAO Zhuoyu , HE Pei , YU Bo . Recovery of non-standard design pattern[J]. Computer Engineering and Design, 2019, 40 (1): 143- 148. | |
| 27 | 肖卓宇, 何锫, 黎妍. 基于设计模式角色的附加关系检测研究[J]. 计算机应用研究, 2015, 32 (7): 2042- 2045. |
| XIAO Zhuoyu , HE Pei , LI Yan . Study on the additional relationships based on design pattern's roles[J]. Application Research of Computers, 2015, 32 (7): 2042- 2045. |
| [1] | 白琳,俱通,王浩,雷明珠,潘晓英. 面向不平衡数据的提升均衡集成学习算法[J]. 山东大学学报 (工学版), 2024, 54(4): 59-66. |
| [2] | 陈晓江,杨晓奇,陈广豪,刘伍颖. 混合BERT和宽度学习的低时间复杂度短文本分类[J]. 山东大学学报 (工学版), 2024, 54(4): 51-58. |
| [3] | 宋辉,张轶哲,张功萱,孟元. 基于类权重和最小化预测熵的测试时集成方法[J]. 山东大学学报 (工学版), 2024, 54(3): 36-43. |
| [4] | 聂秀山,巩蕊,董飞,郭杰,马玉玲. 短视频场景分类方法综述[J]. 山东大学学报 (工学版), 2024, 54(3): 1-11. |
| [5] | 徐金华,罗义凯,李昱燃,李岩. 基于时频分解与深度学习的轨道客流预测[J]. 山东大学学报 (工学版), 2024, 54(2): 60-68. |
| [6] | 马坤,刘筱云,李乐平,纪科,陈贞翔,杨波. 用于意图识别的自适应多标签信息学习模型[J]. 山东大学学报 (工学版), 2024, 54(1): 45-51. |
| [7] | 于泓,杜娟,魏琳,张利. 计及行为特征的市场化用户电量数据拟合方法[J]. 山东大学学报 (工学版), 2023, 53(4): 113-119. |
| [8] | 李颖,王建坤. 基于监督图正则化和信息融合的轻度认知障碍分类方法[J]. 山东大学学报 (工学版), 2023, 53(4): 65-73. |
| [9] | 张喜龙,韩萌,陈志强,武红鑫,李慕航. 动态集成选择的不平衡漂移数据流Boosting分类算法[J]. 山东大学学报 (工学版), 2023, 53(4): 83-92. |
| [10] | 刘财辉,周琪,叶晓文. 一种基于改进ReliefF算法的入侵检测模型[J]. 山东大学学报 (工学版), 2023, 53(2): 1-10. |
| [11] | 孟令灿,聂秀山,张雪. 基于遮挡目标去除的公交车拥挤度分类算法[J]. 山东大学学报 (工学版), 2022, 52(4): 83-88. |
| [12] | 孙志巍,宋明阳,潘泽华,景丽萍. 上下文感知的判别式主题模型[J]. 山东大学学报 (工学版), 2022, 52(4): 131-138. |
| [13] | 王丽,于明仟,刘文鹏,周瑜,郑蕊蕊,贺建军. 面向类不平衡数据的K近邻偏标记学习算法[J]. 山东大学学报 (工学版), 2022, 52(3): 18-24. |
| [14] | 龚楷伦,翟婷婷,唐鸿成. 一种面向多标签分类的在线主动学习算法[J]. 山东大学学报 (工学版), 2022, 52(2): 80-88. |
| [15] | 张沁洋,李旭,姚春龙,李长吾. 结合句法依存信息的方面级情感分类[J]. 山东大学学报 (工学版), 2021, 51(2): 83-89. |
|