Mining Fix Patterns for FindBugs Violations
Kui Liu, Dongsun Kim, Tegawend\'e F. Bissyand\'e, Shin Yoo, Yves Le, Traon

TL;DR
This paper analyzes and leverages fix patterns for FindBugs violations using neural networks and clustering, demonstrating their effectiveness in suggesting fixes that developers accept and apply, and applying these patterns to real bugs.
Contribution
It introduces a neural network-based approach to automatically identify and evaluate fix patterns for violations, aiding automated repair efforts.
Findings
Majority of generated fixes accepted by developers
Patterns applicable to real bugs in Defects4J benchmark
Discrepancies in violation distributions reveal prioritization insights
Abstract
In this paper, we first collect and track a large number of fixed and unfixed violations across revisions of software. The empirical analyses reveal that there are discrepancies in the distributions of violations that are detected and those that are fixed, in terms of occurrences, spread and categories, which can provide insights into prioritizing violations. To automatically identify patterns in violations and their fixes, we propose an approach that utilizes convolutional neural networks to learn features and clustering to regroup similar instances. We then evaluate the usefulness of the identified fix patterns by applying them to unfixed violations. The results show that developers will accept and merge a majority (69/116) of fixes generated from the inferred fix patterns. It is also noteworthy that the yielded patterns are applicable to four real bugs in the Defects4J major…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software Testing and Debugging Techniques · Software Reliability and Analysis Research
