liu.seSök publikationer i DiVA
Ändra sökning
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
Machine Learning-Based Bug Handling in Large-Scale Software Development
Linköpings universitet, Institutionen för datavetenskap. Linköpings universitet, Tekniska fakulteten. (PELAB)ORCID-id: 0000-0002-8989-0251
2018 (Engelska)Doktorsavhandling, sammanläggning (Övrigt vetenskapligt)
Abstract [en]

This thesis investigates the possibilities of automating parts of the bug handling process in large-scale software development organizations. The bug handling process is a large part of the mostly manual, and very costly, maintenance of software systems. Automating parts of this time consuming and very laborious process could save large amounts of time and effort wasted on dealing with bug reports. In this thesis we focus on two aspects of the bug handling process, bug assignment and fault localization. Bug assignment is the process of assigning a newly registered bug report to a design team or developer. Fault localization is the process of finding where in a software architecture the fault causing the bug report should be solved. The main reason these tasks are not automated is that they are considered hard to automate, requiring human expertise and creativity. This thesis examines the possi- bility of using machine learning techniques for automating at least parts of these processes. We call these automated techniques Automated Bug Assignment (ABA) and Automatic Fault Localization (AFL), respectively. We treat both of these problems as classification problems. In ABA, the classes are the design teams in the development organization. In AFL, the classes consist of the software components in the software architecture. We focus on a high level fault localization that it is suitable to integrate into the initial support flow of large software development organizations.

The thesis consists of six papers that investigate different aspects of the AFL and ABA problems. The first two papers are empirical and exploratory in nature, examining the ABA problem using existing machine learning techniques but introducing ensembles into the ABA context. In the first paper we show that, like in many other contexts, ensembles such as the stacked generalizer (or stacking) improves classification accuracy compared to individual classifiers when evaluated using cross fold validation. The second paper thor- oughly explore many aspects such as training set size, age of bug reports and different types of evaluation of the ABA problem in the context of stacking. The second paper also expands upon the first paper in that the number of industry bug reports, roughly 50,000, from two large-scale industry software development contexts. It is still as far as we are aware, the largest study on real industry data on this topic to this date. The third and sixth papers, are theoretical, improving inference in a now classic machine learning tech- nique for topic modeling called Latent Dirichlet Allocation (LDA). We show that, unlike the currently dominating approximate approaches, we can do parallel inference in the LDA model with a mathematically correct algorithm, without sacrificing efficiency or speed. The approaches are evaluated on standard research datasets, measuring various aspects such as sampling efficiency and execution time. Paper four, also theoretical, then builds upon the LDA model and introduces a novel supervised Bayesian classification model that we call DOLDA. The DOLDA model deals with both textual content and, structured numeric, and nominal inputs in the same model. The approach is evaluated on a new data set extracted from IMDb which have the structure of containing both nominal and textual data. The model is evaluated using two approaches. First, by accuracy, using cross fold validation. Second, by comparing the simplicity of the final model with that of other approaches. In paper five we empirically study the performance, in terms of prediction accuracy, of the DOLDA model applied to the AFL problem. The DOLDA model was designed with the AFL problem in mind, since it has the exact structure of a mix of nominal and numeric inputs in combination with unstructured text. We show that our DOLDA model exhibits many nice properties, among others, interpretability, that the research community has iden- tified as missing in current models for AFL.

Ort, förlag, år, upplaga, sidor
Linköping: Linköping University Electronic Press, 2018. , s. 120
Serie
Linköping Studies in Science and Technology. Dissertations, ISSN 0345-7524 ; 1936
Nyckelord [en]
machine learning, bug reports, large scale software development
Nationell ämneskategori
Teknik och teknologier Programvaruteknik
Identifikatorer
URN: urn:nbn:se:liu:diva-147059DOI: 10.3384/diss.diva-147059ISBN: 9789176853061 (tryckt)OAI: oai:DiVA.org:liu-147059DiVA, id: diva2:1206580
Disputation
2018-06-12, Ada Lovelace, Hus B, Campus Valla, Linköping, 13:15 (Engelska)
Opponent
Handledare
Tillgänglig från: 2018-05-17 Skapad: 2018-05-17 Senast uppdaterad: 2026-01-23Bibliografiskt granskad
Delarbeten
1. Towards Automated Anomaly Report Assignment in Large Complex Systems using Stacked Generalization
Öppna denna publikation i ny flik eller fönster >>Towards Automated Anomaly Report Assignment in Large Complex Systems using Stacked Generalization
2012 (Engelska)Ingår i: Software Testing, Verification and Validation (ICST), 2012, IEEE , 2012, s. 437-446Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

Maintenance costs can be substantial for organizations with very large and complex software systems. This paper describes research for reducing anomaly report turnaround time which, if successful, would contribute to reducing maintenance costs and at the same time maintaining a good customer perception. Specifically, we are addressing the problem of the manual, laborious, and inaccurate process of assigning anomaly reports to the correct design teams. In large organizations with complex systems this is particularly problematic because the receiver of the anomaly report from customer may not have detailed knowledge of the whole system. As a consequence, anomaly reports may be wrongly routed around in the organization causing delays and unnecessary work. We have developed and validated machine learning approach, based on stacked generalization, to automatically route anomaly reports to the correct design teams in the organization. A research prototype has been implemented and evaluated on roughly one year of real anomaly reports on a large and complex system at Ericsson AB. The prediction accuracy of the automation is approaching that of humans, indicating that the anomaly report handling time could be significantly reduced by using our approach.

Ort, förlag, år, upplaga, sidor
IEEE, 2012
Nationell ämneskategori
Datavetenskap (datalogi)
Identifikatorer
urn:nbn:se:liu:diva-93231 (URN)10.1109/ICST.2012.124 (DOI)978-1-4577-1906-6 (ISBN)
Konferens
Fifth IEEE International Conference on Software Testing, Verification and Validation (ICST 2012), 17-21 April 2012, Montreal, QC, Canada
Anmärkning

Finansierat av Ericsson AB

Tillgänglig från: 2013-05-27 Skapad: 2013-05-27 Senast uppdaterad: 2018-05-17Bibliografiskt granskad
2. Automated bug assignment: Ensemble-based machine learning in large scale industrial contexts
Öppna denna publikation i ny flik eller fönster >>Automated bug assignment: Ensemble-based machine learning in large scale industrial contexts
Visa övriga...
2016 (Engelska)Ingår i: Empirical Software Engineering, ISSN 1382-3256, E-ISSN 1573-7616, Vol. 21, nr 4, s. 1533-1578Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

Bug report assignment is an important part of software maintenance. In particular, incorrect assignments of bug reports to development teams can be very expensive in large software development projects. Several studies propose automating bug assignment techniques using machine learning in open source software contexts, but no study exists for large-scale proprietary projects in industry. The goal of this study is to evaluate automated bug assignment techniques that are based on machine learning classification. In particular, we study the state-of-the-art ensemble learner Stacked Generalization (SG) that combines several classifiers. We collect more than 50,000 bug reports from five development projects from two companies in different domains. We implement automated bug assignment and evaluate the performance in a set of controlled experiments. We show that SG scales to large scale industrial application and that it outperforms the use of individual classifiers for bug assignment, reaching prediction accuracies from 50 % to 89 % when large training sets are used. In addition, we show how old training data can decrease the prediction accuracy of bug assignment. We advice industry to use SG for bug assignment in proprietary contexts, using at least 2,000 bug reports for training. Finally, we highlight the importance of not solely relying on results from cross-validation when evaluating automated bug assignment.

Ort, förlag, år, upplaga, sidor
SPRINGER, 2016
Nyckelord
Machine learning; Ensemble learning; Classification; Bug reports; Bug assignment; Industrial scale; Large scale
Nationell ämneskategori
Programvaruteknik
Identifikatorer
urn:nbn:se:liu:diva-130374 (URN)10.1007/s10664-015-9401-9 (DOI)000379060700004 ()
Anmärkning

Funding Agencies|Industrial Excellence Center EASE Embedded Applications Software Engineering

Tillgänglig från: 2016-08-15 Skapad: 2016-08-05 Senast uppdaterad: 2022-09-15
3. Sparse Partially Collapsed MCMC for Parallel Inference in Topic Models
Öppna denna publikation i ny flik eller fönster >>Sparse Partially Collapsed MCMC for Parallel Inference in Topic Models
2018 (Engelska)Ingår i: Journal of Computational And Graphical Statistics, ISSN 1061-8600, E-ISSN 1537-2715, Vol. 27, nr 2, s. 449-463Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

Topic models, and more specifically the class of Latent Dirichlet Allocation (LDA), are widely used for probabilistic modeling of text. MCMC sampling from the posterior distribution is typically performed using a collapsed Gibbs sampler. We propose a parallel sparse partially collapsed Gibbs sampler and compare its speed and efficiency to state-of-the-art samplers for topic models on five well-known text corpora of differing sizes and properties. In particular, we propose and compare two different strategies for sampling the parameter block with latent topic indicators. The experiments show that the increase in statistical inefficiency from only partial collapsing is smaller than commonly assumed, and can be more than compensated by the speedup from parallelization and sparsity on larger corpora. We also prove that the partially collapsed samplers scale well with the size of the corpus. The proposed algorithm is fast, efficient, exact, and can be used in more modeling situations than the ordinary collapsed sampler.

Ort, förlag, år, upplaga, sidor
Taylor & Francis, 2018
Nyckelord
Bayesian inference, Gibbs sampling, Latent Dirichlet Allocation, Massive Data Sets, Parallel Computing, Computational complexity
Nationell ämneskategori
Sannolikhetsteori och statistik
Identifikatorer
urn:nbn:se:liu:diva-140872 (URN)10.1080/10618600.2017.1366913 (DOI)000435688200018 ()
Forskningsfinansiär
Stiftelsen för strategisk forskning (SSF), SSFRIT 15-0097
Tillgänglig från: 2017-09-13 Skapad: 2017-09-13 Senast uppdaterad: 2022-04-11Bibliografiskt granskad
4. Automatic Localization of Bugs to Faulty Components in Large Scale Software Systems using Bayesian Classification
Öppna denna publikation i ny flik eller fönster >>Automatic Localization of Bugs to Faulty Components in Large Scale Software Systems using Bayesian Classification
Visa övriga...
2016 (Engelska)Ingår i: 2016 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY (QRS 2016), IEEE , 2016, s. 425-432Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

We suggest a Bayesian approach to the problem of reducing bug turnaround time in large software development organizations. Our approach is to use classification to predict where bugs are located in components. This classification is a form of automatic fault localization (AFL) at the component level. The approach only relies on historical bug reports and does not require detailed analysis of source code or detailed test runs. Our approach addresses two problems identified in user studies of AFL tools. The first problem concerns the trust in which the user can put in the results of the tool. The second problem concerns understanding how the results were computed. The proposed model quantifies the uncertainty in its predictions and all estimated model parameters. Additionally, the output of the model explains why a result was suggested. We evaluate the approach on more than 50000 bugs.

Ort, förlag, år, upplaga, sidor
IEEE, 2016
Nyckelord
Machine Learning; Fault Detection; Fault Location; Software Maintenance; Software Debugging; Software Engineering
Nationell ämneskategori
Datavetenskap (datalogi)
Identifikatorer
urn:nbn:se:liu:diva-132879 (URN)10.1109/QRS.2016.54 (DOI)000386751700044 ()978-1-5090-4127-5 (ISBN)
Konferens
IEEE International Conference on Software Quality, Reliability and Security (QRS)
Tillgänglig från: 2016-12-06 Skapad: 2016-11-30 Senast uppdaterad: 2020-09-16

Open Access i DiVA

Machine Learning-Based Bug Handling in Large-Scale Software Development(1787 kB)2180 nedladdningar
Filinformation
Filnamn FULLTEXT02.pdfFilstorlek 1787 kBChecksumma SHA-512
676dbb4b1ae04620379d4b7e6ce29e420dd8981e6780788c7fbfa01b6d0bf276d5e5e2fb8e0e2cccc76d002c58609d0d3f574a49b8c31ef069ce8b47eb609623
Typ fulltextMimetyp application/pdf
omslag(2909 kB)120 nedladdningar
Filinformation
Filnamn COVER01.pdfFilstorlek 2909 kBChecksumma SHA-512
295bffb96d2effd73b039c488edfa0b7c285434006421af701e732fc6c77b780c983c58785743bbc4ff4a2c6f0004df787cce16ffa690e5a1bf9f3b1a08a5453
Typ coverMimetyp application/pdf
Beställ online >>

Övriga länkar

Förlagets fulltext

Person

Jonsson, Leif

Sök vidare i DiVA

Av författaren/redaktören
Jonsson, Leif
Av organisationen
Institutionen för datavetenskapTekniska fakulteten
Teknik och teknologierProgramvaruteknik

Sök vidare utanför DiVA

GoogleGoogle Scholar
Totalt: 2233 nedladdningar
Antalet nedladdningar är summan av nedladdningar för alla fulltexter. Det kan inkludera t.ex tidigare versioner som nu inte längre är tillgängliga.

doi
isbn
urn-nbn

Altmetricpoäng

doi
isbn
urn-nbn
Totalt: 3308 träffar
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf