Software evolution: the software maintenance challenge
Software evolution: the software maintenance challenge
Parameterized Duplication in Strings: Algorithms and an Application to Software Maintenance
SIAM Journal on Computing
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
CCFinder: a multilinguistic token-based code clone detection system for large scale source code
IEEE Transactions on Software Engineering
Experiment on the Automatic Detection of Function Clones in a Software System Using Metrics
ICSM '96 Proceedings of the 1996 International Conference on Software Maintenance
Measuring Clone Based Reengineering Opportunities
METRICS '99 Proceedings of the 6th International Symposium on Software Metrics
Advanced Clone-Analysis to Support Object-Oriented System Refactoring
WCRE '00 Proceedings of the Seventh Working Conference on Reverse Engineering (WCRE'00)
Clone Detection Using Abstract Syntax Trees
ICSM '98 Proceedings of the International Conference on Software Maintenance
Eliminating redundancies with a "composition with adaptation" meta-programming technique
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
A Survey of Software Refactoring
IEEE Transactions on Software Engineering
An Ethnographic Study of Copy and Paste Programming Practices in OOPL
ISESE '04 Proceedings of the 2004 International Symposium on Empirical Software Engineering
Evaluating Clone Detection Techniques from a Refactoring Perspective
Proceedings of the 19th IEEE international conference on Automated software engineering
Managing Duplicated Code with Linked Editing
VLHCC '04 Proceedings of the 2004 IEEE Symposium on Visual Languages - Human Centric Computing
Effective Software Maintenance
Effective Software Maintenance
An empirical study of code clone genealogies
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
CP-Miner: Finding Copy-Paste and Related Bugs in Large-Scale Software Code
IEEE Transactions on Software Engineering
ICPC '06 Proceedings of the 14th IEEE International Conference on Program Comprehension
Unifying clones with a generative programming technique: a case study: Practice Articles
Journal of Software Maintenance and Evolution: Research and Practice
"Cloning Considered Harmful" Considered Harmful
WCRE '06 Proceedings of the 13th Working Conference on Reverse Engineering
Tracking Code Clones in Evolving Software
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Method and implementation for investigating code clones in a software system
Information and Software Technology
Simultaneous Modification Support based on Code Clone Analysis
APSEC '07 Proceedings of the 14th Asia-Pacific Software Engineering Conference
A desiderata for refactoring-based software modularity improvement
Proceedings of the 3rd India software engineering conference
Code clones in feature-oriented software product lines
GPCE '10 Proceedings of the ninth international conference on Generative programming and component engineering
Extracting code clones for refactoring using combinations of clone metrics
Proceedings of the 5th International Workshop on Software Clones
What kind of and how clones are refactored?: a case study of three OSS projects
Proceedings of the Fifth Workshop on Refactoring Tools
Active refinement of clone anomaly reports
Proceedings of the 34th International Conference on Software Engineering
Increasing clone maintenance support by unifying clone detection and refactoring activities
Information and Software Technology
Dynamic profiling-based approach to identifying cost-effective refactorings
Information and Software Technology
Identifying clone removal opportunities based on co-evolution analysis
Proceedings of the 2013 International Workshop on Principles of Software Evolution
To what extent can maintenance problems be predicted by code smell detection? - An empirical study
Information and Software Technology
Active support for clone refactoring: a perspective
Proceedings of the 2013 ACM workshop on Workshop on refactoring tools
Hi-index | 0.01 |
A code clone is a code fragment that has other code fragments identical or similar to it in the source code. The presence of code clones is generally regarded as one factor that makes software maintenance more difficult. For example, if a code fragment with code clones is modified, it is necessary to consider whether each of the other code clones has to be modified as well. Removing code clones is one way of avoiding problems that arise due to the presence of code clones. This makes the source code more maintainable and more comprehensible. This paper proposes a set of metrics that suggest how code clones can be refactored. As well, the tool Aries, which automatically computes these metrics, is presented. The tool gives metrics that are indicators for certain refactoring methods rather than suggesting the refactoring methods themselves. The tool performs only lightweight source code analysis; hence, it can be applied to a large number of code lines. This paper also describes a case study that illustrates how this tool can be used. Based on the results of this case study, it can be concluded that this method can efficiently merge code clones. Copyright © 2008 John Wiley & Sons, Ltd.