Learning from reproducing computational results: Introducing three principles and the Reproduction Package

M. S. Krafczyk, A. Shi, A. Bhaskar, D. Marinov, V. Stodden

Research output: Contribution to journalArticlepeer-review

Abstract

We carry out efforts to reproduce computational results for seven published articles and identify barriers to computational reproducibility. We then derive three principles to guide the practice and dissemination of reproducible computational research: (i) Provide transparency regarding how computational results are produced; (ii) When writing and releasing research software, aim for ease of (re-)executability; (iii) Make any code upon which the results rely as deterministic as possible. We then exemplify these three principles with 12 specific guidelines for their implementation in practice. We illustrate the three principles of reproducible research with a series of vignettes from our experimental reproducibility work. We define a novel Reproduction Package, a formalism that specifies a structured way to share computational research artifacts that implements the guidelines generated from our reproduction efforts to allow others to build, reproduce and extend computational science. We make our reproduction efforts in this paper publicly available as exemplar Reproduction Packages. This article is part of the theme issue 'Reliability and reproducibility in computational science: implementing verification, validation and uncertainty quantification in silico'.

Original languageEnglish (US)
Article number20200069
JournalPhilosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences
Volume379
Issue number2197
Early online dateMar 29 2021
DOIs
StatePublished - May 17 2021

Keywords

  • code packaging
  • open code
  • open data
  • reproducibility
  • software testing
  • verification

ASJC Scopus subject areas

  • General Mathematics
  • General Engineering
  • General Physics and Astronomy

Fingerprint

Dive into the research topics of 'Learning from reproducing computational results: Introducing three principles and the Reproduction Package'. Together they form a unique fingerprint.

Cite this