Font Size: a A A

Research On Developer Recommendation Method For Automatic Bug Triage Of Open Source Software

Posted on:2018-03-23Degree:MasterType:Thesis
Country:ChinaCandidate:H Y LiuFull Text:PDF
GTID:2428330512483580Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
Lots of open source software(OSS)systems are critical components of the Internet,such as Sendmail,Apache,Linux,and MySQL.Moreover,OSS is also an important part of IT infrastructure that supports global e-commerce.Gartner said in a survey released in 2011 that more than half of the surveyed companies have adopted open source software as part of their IT strategy.Open source software is being more and more popular,of course,because of its open,flexible,low cost and many other advantages.However,it is undeniable that the high quality of open source software is indeed the cornerstone of its success.The bug management of open source software is an important means of software quality assurance.At present,large open source software projects usually use bug tracking systems(such as Bugzilla,GNATS,and JIRA.)to collect and manage bug information,and to help developers deal with these bugs.The shortcomings of open source software are presented to bug tracking systems by software developers,testers and ordinary users in the form of bug reports.With the continuous submission of bug reports,the number of bugs becomes very large,and the assignment of bugs by human has become a very time-consuming and error-prone process.Therefore,how to efficiently triage bugs is a challenging problem of bug management especially for large open source software projects.In order to improve the efficiency of bug triage,many automatic or semi-automatic bug triage methods have been proposed.Generally speaking,these methods are based on the use of information retrieval and machine learning to recommend developers to fix a reported bug report,combined with a variety of means,such as graph theory,topic model and scoring mechanism.In order to improve the recommendation accuracy,they often recommend multiple developers to solve one bug.First of all,this paper proposes an easy-to-use developer recommendation method for automatic bug triage.The core idea is to use the LDA topic model(portraying developer skills),developer collaboration network(characterization Developers'relationships),constructs(content + relationships)and mixed tossing strategies.Experiments on the 100,000-level bugs of Eclipse and Mozilla for large open source software show that the accuracy of the proposed method is 46.7%and 33.4%respectively when the appropriate parameters and triage strategies selected.The recommendation accuracy was increased by 209.3%and 131.9%in Eclipse and Mozilla,respectively,compared with the LDA + kNN method which verified its effectiveness.In addition,by analyzing bugs which were tossed too many times in the process of bug triage,combined with the open source software developer collaboration network,we summarize the 16 characteristics of the developers and identify nine features which has strong correlation with the length of tossing path by using statistical method,and then further reduced to four core features,so as to construct the characteristics of developer assignment based on machine learning method.When the problem of bug triage is considered as an instance of the classification problem,we construct the classifier of bug triage by using theses developer features constructed,and then the recommendation of developer for bug triage is made and the recommendation accuracy is high.
Keywords/Search Tags:Open Source software, bug triage, developer collaboration network, topic model, mixed strategy
PDF Full Text Request
Related items