DocumentCode
1994654
Title
Do code clones matter?
Author
Juergens, Elmar ; Deissenboeck, Florian ; Hummel, Benjamin ; Wagner, Stefan
Author_Institution
Inst. fur Inf., Tech. Univ. Munchen, Munchen
fYear
2009
fDate
16-24 May 2009
Firstpage
485
Lastpage
495
Abstract
Code cloning is not only assumed to inflate maintenance costs but also considered defect-prone as inconsistent changes to code duplicates can lead to unexpected behavior. Consequently, the identification of duplicated code, clone detection, has been a very active area of research in recent years. Up to now, however, no substantial investigation of the consequences of code cloning on program correctness has been carried out. To remedy this shortcoming, this paper presents the results of a large-scale case study that was undertaken to find out if inconsistent changes to cloned code can indicate faults. For the analyzed commercial and open source systems we not only found that inconsistent changes to clones are very frequent but also identified a significant number of faults induced by such changes. The clone detection tool used in the case study implements a novel algorithm for the detection of inconsistent clones. It is available as open source to enable other researchers to use it as basis for further investigations.
Keywords
program compilers; program verification; public domain software; software fault tolerance; software maintenance; clone detection; code cloning; code duplication; commercial system; defect-prone; maintenance cost; open source system; program correctness; system faults; Cloning; Costs; Detection algorithms; Fault diagnosis; Java; Large-scale systems; Open source software; Software engineering; Software maintenance; Software quality;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on
Conference_Location
Vancouver, BC
ISSN
0270-5257
Print_ISBN
978-1-4244-3453-4
Type
conf
DOI
10.1109/ICSE.2009.5070547
Filename
5070547
Link To Document