Journal of Software:2020.31(6):1703-1722

(吉林大学 计算机科学与技术学院, 吉林 长春 130012;符号计算与知识工程教育部重点实验室(吉林大学), 吉林 长春 130012;吉林大学 软件学院, 吉林 长春 130012)
Design Pattern Detection Approach Based on Stacked Generalization
FENG Tie,JIN Le,ZHANG Jia-Chen,WANG Hong-Yuan
(College of Computer Science and Technology, Jilin University, Changchun 130012, China;Key Laboratory of Symbolic Computation and Knowledge Engineering (Jilin University), Ministry of Education, Changchun 130012, China;College of Software, Jilin University, Changchun 130012, China)
Chart / table
Similar Articles
Article :Browse 130   Download 182
Received:April 27, 2018    Revised:December 06, 2018
> 中文摘要: 设计模式检测是理解和维护软件系统的一项重要工作.以高效识别设计模式变体和提高设计模式识别准确率为目的,将面向对象度量与模式微结构相结合,提出一种基于堆叠泛化的设计模式检测方法.该方法应用典型的机器学习算法,分别训练度量分类器和微结构分类器,并基于两者的预测值和相关对象模型特征进一步训练,从而形成堆叠分类器.为了评估该方法,基于该方法开发了一个原型工具OOSdpd.该工具从Java字节码级别的系统实现中抽取设计模式实例,并在JUnit等几个经典的开源项目上进行实验.通过与现有的两种工具进行对比分析,实验验证了该方法在提高设计模式识别准确率及召回率方面的有效性.
Abstract:Design pattern detection plays an important role in understanding and maintaining software system. With the purpose of identifying variants of design pattern efficiently and improving the accuracy of design pattern detection, an approach of design pattern detection based on stacked generalization in combination with object-oriented software metrics and pattern micro-structures is proposed in this study. Applying some typical machine learning algorithms, the approach trains a metric classifier and a micro-structure classifier for each design pattern, after which a stacked classifier is further trained and constructed on the predictive values of the two classifiers and some related object modeling features. To evaluate the proposed approach, a prototype tool, namely OOSdpd, is developed to detect design pattern instances from Java bytecode files of a system. The experiments on several classic open source projects are carried out, such as JUnit etc., and the proposed approach is compared with two existing tools. Experiments prove the effectiveness of the proposed approach in terms of improving the accuracy and recall rate of design pattern detection.
文章编号:     中图分类号:TP311    文献标志码:
基金项目:国家自然科学基金(61471181);赛尔网络下一代互联网技术创新项目(NGII20180701) 国家自然科学基金(61471181);赛尔网络下一代互联网技术创新项目(NGII20180701)
Foundation items:National Natural Science Foundation of China (61471181); CERNET Innovation Project (NGII20180701)
Reference text:


FENG Tie,JIN Le,ZHANG Jia-Chen,WANG Hong-Yuan.Design Pattern Detection Approach Based on Stacked Generalization.Journal of Software,2020,31(6):1703-1722