• 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