Outline
This page provides a top-level outline of the software management and code release process. You can find detailed information on each step at the linked pages.
In brief, the code release process can be broken into three key stages: setup, development, and release. In the setup stage, you should consider the characteristics of your code, and decide on the most appropriate type of release. You will also set up a forking workflow for the project on Gitlab.
The development stage will be the majority of your time. In this stage, you will alternate between writing code and conducting security/code reviews. This process is cyclical, and you should plan to conduct multiple reviews. Usually, you’ll conduct a review whenever you complete a new feature. These reviews are brief but important. The code review allows you to receive feedback while the code is still malleable, and the iterative security reviews will greatly speed up the later release stage.
In the release stage, you’ll complete various final tasks required to release the code. You’ll first review the scientific content of the code with a domain review. Next, reserve a DOI and create an IPDS record for your release. Then, an administrative review will check the code meets various legal and administrative requirements. Finally, you’ll submit your code for release.
Outline of the software development process.