首页> 外文期刊>Software Engineering, IEEE Transactions on >A Data Mining Approach for Detecting Higher-Level Clones in Software
【24h】

A Data Mining Approach for Detecting Higher-Level Clones in Software

机译:一种检测软件中高级克隆的数据挖掘方法

获取原文
获取原文并翻译 | 示例
获取外文期刊封面目录资料

摘要

Code clones are similar program structures recurring in variant forms in software system(s). Several techniques have been proposed to detect similar code fragments in software, so-called simple clones. Identification and subsequent unification of simple clones is beneficial in software maintenance. Even further gains can be obtained by elevating the level of code clone analysis. We observed that recurring patterns of simple clones often indicate the presence of interesting higher-level similarities that we call structural clones. Structural clones show a bigger picture of similarity situation than simple clones alone. Being logical groups of simple clones, structural clones alleviate the problem of huge number of clones typically reported by simple clone detection tools, a problem that is often dealt with postdetection visualization techniques. Detection of structural clones can help in understanding the design of the system for better maintenance and in reengineering for reuse, among other uses. In this paper, we propose a technique to detect some useful types of structural clones. The novelty of our approach includes the formulation of the structural clone concept and the application of data mining techniques to detect these higher-level similarities. We describe a tool called clone miner that implements our proposed technique. We assess the usefulness and scalability of the proposed techniques via several case studies. We discuss various usage scenarios to demonstrate in what ways the knowledge of structural clones adds value to the analysis based on simple clones alone.
机译:代码克隆是在软件系统中以变体形式重复出现的类似程序结构。已经提出了几种技术来检测软件中的相似代码片段,即所谓的简单克隆。简单克隆的识别和随后的统一对软件维护很有帮助。通过提高代码克隆分析的水平,甚至可以获得更多收益。我们观察到简单克隆的重复模式通常表明存在有趣的高级相似性,我们称之为结构克隆。与单独的简单克隆相比,结构克隆显示出更大的相似性情况。作为简单克隆的逻辑组,结构性克隆缓解了通常由简单克隆检测工具报告的大量克隆的问题,该问题通常用检测后可视化技术解决。检测结构克隆可以帮助理解系统的设计,以便进行更好的维护,并可以进行工程改造以重用,以及其他用途。在本文中,我们提出了一种检测某些有用类型的结构克隆的技术。我们方法的新颖性包括结构克隆概念的表述以及数据挖掘技术在检测这些更高级别相似性​​方面的应用。我们描述了一种称为克隆矿机的工具,该工具可实现我们提出的技术。我们通过几个案例研究来评估所提出技术的有用性和可扩展性。我们讨论了各种使用场景,以说明结构克隆知识以何种方式为仅基于简单克隆的分析增加价值。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号