Evaluating the Performance of Clone Detection Tools in Detecting Cloned Co-change Candidates

01/20/2022
by   Md Nadim, et al.
0

Co-change candidates are the group of code fragments that require a change if any of these fragments experience a modification in a commit operation during software evolution. The cloned co-change candidates are a subset of the co-change candidates, and the members in this subset are clones of one another. The cloned co-change candidates are usually created by reusing existing code fragments in a software system. Detecting cloned co-change candidates is essential for clone-tracking, and studies have shown that we can use clone detection tools to find cloned co-change candidates. However, although several studies evaluate clone detection tools for their accuracy in detecting cloned fragments, we found no study that evaluates clone detection tools for detecting cloned co-change candidates. In this study, we explore the dimension of code clone research for detecting cloned co-change candidates. We compare the performance of 12 different configurations of nine promising clone detection tools in identifying cloned co-change candidates from eight open-source C and Java-based subject systems of various sizes and application domains. A ranked list and analysis of the results provides valuable insights and guidelines into selecting and configuring a clone detection tool for identifying co-change candidates and leads to a new dimension of code clone research into change impact analysis.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/03/2021

Towards Informative Tagging of Code Fragments to Support the Investigation of Code Clones

Investigating the code fragments of code clones detected by code clone d...
research
01/18/2018

Challenges of the Dynamic Detection of Functionally Similar Code Fragments

Classic clone detection approaches are hardly capable of finding redunda...
research
04/24/2022

Impact of Change Granularity in Refactoring Detection

Detecting refactorings in commit history is essential to improve the com...
research
03/20/2015

Block-Wise MAP Inference for Determinantal Point Processes with Application to Change-Point Detection

Existing MAP inference algorithms for determinantal point processes (DPP...
research
08/25/2021

Recommending Extract Method Refactoring Based on Confidence of Predicted Method Name

Refactoring is an important activity that is frequently performed in sof...
research
11/26/2020

On the diversity and frequency of code related to mathematical formulas in real-world Java projects

In this paper, the term formula code refers to fragments of source code ...
research
02/12/2020

Multi-Objective Optimization for Token-Based Clone Detection

Clone detection plays an important role in software engineering. Finding...

Please sign up or login with your details

Forgot password? Click here to reset