Re-run, Repeat, Reproduce, Reuse, Replicate: Transforming Code into Scientific Contributions
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).
Link to resource: https://www.frontiersin.org/articles/10.3389/fninf.2017.00069/full
Type of resources: Reading
Education level(s): Graduate / Professional
Primary user(s): student, teacher
Subject area(s): Computer Science, Information Science, Social Science
Language(s): English