FAIR checklist for research software

The goal of the FAIR principles is to improve research transparency, reproducibility and reusability. To achieve this, your research needs to be described through metadata, should be open for inspection, well-documented, and well structured. This ensures that it can be replicated, expanded upon, merged, reinterpreted, or reimplemented. The acronym FAIR stands for:

  • Findable: Your research software can be easily found (i.e. has rich metadata, unique identifiers).
  • Accessible: Once found, it can be accessed, ideally through well-defined and open protocols.
  • Interoperable: Your research is compatible with other datasets, tools, and workflows, allowing for integration and reuse across various applications and fields.
  • Reusable: The ultimate goal is that your research outputs can be reused in different contexts. This requires comprehensive documentation, clear licensing, and a modular structure.

While originally targetting data management, the FAIR for Research Software (FAIR4RS) extends these principles to research software, which, unlike data, is executable and evolves over time. Ensuring the findability of software involves metadata, identifiers, and version control systems, while accessibility includes guidelines for obtaining, installing, and running the software. Interoperability involves adherence to community-driven standards or protocols, and reusability requires detailed documentation and user guides to effectively apply the software in new research projects.

Checklist

Version control

Essential

Recommended

Collaboration

Essential

Recommended

Project documentation

Essential

Software documentation

Essential

Recommended

Optional

Software testing

Essential

Recommended

Optional

Software quality

Essential

Recommended

Recommended for Python

Releases

Essential

Recommended

Optional

Example repositories

  • eScience Center - matchms - Matchms is an open-source Python package to import, process, clean, and compare mass spectrometry data.
  • TU Delft - Transposonmapper - Transposonmapper is an open-source python package and Docker image for mapping transposons from sequencing data.

For more information on the principles behind FAIR software, please have a look at the following resources:

Acknowledgements

The checklist was in part based on the checklist provided by the eScience Center, licensed under CC BY 4.0.