基于堆叠泛化的设计模式检测方法
作者机构:吉林大学计算机科学与技术学院吉林长春130012 吉林大学软件学院吉林长春130012 符号计算与知识工程教育部重点实验室(吉林大学)吉林长春130012
基 金:国家自然科学基金(61471181) 赛尔网络下一代互联网技术创新项目(NGII20180701)
出 版 物:《软件学报》 (Journal of Software)
年 卷 期:2020年第31卷第6期
页 码:1703-1722页
摘 要:设计模式检测是理解和维护软件系统的一项重要工作.以高效识别设计模式变体和提高设计模式识别准确率为目的,将面向对象度量与模式微结构相结合,提出一种基于堆叠泛化的设计模式检测方法.该方法应用典型的机器学习算法,分别训练度量分类器和微结构分类器,并基于两者的预测值和相关对象模型特征进一步训练,从而形成堆叠分类器.为了评估该方法,基于该方法开发了一个原型工具OOSdpd.该工具从Java字节码级别的系统实现中抽取设计模式实例,并在JUnit等几个经典的开源项目上进行实验.通过与现有的两种工具进行对比分析,实验验证了该方法在提高设计模式识别准确率及召回率方面的有效性.
主 题 词:设计模式检测 面向对象软件度量 模式微结构 堆叠泛化 机器学习
学科分类:08[工学] 0835[0835] 081202[081202] 0812[工学-测绘类]
核心收录:
D O I:10.13328/j.cnki.jos.005847
馆 藏 号:203933462...