Title :
An Empirical Study of Function Clones in Open Source Software
Author :
Roy, Chanchal K. ; Cordy, James R.
Author_Institution :
Chanchal K. Roy & James R. Cordy Sch. of Comput., Queen´´s Univ. Kingston, Kingston, ON
Abstract :
The new hybrid clone detection tool NICAD combines the strengths and overcomes the limitations of both text-based and AST-based clone detection techniques to yield highly accurate identification of cloned code in software systems. In this paper, we present a first empirical study of function clones in open source software using NICAD. We examine more than 15 open source C and Java systems, including the entire Linux Kernel and Apache httpd, and analyze their use of cloned code in several different dimensions, including language, clone size, clone location and clone density by proportion of cloned functions. We manually verify all detected clones and provide a complete catalogue of different clones in an online repository in a variety of formats. These validated results can be used as a cloning reference for these systems and as a benchmark for evaluating other clone detection tools.
Keywords :
Linux; parallel programming; public domain software; Apache httpd; Linux Kernel; NICAD; cloned code; function clones; hybrid clone detection tool; open source C systems; open source Java systems; open source software; Cloning; Filtering; Java; Kernel; Linux; Open source software; Programming profession; Reverse engineering; Software maintenance; Software systems; Benchmark; Empirical Study; Function Clones; Open Source Software;
Conference_Titel :
Reverse Engineering, 2008. WCRE '08. 15th Working Conference on
Conference_Location :
Antwerp
Print_ISBN :
978-0-7695-3429-9
DOI :
10.1109/WCRE.2008.54