Versioning and archiving of processing routines
- Routines used for processing and analysis need to have unique version numbers.
- The code should be open-source and stored in a version control system (VCS)
to allow for reproducibility of the exact step with the exact same code.
- The versions need to be long-term archived, similarly for decades as the data.
As mentioned when discussing documentation, the exact version(s) of the routines and the operating system used for processing and analysing data needs to be (automatically) saved in the records. This requires the routines used for processing and analysis to have unique version numbers. Here, unique means that each version of a routine has exactly one version number and each version number refers to exactly one version of the respective routine (bijective in mathematical language).
Furthermore, the code of the routines used should be open-source (more details) and stored in a version control system (VCS) greatly facilitating the handling of different versions.
Eventually, the routines and all their versions need to be long-term archived, for a similar time frame as the original data. For furhter discussion of the requirements of long-term storage, see the archiving requirement.