DocumentCode
2332955
Title
Late propagation in software clones
Author
Barbour, Liliane ; Khomh, Foutse ; Zou, Ying
Author_Institution
Dept. of Electr. & Comput. Eng., Queen´´s Univ., Kingston, ON, Canada
fYear
2011
fDate
25-30 Sept. 2011
Firstpage
273
Lastpage
282
Abstract
Two similar code segments, or clones, form a clone pair within a software system. The changes to the clones over time create a clone evolution history. In this work we study late propagation, a specific pattern of clone evolution. In late propagation, one clone in the clone pair is modified, causing the clone pair to become inconsistent. The code segments are then re-synchronized in a later revision. Existing work has established late propagation as a clone evolution pattern, and suggested that the pattern is related to a high number of faults. In this study we examine the characteristics of late propagation in two long-lived software systems using the Simian and CCFinder clone detection tools. We define 8 types of late propagation and compare them to other forms of clone evolution. Our results not only verify that late propagation is more harmful to software systems, but also establish that some specific cases of late propagations are more harmful than others. Specifically, two cases are most risky: (1) when a clone experiences inconsistent changes and then a re-synchronizing change without any modification to the other clone in a clone pair; and (2) when two clones undergo an inconsistent modification followed by a re-synchronizing change that modifies both the clones in a clone pair.
Keywords
software engineering; CCFinder clone detection tools; Simian clone detection tools; clone evolution history; code segments; late propagation; software clones; software system; Cloning; clone genealogies; fault-proneness; late propagation;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Maintenance (ICSM), 2011 27th IEEE International Conference on
Conference_Location
Williamsburg, VI
ISSN
1063-6773
Print_ISBN
978-1-4577-0663-9
Electronic_ISBN
1063-6773
Type
conf
DOI
10.1109/ICSM.2011.6080794
Filename
6080794
Link To Document