Reproducible experimental results are a cornerstone of the scientific method. Yet, as experiments and data analysis techniques become more and more complex it becomes increasingly more challenging to document and preserve the outcome of an experiment in a way that makes it easy to repeat an analysis at a later time. On the other hand, the same advances in computing that enable scientists to use sophisticated analytical tools to interpret their data also provide the means to manage the reproducibility problem.
This book presents patterns which appear in the context of analysis preservation and reproducibility. Each pattern discusses a certain aspect or challenge and presents a conceptual solution. Example implementations for the solutions are discussed where available and the interplay with other patterns is highlighted.
The patterns presented here come from practitioners experience. We hope they provide a way to organize thinking about analysis preservation and the reproducibility challenge and to give analysers the creative seeds needed to make their work more reproducible.