返回
Clone Management for Evolving Software
DOI:10.1109/TSE.2011.90.png)
摘要
En 中文
Recent research results suggest a need for code clone management. In this paper, we introduce JSync, a novel clone management tool. JSync provides two main functions to support developers in being aware of the clone relation among code fragments as software systems evolve and in making consistent changes as they create or modify cloned code. JSync represents source code and clones as (sub) trees in Abstract Syntax Trees, measures code similarity based on structural characteristic vectors, and describes code changes as tree editing scripts. The key techniques of JSync include the algorithms to compute tree editing scripts, to detect and update code clones and their groups, to analyze the changes of cloned code to validate their consistency, and to recommend relevant clone synchronization and merging. Our empirical study on several real-world systems shows that JSync is efficient and accurate in clone detection and updating, and provides the correct detection of the defects resulting from inconsistent changes to clones and the correct recommendations for change propagation across cloned code.
Keyword:
Clone management
clone consistency analysis
clone synchronization
clone merging
AI总结
对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。
期刊
IF:
5.6
论文数:
2.9K
被引数:
1.2W
机构
引用论文
CP-Miner: Finding copy-paste and related bugs in large-scale software codeCp-miner: 在大规模软件代码中查找复制粘贴和相关错误
Synthesizing Data Using Variational Autoencoders for Handling Class Imbalanced Deep Learning使用变分自编码器合成数据以处理类不平衡深度学习

