The authors discuss reproducible research, that is, research where the same task produces the same result as the original research. Researchers in the computing community are encouraged to make their results reproducible so that others can verify, reproduce, and extend their computational experiments. Such a process is of great interest to scientific computing, where it means writing the same program running on the same computer architecture and operating system as the original. However, due to the various versions of software, operating systems, and programming languages available, it is often hard to replicate every detail.
It is obvious that science is becoming more digitized, creating scientific computing environments in which the research paper becomes an expression of activities through categorized and systematized data and computer program code. Hence, reproducibility in scientific computing demands that both software and data be available in the exact same way as in the original research. The result is that scientists have become much more concerned with reproducible work environments. Scientific computing experiments are widely designed as scientific workflows published as digital objects. The authors understand workflow’s potential in the scientific computing research process, where a scientific workflow includes an executable description of scientific procedures. An interesting point of view is the assumption that reproducibility in scientific computing requires an environment where input data, computer program code, and workflow are freely available and cited. This notion correlates with a need to document the full context of computational experiments.
A very useful topic for readers is the authors’ analysis of a working environment, that is, the basic computational elements (scopes) used in a specific workflow, including commands, data, software, operating system, and hardware.
To ensure reproducibility, all elements should be preserved and described in detail, that is, documented. In addition to the basic elements, the authors identify workflow as key to designing a scientific computing environment that allows for reproducibility. Thus, they present not only technical barriers to reproducibility in scientific computing, but also a survey on possible solutions and practical ways to overcome common problems.
This study is a good choice for readers who know something about scientific computing or are quite familiar with the topic. Computer science researchers and students, as well as professionals in scientific computing environments and digital labs, may find the paper to be very valuable and a useful source for their work.