Dissection of a Bug Dataset: Anatomy of ...
Document type :
Communication dans un congrès avec actes
Title :
Dissection of a Bug Dataset: Anatomy of 395 Patches from Defects4J
Author(s) :
Sobreira, Victor [Auteur]
Federal University of Uberlândia [Uberlândia] [UFU]
Durieux, Thomas [Auteur]
Self-adaptation for distributed services and large software systems [SPIRALS]
Madeiral, Fernanda [Auteur]
Federal University of Uberlândia [Uberlândia] [UFU]
Monperrus, Martin [Auteur]
Université de Technologie de Compiègne [UTC]
KTH Royal Institute of Technology [Stockholm] [KTH]
Maia, Marcelo [Auteur]
Federal University of Uberlândia [Uberlândia] [UFU]
Federal University of Uberlândia [Uberlândia] [UFU]
Durieux, Thomas [Auteur]
Self-adaptation for distributed services and large software systems [SPIRALS]
Madeiral, Fernanda [Auteur]
Federal University of Uberlândia [Uberlândia] [UFU]
Monperrus, Martin [Auteur]
Université de Technologie de Compiègne [UTC]
KTH Royal Institute of Technology [Stockholm] [KTH]
Maia, Marcelo [Auteur]
Federal University of Uberlândia [Uberlândia] [UFU]
Conference title :
SANER 2018 - 25th edition of the IEEE International Conference on Software Analysis, Evolution and Reengineering
City :
Campobasso
Country :
Italie
Start date of the conference :
2018-03-20
Publication date :
2018-01-15
HAL domain(s) :
Informatique [cs]/Génie logiciel [cs.SE]
English abstract : [en]
Well-designed and publicly available datasets of bugs are an invaluable asset to advance research fields such as fault localization and program repair. They allow directly and fairly comparison between competing techniques ...
Show more >Well-designed and publicly available datasets of bugs are an invaluable asset to advance research fields such as fault localization and program repair. They allow directly and fairly comparison between competing techniques and also the replication of experiments. These datasets need to be deeply understood by researchers: the answer for questions like "which bugs can my technique handle?" and "for which bugs is my technique effective?" depends on the comprehension of properties related to bugs and their patches. However, such properties are usually not included in the datasets, and there is still no widely adopted methodology for characterizing bugs and patches. In this work, we deeply study 395 patches of the Defects4J dataset. Quantitative properties (patch size and spreading) were automatically extracted, whereas qualitative ones (repair actions and patterns) were manually extracted using a thematic analysis-based approach. We found that 1) the median size of Defects4J patches is four lines, and almost 30% of the patches contain only addition of lines; 2) 92% of the patches change only one file, and 38% has no spreading at all; 3) the top-3 most applied repair actions are addition of method calls, conditionals, and assignments, occurring in 77% of the patches; and 4) nine repair patterns were found for 95% of the patches, where the most prevalent, appearing in 43% of the patches, is on conditional blocks. These results are useful for researchers to perform advanced analysis on their techniques' results based on Defects4J. Moreover, our set of properties can be used to characterize and compare different bug datasets.Show less >
Show more >Well-designed and publicly available datasets of bugs are an invaluable asset to advance research fields such as fault localization and program repair. They allow directly and fairly comparison between competing techniques and also the replication of experiments. These datasets need to be deeply understood by researchers: the answer for questions like "which bugs can my technique handle?" and "for which bugs is my technique effective?" depends on the comprehension of properties related to bugs and their patches. However, such properties are usually not included in the datasets, and there is still no widely adopted methodology for characterizing bugs and patches. In this work, we deeply study 395 patches of the Defects4J dataset. Quantitative properties (patch size and spreading) were automatically extracted, whereas qualitative ones (repair actions and patterns) were manually extracted using a thematic analysis-based approach. We found that 1) the median size of Defects4J patches is four lines, and almost 30% of the patches contain only addition of lines; 2) 92% of the patches change only one file, and 38% has no spreading at all; 3) the top-3 most applied repair actions are addition of method calls, conditionals, and assignments, occurring in 77% of the patches; and 4) nine repair patterns were found for 95% of the patches, where the most prevalent, appearing in 43% of the patches, is on conditional blocks. These results are useful for researchers to perform advanced analysis on their techniques' results based on Defects4J. Moreover, our set of properties can be used to characterize and compare different bug datasets.Show less >
Language :
Anglais
Peer reviewed article :
Oui
Audience :
Internationale
Popular science :
Non
Collections :
Source :
Files
- http://arxiv.org/pdf/1801.06393
- Open access
- Access the document
- 1801.06393
- Open access
- Access the document