• DocumentCode
    3128566
  • Title

    Incremental Clone Detection

  • Author

    Gode, Nils ; Koschke, Rainer

  • Author_Institution
    Univ. of Bremen, Bremen
  • fYear
    2009
  • fDate
    24-27 March 2009
  • Firstpage
    219
  • Lastpage
    228
  • Abstract
    Finding, understanding and managing software clones -- passages of duplicated source code - is of large interest in research and practice. There is an abundance of techniques to detect clones. However, all these techniques are limited to a single revision of a program. When the code changes, the analysis must be run again from scratch even though only small parts may have changed. In this paper, we present an incremental clone detection algorithm, which detects clones based on the results of the previous revision´s analysis. Moreover, it creates a mapping between clones of one revision to the next, supplying information about the addition and deletion of clones. Our empirical results demonstrate that the incremental technique requires considerably less time than a non-incremental approach if the changes do not exceed a certain fraction of the source code. An incremental analysis is useful for on-the-fly detection and evolutionary clone analysis. On-the-fly detection may be integrated in an IDE and allows to re-run clone detection immediately when a programmer saves his changes or even while he/she is typing. In evolutionary clone analysis, many revisions of a system need to be analyzed in order to understand how clones evolve.
  • Keywords
    program diagnostics; software maintenance; software management; IDE; duplicated source code; evolutionary clone analysis; incremental analysis; incremental clone detection algorithm; managing software clones; on-the-fly detection; program analysis; Algorithm design and analysis; Cloning; Conference management; Detection algorithms; Detectors; Information analysis; Programming profession; Software maintenance; Tree data structures; Tree graphs;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance and Reengineering, 2009. CSMR '09. 13th European Conference on
  • Conference_Location
    Kaiserslautern
  • ISSN
    1534-5351
  • Print_ISBN
    978-0-7695-3589-0
  • Type

    conf

  • DOI
    10.1109/CSMR.2009.20
  • Filename
    4812755