Re-run, Repeat, Reproduce, Reuse, Replicate: Transforming Code into Scientific Contributions
Open Access
- 4 January 2018
- journal article
- research article
- Published by Frontiers Media SA in Frontiers in Neuroinformatics
- Vol. 11, 69
Abstract
Scientific code is different from production software. Scientific code, by producing results that are then analyzed and interpreted, participates in the elaboration of scientific conclusions. This imposes specific constraints on the code that are often overlooked in practice. We articulate, with a small example, five characteristics that a scientific code in computational science should possess: re-runnable, repeatable, reproducible, reusable, and replicable. The code should be executable (re-runnable) and produce the same result more than once (repeatable); it should allow an investigator to reobtain the published results (reproducible) while being easy to use, understand and modify (reusable), and it should act as an available reference for any ambiguity in the algorithmic descriptions of the article (replicable).Keywords
All Related Versions
This publication has 20 references indexed in Scilit:
- Reproducible and User-Controlled Software Environments in HPC with Guix2015
- Numerical reproducibility for the parallel reduction on multi- and many-core architecturesParallel Computing, 2015
- Estimating the reproducibility of psychological scienceScience, 2015
- The Matter of Heartbleed2014
- Ten Simple Rules for Reproducible Computational ResearchPLOS Computational Biology, 2013
- Learning from the Past: Approaches for Reproducibility in Computational Neuroscience2013
- Accessible Reproducible ResearchScience, 2010
- Translating network models to parallel hardware in NEURONJournal of Neuroscience Methods, 2008
- Reproducible Epidemiologic ResearchAmerican Journal of Epidemiology, 2006
- Making scientific computations reproducibleComputing in Science & Engineering, 2000