Research >> Managing Duplication in Source Code

Copy-and-Paste is a common practice of reusing code when developing software. This ad hoc form of code reuse may introduce multiple identical code blocks, called code clones, which make future modifications to a software system difficult. For instance, a developer fixing a bug in a section of code may be unaware of the existence of other cloned blocks in the system with a similar defect. The goal of this project was to investigate techniques, and to propose new tools that would assist developers become aware of code clones when modifying the source code of a system. We received an ACM SIGSOFT Distinguished Paper Award for the contributions of this project. Our contributions are summarized in the papers below.

Papers.

Ekwa Duala-Ekoko and Martin P. Robillard. Clone Region Descriptors: Representing and Tracking Duplication in Source Code. ACM Transactions on Software Engineering and Methodology (TOSEM), 20(1):31 pages, June 2010.

Ekwa Duala-Ekoko and Martin P. Robillard. CloneTracker: Tool support for Code Clone Management. In Proceedings of the 30th ACM/IEEE International Conference on Software Engineering (ICSE), pages 843-846, May 2008, Formal Research Demonstration.

Ekwa Duala-Ekoko and Martin P. Robillard. Tracking Code Clones in Evolving Software. In Proceedings of the 29th ACM/IEEE International Conference on Software Engineering (ICSE), pages 158-167, May 2007. [ACM SIGSOFT Distinguished Paper Award]