Sciweavers

OOPSLA
2010
Springer

Scalable and systematic detection of buggy inconsistencies in source code

13 years 3 months ago
Scalable and systematic detection of buggy inconsistencies in source code
Software developers often duplicate source code to replicate functionality. This practice can hinder the maintenance of a software project: bugs may arise when two identical code segments are edited inconsistently. This paper presents DejaVu, a highly scalable system for detecting these general syntactic inconsistency bugs. DejaVu operates in two phases. Given a target code base, a parallel inconsistent clone analysis first enumerates all groups of source code fragments that are similar but not identical. Next, an extensible buggy change analysis framework refines these results, separating each group of inconsistent fragments into a fine-grained set of inconsistent changes and classifying each as benign or buggy. On a 75+ million line pre-production commercial code base, DejaVu executed in under five hours and produced a report of over 8,000 potential bugs. Our analysis of a sizable random sample suggests with high likelihood that at this report contains at least 2,000 true bugs a...
Mark Gabel, Junfeng Yang, Yuan Yu, Moisés G
Added 29 Jan 2011
Updated 29 Jan 2011
Type Journal
Year 2010
Where OOPSLA
Authors Mark Gabel, Junfeng Yang, Yuan Yu, Moisés Goldszmidt, Zhendong Su
Comments (0)