Software Practices for Better Science: Testing, Reproducibility, and Documentation

a tutorial presented at

Exascale Computing Project Tutorial Days

on 3:00 pm - 6:15 pm EST (UTC-5) Monday 6 February 2023

Presenters: David E. Bernholdt (Oak Ridge National Laboratory), David M. Rogers (Oak Ridge National Laboratory), and Gregory R. Watson (Oak Ridge National Laboratory)

This page provides detailed information specific to the tutorial event above. Expect updates to this page up to, and perhaps shortly after, the date of the tutorial. Pages for other tutorial events can be accessed from the main page of this site.

Quick Links

On this Page


As many ECP projects begin their transition from major development towards production science, this tutorial will offer key strategies to help projects improve their science. The tutorial will focus on testing strategies (design and selection in different contexts), reproducibility concerns and the creation of “lab notebook”-style documentation. These practices will provide you and your team detailed information about what to do and why. We’ll offer practical strategies, based on experience in a broad range of projects, that can help improve the effectiveness in going from software to science.


Time (EST)TitlePresenter
3:00 PMIntroduction and Setup David E. Bernholdt (ORNL)
3:05 PMTesting Strategies David M. Rogers (ORNL)
4:00 PMBreak
4:15 PMImproving Reproducibility Through Better Software Practices Gregory R. Watson (ORNL)
5:15 PMLab Notebooks for Computational Mathematics, Sciences, & Engineering David E. Bernholdt (ORNL)
6:15 PMAdjourn

Presentation Slides

The latest version of the slides will always be available at

Note that these files may include additional slides that will not be discussed during the tutorial, but questions are welcome.

How to Participate

If you’re interested in this tutorial, you might be interested in these Birds of a Feather sessions taking place next week as part of the ECP Community BoF Days:

Stay in Touch

Resources from Presentations

Links from the tutorial presentations are listed here for convenience

Requested Citation

The requested citation the overall tutorial is:

David E. Bernholdt, David M. Rogers, and Gregory R. Watson, Software Practices for Better Science: Testing, Reproducibility, and Documentation tutorial, in Exascale Computing Project Tutorial Days, online, 2023. DOI: 10.6084/m9.figshare.21989507.

Individual modules may be cited as Speaker, Module Title, in Software Practices for Better Science: Testing, Reproducibility, and Documentation tutorial…


This tutorial is produced by the IDEAS Productivity project.

This work was supported by the U.S. Department of Energy Office of Science, Office of Advanced Scientific Computing Research (ASCR), and by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of the U.S. Department of Energy Office of Science and the National Nuclear Security Administration.