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
Link To Document