/bulner

This project proposes an IR-based bug localization method, named BULNER, which stands for BUg Localization with word embeddings and Network Regularization.

Primary LanguageTSQLGNU Affero General Public License v3.0AGPL-3.0

BULNER; BUg Localization with word embeddings and NEtwork Regularization

Bug localization (BL) from the bug report is the strategic activity of the software maintaining process. Because BL is a costly and tedious activity, BL techniques information retrieval-based and machine learning-based could aid software engineers. We propose a method for BUg Localization with word embeddings and Network Regularization (BULNER). The preliminary results suggest that BULNER has better performance than two state-of-the-art methods.

@inproceedings{Barbosa2019,
  author = {Jacson Rodrigues Barbosa and Ricardo Marcondes Marcacini and Ricardo Britto and Frederico Soares and Solange Rezende and Auri M. R. Vincenzi and Márcio E. Delamaro},
  title = {BULNER: BUg Localization with word embeddings and NEtwork Regularization},
  booktitle = {Proceedings of the VII Workshop on Software Visualization, Evolution and Maintenance (VEM '19)},
  year = {2019},
  url = {https://doi.org/10.5753/vem.2019.7580}
}

Dataset

We obtained data (source code and code metrics) from three open source projects:

  1. AspectJ: https://github.com/eclipse/org.aspectj

  2. Birt: https://github.com/eclipse/birt

  3. Tomcat: https://github.com/apache/tomcat

Also, we used Understand tool to calculate different code metrics (object-oriented, volume and complexity metrics). The script to extract code metrics is available on the following repository: https://github.com/fr3d3rico/bug-metrics-research.

We extracted bug report data associated with each project from the Bugzilla repository provided by Ye et al. 2014.

BULNER source code

Bulner source code is available through Notebooks.

Acknowledgment

This study was financed in part by the Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - Brasil (CAPES) - Finance Code 001.