Font Size: a A A

Research On Key Issues Of Software Bug Report Management

Posted on:2019-01-01Degree:DoctorType:Dissertation
Country:ChinaCandidate:W YuFull Text:PDF
GTID:1368330566487049Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
It is inevitable for software bugs during software development and maintenance.Finding and fixing the software bugs in time can effectively improve the quality of software and decrease the cost of software development and maintenance.Software organizations usually emply the bug tracking systems to manage the bugs.The software bugs are stored in the bug tracking systems in the form of bug reports.Bug reports provide the detailed information about software bugs.In this way,the developers can conduct the bug location and bug fixing based on this kind of information,so as to improve the software quality.During the software development process,a great number of bug reports are submitted and stored in the bug tracking system.Project managers need to mange the bug reports,so as to fix the software bugs as early as possible and improve the efficiency of software development.During the management process,there are three issues needed to be solved.The first is how to automatically identify the duplicate bug reports,so as to reduce the extra workload caused by the duplicate reports.The second is how to quickly decide the priority of the bug reports,in order to allocate the developer resources reasonably.The third is that how to accurately conduct the bug triage,so as to decrease the fixing duration of bug report and improve the efficiency of bug fixing.The work focuses on the above three questions,and the main contribution of this work is as follows.(1)To identify the duplicate bug reports effectively,the duplicate reports identification is proposed which is based on the word embedding model and convolutional neural network model.The word embedding model can address the match gap of word in the duplicate bug reports,while the convolutional neural network model can address the match gap of sentence in the duplicate bug reports.The experimental results show that our approach can effectively identify the duplicate bug report.Furthermore,the word embedding model and convolutional neural network model can improve the performance of duplicate bug report identification.(2)To quickly decide the priority of the bug reports,the bug report priority prediction approach is proposed which is based on active learning and semi-supervised learning method.This approach extracts multi-dimension features from the bug report and employs the active learning and semi-supervised learning algorithms,which is two well-known machine learning algorithms.It can effectively address the bug report priority prediction problem when facing with the missing of training data.The experimental results demonstrate the effectiveness of this approach.(3)To accurately conduct the bug triage,the bug triage approach is proposed based on the developer's capacity and activeness.We first adopt three heuristic experiments to analyze the effect of developer's capacity,developer's time activeness and space activeness in the bug fixing.Then we propose the fuzzy set model based on developer's capacity,the buffer pool model based on developer's activeness,as well as the hybrid recommendation algorithm based on developer's capacity and developer's activeness.The experimental results show that this approach can recommend developes for a new bug report with high recommendation accuracy and low processing time.(4)To achieve a better developer-bug matching,the developer allocation optimation approach is proposed based on the developer-bug matching degree and completion time.We use the similarity between developer's capacity and the type of bug reports,as well as the priority of bug report to model the developer-bug matching degree.We use the latest time of all bug reports among all developers to measure the completion time.We model the problem as the multi-objective optimization problem,and experimentally compare the performance of greedy algorithm,the genetic algorithm,and depth-first search algorithm.
Keywords/Search Tags:Bug report management, Duplicate bug report, Bug report priority, Bug triage, Empirical software engineering
PDF Full Text Request
Related items