Title :
An automatic framework for extracting and classifying near-miss clone genealogies
Author :
Saha, Ripon K. ; Roy, Chanchal K. ; Schneider, Kevin A.
Author_Institution :
Dept. of Comput. Sci., Univ. of Saskatchewan, Saskatoon, SK, Canada
Abstract :
Extracting code clone genealogies across multiple versions of a program and classifying them according to their change patterns underlies the study of code clone evolution. While there are a few studies in the area, the approaches do not handle near-miss clones well and the associated tools are often computationally expensive. To address these limitations, we present a framework for automatically extracting both exact and near-miss clone genealogies across multiple versions of a program and for identifying their change patterns using a few key similarity factors. We have developed a prototype clone genealogy extractor, applied it to three open source projects including the Linux Kernel, and evaluated its accuracy in terms of precision and recall. Our experience shows that the prototype is scalable, adaptable to different clone detection tools, and can automatically identify evolution patterns of both exact and near-miss clones by constructing their genealogies.
Keywords :
Linux; operating system kernels; pattern classification; program diagnostics; software maintenance; source coding; Linux kernel; automatic framework; clone detection tools; code clone evolution; key similarity factors; near-miss clone genealogies classification; near-miss clone genealogies extraction; open source projects; software engineering research community; Accuracy; Cloning; Complexity theory; History; Measurement; Prototypes; Software systems; clone evolution; clone genealogy extractor; mapping;
Conference_Titel :
Software Maintenance (ICSM), 2011 27th IEEE International Conference on
Conference_Location :
Williamsburg, VI
Print_ISBN :
978-1-4577-0663-9
Electronic_ISBN :
1063-6773
DOI :
10.1109/ICSM.2011.6080796