Abstract

With the use of increasingly complex software, software bugs are inevitable. Software developers rely on bug reports to identify and fix these issues. In this process, developers inspect suspected buggy source code files, relying heavily on a bug report. This process is often time-consuming and increases the cost of software maintenance. To resolve this problem, we propose a novel bug localization method using topic-based similar commit information. First, the method determines similar topics for a given bug report. Then, it extracts similar bug reports and similar commit information for these topics. To extract similar bug reports on a topic, a similarity measure is calculated for a given bug report. In the process, for a given bug report and source code, features shared by similar source codes are classified and extracted; combining these features improves the method’s performance. The extracted features are presented to the convolutional neural network’s long short-term memory algorithm for model training. Finally, when a bug report is submitted to the model, a suspected buggy source code file is detected and recommended. To evaluate the performance of our method, a baseline performance comparison was conducted using code from open-source projects. Our method exhibits good performance.

Highlights

  • With increasing software complexity, software bugs have become inevitable

  • We investigated which features of our similar bug report affect bug localization

  • We proposed a bug localization technique using topic-based similar commit information for a given bug report

Read more

Summary

Introduction

To address such bugs, developers rely on bug reports to find buggy code files. Bug reports and source code feature extraction methods have been used to detect appropriate buggy code files. Deep learning algorithms for detection of suspected buggy code files have been proposed. Pradel et al [2] proposed the neural trace-line model This model consists of a line level and a trace level which identify buggy code files using a recurrent neural network (RNN). Bug reports and source code information are used for bug localization. An Eclipse bug report (#413685) is shown in Figure 1 [19].

Methods
Results
Discussion
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call