Evaluating Performance of Clone Detection Tools in Detecting Cloned Cochange Candidates

Md Nadim, Manishankar Mondal, Chanchal K. Roy

Code reuse by copying and pasting from one place to another place in a codebase is a very common scenario in software development which is also one of the most typical reasons for introducing code clones. There is a huge availability of tools to detect such cloned fragments and a lot of studies have already been done for efficient clone detection. There are also several studies for evaluating those tools considering their clone detection effectiveness. Unfortunately, we find no study which compares different clone detection tools in the perspective of detecting cloned co-change candidates during software evolution. Detecting cloned co-change candidates is essential for clone tracking. In this study, we wanted to explore this dimension of code clone research. We used six promising clone detection tools to identify cloned and non-cloned co-change candidates from six $C$ and Java-based subject systems and evaluated the performance of those clone detection tools in detecting the cloned co-change fragments. Our findings show that a good clone detector may not perform well in detecting cloned co-change candidates. The amount of unique lines covered by a clone detector and the number of detected clone fragments plays an important role in its performance. The findings of this study can enrich a new dimension of code clone research.
Md Nadim, Manishankar Mondal, and Chanchal K. Roy. 2020. Evaluating Performance of Clone Detection Tools in Detecting Cloned Cochange Candidates. 2020 IEEE 14th International Workshop on Software Clones (IWSC).
Copy Citation: