Report Open Access
Giovanni De Toni
When developing new programs or scientific libraries most of the efforts are focused on providing
efficient algorithms, the state-of-the-art techniques and maximum flexibility. However, in order for a
new project to be effective, one of the top priorities must be how the final user will obtain our
Sure enough, the first approach of the users usually is how to build/install the provided software. If
the necessary steps/prerequisites to install the project are missing or not working, then we will lose a
possible new user (or even many more). This happens especially if we are targeting users who are
not experienced with DevOps operations (e.g. how to develop software and which tools are needed).
For this purpose, the documentation must also be clear and concise, it has to provide code examples
and possible use cases and it has to state clearly the installation procedure.
This report details the work on the BioDynaMo project (a biological large-scale simulator) which
targeted their entire build and testing system. The project was about improving the previous
automatic build procedure to increase usability and to provide a more maintainable codebase. The
updates targeted the mechanism which takes care of installing the required packages and the
complete build process, such to make the operations more robust and flexible for the final users.
Some final conclusions were drawn from this experience to be useful to define future refactoring
processes. Moreover, future works and improvements are also discussed which can be used to
direct the next development steps of BioDynaMo.