A Hitchhiker's guide to statistical tests for assessing randomized algorithms in software engineering

Andrea Arcuri, Lionel Briand

Research output: Contribution to journalArticlepeer-review

Abstract

SUMMARYRandomized algorithms are widely used to address many types of software engineering problems, especially in the area of software verification and validation with a strong emphasis on test automation. However, randomized algorithms are affected by chance and so require the use of appropriate statistical tests to be properly analysed in a sound manner. This paper features a systematic review regarding recent publications in 2009 and 2010 showing that, overall, empirical analyses involving randomized algorithms in software engineering tend to not properly account for the random nature of these algorithms. Many of the novel techniques presented clearly appear promising, but the lack of soundness in their empirical evaluations casts unfortunate doubts on their actual usefulness. In software engineering, although there are guidelines on how to carry out empirical analyses involving human subjects, those guidelines are not directly and fully applicable to randomized algorithms. Furthermore, many of the textbooks on statistical analysis are written from the viewpoints of social and natural sciences, which present different challenges from randomized algorithms. To address the questionable overall quality of the empirical analyses reported in the systematic review, this paper provides guidelines on how to carry out and properly analyse randomized algorithms applied to solve software engineering tasks, with a particular focus on software testing, which is by far the most frequent application area of randomized algorithms within software engineering.

Original languageEnglish
Pages (from-to)219-250
Number of pages32
JournalSoftware Testing Verification and Reliability
Volume24
Issue number3
DOIs
Publication statusPublished - May 2014
Externally publishedYes

Keywords

  • Bonferroni adjustment
  • confidence interval
  • effect size
  • nonparametric test
  • parametric test
  • statistical difference
  • survey
  • systematic review

Fingerprint

Dive into the research topics of 'A Hitchhiker's guide to statistical tests for assessing randomized algorithms in software engineering'. Together they form a unique fingerprint.

Cite this