Re-run, Repeat, Reproduce, Reuse, Replicate: Transforming Code into Scientific Contributions

Re-run, Repeat, Reproduce, Reuse, Replicate: Transforming Code into Scientific Contributions
复制标题

DOI:
10.3389/fninf.2017.00069
复制
发表时间:
2018-01-04
影响因子:
3.5
通讯作者:
Rougier, Nicolas P.
Rougier, Nicolas P.
中科院分区:
医学3区
文献类型:
--
作者:
Benureau, Fabien C. Y.;Rougier, Nicolas P.

文献摘要

被引文献

相似文献

科学代码不同于生产软件。科学代码,通过产生结果,然后分析和解释,参与科学结论的阐述。这对代码施加了在实践中经常被忽略的特定约束。我们用一个小例子来说明计算科学中的科学代码应该具备的五个特征:可重新运行的、可重复的、可再现的、可重用的和可复制的。代码应该是可执行的(可重新运行的),并产生相同的结果多次(可重复的);它应该允许研究者重新获得已发表的结果(可重复),同时易于使用、理解和修改(可重复使用),并且它应该作为文章算法描述中任何模糊的可用参考(可重复使用)。
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).