-
题名基于决策树推荐克隆重构的方法
被引量:3
- 1
-
-
作者
折蓉蓉
张丽萍
侯敏
闫盛
-
机构
内蒙古师范大学计算机与信息工程学院
-
出处
《计算机应用》
CSCD
北大核心
2018年第7期2037-2043,2069,共8页
-
基金
国家自然科学基金资助项目(61462071)
内蒙古自然科学基金资助项目(2016MS0612)~~
-
文摘
针对克隆代码的大量使用会导致长期软件维护问题甚至引入错误,提出了一种基于决策树的分类器来推荐克隆进行重构。首先,使用Ni Cad进行克隆检测;其次,收集了与克隆关系、克隆代码段和克隆上下文都相关的特征;然后,利用决策树分类器训练;最后,利用K折交叉评估分类结果。在5款开源软件中对近600多个克隆实例进行实验,实验结果表明所提方法为每个目标系统推荐克隆重构实例时达到80%的精度。
-
关键词
克隆代码
克隆重构
克隆检测
决策树
特征选择
-
Keywords
code clone clone
refactoring clone detection decision tree feature
selection
-
分类号
TP311.5
[自动化与计算机技术—计算机软件与理论]
-
-
题名基于软件演化历史识别并推荐重构克隆的方法
被引量:1
- 2
-
-
作者
折蓉蓉
张丽萍
-
机构
内蒙古师范大学计算机与信息工程学院
-
出处
《计算机科学》
CSCD
北大核心
2019年第8期224-232,共9页
-
基金
国家自然科学基金资助项目(61462071)
内蒙古自然科学基金资助项目(2018MS06009)
+1 种基金
内蒙古教育厅资助项目(NJZY17049)
内蒙古师范大学科研基金项目(2016ZRYB003)资助
-
文摘
现有克隆代码重构研究局限于单一版本的静态分析,忽略了克隆代码的演化过程,这导致在克隆代码重构决策方面缺乏有效的方法。因此文中首先从克隆检测、克隆映射、克隆家系以及软件维护日志管理系统中提取与克隆代码密切相关的演化历史信息;其次识别出需要重构的克隆代码,同时识别出跟踪的克隆代码,然后提取与重构相关的静态特征和演化特征,并构建特征样本数据库;最后对比多种机器学习的方法对,选出效果最佳的分类器推荐重构克隆。在7款软件近170个版本上进行的实验表明,推荐重构克隆代码的准确度达到90%以上,这为软件开发和维护人员提供了更加准确、合理的代码重构建议。
-
关键词
克隆代码
克隆重构
克隆跟踪
克隆家系
特征提取
-
Keywords
Code clone
Clone refactoring
Clone tracking
Clone family
Feature extraction
-
分类号
TP311.5
[自动化与计算机技术—计算机软件与理论]
-
-
题名克隆代码技术研究综述
被引量:13
- 3
-
-
作者
史庆庆
孟繁军
张丽萍
刘东升
-
机构
内蒙古师范大学计算机与信息工程学院
-
出处
《计算机应用研究》
CSCD
北大核心
2013年第6期1617-1623,共7页
-
基金
内蒙古自然科学基金资助项目(2011MS0906)
-
文摘
软件系统中克隆代码的检测与管理是软件工程中的基本问题之一,在软件的质量、维护、架构、进化、专利和剽窃等众多领域有着广泛的应用需求。综述了克隆检测的过程、技术及其优缺点、克隆进化方向上的相关研究,以及克隆管理的一些技术,并特别介绍了克隆重构技术。最后概括了该领域所取得的研究成果,并讨论了目前克隆代码研究中所遇到的挑战性问题。
-
关键词
克隆代码
克隆检测
克隆进化
克隆管理
克隆重构
-
Keywords
code clone
clone detection
clone evolution
clone management
clone refactor
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名克隆代码自动重构的抽象语法树及静态分析
- 4
-
-
作者
侯雅梅
-
机构
西安卫星测控中心
-
出处
《数字技术与应用》
2016年第2期186-186,189,共2页
-
文摘
随着特定领域软件开发的不断发展,越来越多的领域需在重构基础上建立软件产品线。此时,如何对多个应用产品的相似代码单元实施重构操作,从而获得可复用性核心资产成为重点研究的内容。文中基于克隆代码侦测中出现的代码片断问题,提出在抽象语法树和静态分析基础上实现代码自动重构的方法,这种方法根据控制流程和基本语句块层次上的差异性展开分析,通过代码可变点提取完成克隆代码合并操作,从而有效辅助开发者实现克隆代码自动重构。
-
关键词
克隆代码自动重构
抽象语法树
静态分析
-
分类号
TP311.52
[自动化与计算机技术—计算机软件与理论]
-