SEPLNov 23, 2016

On the Relationship of Inconsistent Software Clones and Faults: An Empirical Study

arXiv:1611.08005v119 citations
Originality Synthesis-oriented
AI Analysis

This empirical study clarifies contradictory findings on code cloning and faults for software developers, though it is incremental as it focuses on a specific clone type.

The study investigated the relationship between inconsistent (type-3) code clones and faults in Java systems, finding that 17% of type-3 clones contain faults and that developers fixed half of these faults by modifying clones simultaneously.

Background: Code cloning - copying and reusing pieces of source code - is a common phenomenon in software development in practice. There have been several empirical studies on the effects of cloning, but there are contradictory results regarding the connection of cloning and faults. Objective: Our aim is to clarify the relationship between code clones and faults. In particular, we focus on inconsistent (or type-3) clones in this work. Method: We conducted a case study with TWT GmbH where we detected the code clones in three Java systems, set them into relation to information from issue tracking and version control and interviewed three key developers. Results: Of the type-3 clones, 17 % contain faults. Developers modified most of the type-3 clones simultaneously and thereby fixed half of the faults in type-3 clones consistently. Type-2 clones with faults all evolved to fixed type-3 clones. Clone length is only weakly correlated with faultiness. Conclusion: There are indications that the developers in two cases have been aware of clones. It might be a reason for the weak relationship between type-3 clones and faults. Hence, it seems important to keep developers aware of clones, potentially with new tool support. Future studies need to investigate if the rate of faults in type-3 clones justifies using them as cues in defect detection.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes