skip to main content
10.1145/1810295.1810438acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
tutorial

Bayesian methods for data analysis in software engineering

Published:01 May 2010Publication History

ABSTRACT

Software engineering researchers analyze programs by applying a range of test cases, measuring relevant statistics and reasoning about the observed phenomena. Though the traditional statistical methods provide a rigorous analysis of the data obtained during program analysis, they lack the flexibility to build a unique representation for each program. Bayesian methods for data analysis, on the other hand, allow for flexible updates of the knowledge acquired through observations. Despite their strong mathematical basis and obvious suitability to software analysis, Bayesian methods are still largely under-utilized in the software engineering community, primarily because many software engineers are unfamiliar with the use of Bayesian methods to formulate their research problems.

This tutorial will provide a broad introduction of Bayesian methods for data analysis, with a specific focus on problems of interest to software engineering researchers. In addition, the tutorial will provide an in-depth understanding of a subset of popular topics such as Bayesian inference, probabilistic prediction techniques, Markov models, information theory and sampling. The core concepts will be explained using case studies and the application of prominent statistical tools on examples drawn from software engineering research. At the end of the tutorial, the participants will acquire the necessary skills and background knowledge to formulate their research problems using Bayesian methods, and analyze their formulation using appropriate software tools.

References

  1. G. K. Baah, A. Gray, and M. J. Harrold. On-line Aanomaly Detection of Deployed Software: A Statistical Machine Learning Approach. In SOQUA, pages 70--77, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. G. K. Baah, A. Podgurski, and M. J. Harrold. The Probabilistic Program Dependence Graph and its Application to Fault Diagnosis. In ISSTA, pages 189--200, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. C. M. Bishop. Pattern Recognition and Machine Learning. Springer-Verlag, New York, 2008.Google ScholarGoogle Scholar
  4. L. C. Briand. Novel Applications of Machine Learning in Software Testing. In The Eighth International Conference on Quality Software, pages 3--10, Washington, DC, USA, 2008. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. A. Gelman, J. B. Carlin, H. S. Stern, and D. B. Rubin. Bayesian Data Analysis. Chapman and HALL/CRC, 2004.Google ScholarGoogle Scholar
  6. J.-J. Gras, R. Gupta, and E. Perez-Minana. Generating A Test Strategy with Bayesian Networks and Common Sense. Academic and Industrial Conference on Practice And Research Techniques, Testing, 0:29--40, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. The Mathworks Website. http://www.mathworks.com/products/matlab/.Google ScholarGoogle Scholar
  8. T. B. Project. Bayesian Inference Using Gibbs Sampling. MRC Biostatistics Unit, Cambridge, UK, 1997.Google ScholarGoogle Scholar
  9. R Development Core Team. R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria, 2007. ISBN 3-900051-07-0.Google ScholarGoogle Scholar
  10. D. A. Wooff, M. Goldstein, and F. P. A. Coolen. Bayesian Graphical Models for Software Testing. IEEE Trans. Softw. Eng., 28(5):510--525, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  1. Bayesian methods for data analysis in software engineering

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      ICSE '10: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
      May 2010
      554 pages
      ISBN:9781605587196
      DOI:10.1145/1810295

      Copyright © 2010 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 1 May 2010

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • tutorial

      Acceptance Rates

      Overall Acceptance Rate276of1,856submissions,15%

      Upcoming Conference

      ICSE 2025

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader