Font Size: a A A

Research On Method Level Software Bug Localization Based On Information Retrieval

Posted on:2020-03-08Degree:MasterType:Thesis
Country:ChinaCandidate:Z Q LiFull Text:PDF
GTID:2428330602461628Subject:Management Science and Engineering
Abstract/Summary:PDF Full Text Request
Software quality management is an important research content in the field of information systems.When there is a problem with the quality of the software,it will have a serious impact.Due to the knowledge-intensive and labor-intensive nature of software production,this will inevitably lead to software bugs.When a software bug report is assigned to a developer for bug resolution,the developer needs to locate the bug in a source code file and make code changes correspondingly to resolve the software bug.In fact,most of time of the developer is spent on bug location in the whole process of bug resolution.In this paper,two method-level software bug localization approaches based on information retrieval are proposed to improve the efficiency of software repair personnel,which are called MethodLocator and FineLocator.In MethodLocator,firstly,it takes the vector representation of the bug report and the source code method body using the word vector(Word2Vec)and TF-IDF.Secondly,MethodLocator augments method body of each method based on similarities among all method bodies in the source code files.Thirdly,MethodLocator locates methods for change to resolve the bug based on similarities between the bug report and the augmented methods.Experimental results on four open source software projects as ArgoUML,Ant,Maven,and Kylin demonstrate that MethodLocator is better than state-of-the-art techniques in method level bug location.In FineLocator,firstly,the bug reports and the methods of source code are represented by numeric vectors using word embedding(word2vec)and the TF-IDF method.Secondly,we propose three query expansion scores as semantic similarity score,temporal proximity score and call dependency score to address the representation sparseness problem caused by the short lengths of methods in the source code.Then,the representation of a method with short length is augmented by elements of its neighboring methods with query expansion.Thirdly,when a new bug report is incoming,FineLocator will retrieve the methods in source code by similarity ranking on the bug report and the augmented methods for bug localization.We collect bug repositories of ArgoUML,Maven,Kylin,Ant and AspectJ projects to investigate the performance of the proposed FineLocator approach.Experimental results demonstrate that the proposed FineLocator approach can effectively locate software bugs.The management implications of this paper is that information retrieval methods can help software quality management and help software maintenance personnel to locate bugs with the goal of reducing software maintenance costs,and improving software development quality.It provides an effective means for software project managers to use information retrieval methods to improve software quality.
Keywords/Search Tags:bug report, bug localization, method level, word vector representation, query expansion
PDF Full Text Request
Related items