DocumentCode
2744990
Title
Tracking Code Clones in Evolving Software
Author
Duala-Ekoko, Ekwa ; Robillard, Martin P.
Author_Institution
Sch. of Comput. Sci., McGill Univ., Montreal, QC
fYear
2007
fDate
20-26 May 2007
Firstpage
158
Lastpage
167
Abstract
Code clones are generally considered harmful in software development, and the predominant approach is to try to eliminate them through refactoring. However, recent research has provided evidence that it may not always be practical, feasible, or cost-effective to eliminate certain clone groups. We propose a technique for tracking clones in evolving software. Our technique relies on the concept of abstract clone region descriptors (CRD), which describe clone regions within methods in a robust way that is independent from the exact text of the clone region or its location in a file. We present our definition of CRDs, and describe a complete clone tracking system capable of producing CRDs from the output of a clone detection tool, notify developers of modifications to clone regions, and support the simultaneous editing of clone regions. We report on two experiments and a case study conducted to assess the performance and usefulness of our approach.
Keywords
software maintenance; source coding; clone detection tool; clone region descriptor; code clone tracking; software development; Cloning; Computer languages; Computer science; Logic programming; Monitoring; Programming profession; Q factor; Robustness; Software systems; Writing;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2007. ICSE 2007. 29th International Conference on
Conference_Location
Minneapolis, MN
ISSN
0270-5257
Print_ISBN
0-7695-2828-7
Type
conf
DOI
10.1109/ICSE.2007.90
Filename
4222578
Link To Document