Report Open Access

# Improving BioDynaMo build system

Giovanni De Toni

### DataCite XML Export

<?xml version='1.0' encoding='utf-8'?>
<identifier identifierType="DOI">10.5281/zenodo.3550754</identifier>
<creators>
<creator>
<creatorName>Giovanni De Toni</creatorName>
</creator>
</creators>
<titles>
<title>Improving BioDynaMo build system</title>
</titles>
<publisher>Zenodo</publisher>
<publicationYear>2019</publicationYear>
<subjects>
<subject>CERN openlab</subject>
<subject>summer student programme</subject>
</subjects>
<dates>
<date dateType="Issued">2019-11-22</date>
</dates>
<resourceType resourceTypeGeneral="Text">Report</resourceType>
<alternateIdentifiers>
<alternateIdentifier alternateIdentifierType="url">https://zenodo.org/record/3550754</alternateIdentifier>
</alternateIdentifiers>
<relatedIdentifiers>
<relatedIdentifier relatedIdentifierType="DOI" relationType="IsVersionOf">10.5281/zenodo.3550753</relatedIdentifier>
<relatedIdentifier relatedIdentifierType="URL" relationType="IsPartOf">https://zenodo.org/communities/cernopenlab</relatedIdentifier>
</relatedIdentifiers>
<rightsList>
<rights rightsURI="info:eu-repo/semantics/openAccess">Open Access</rights>
</rightsList>
<descriptions>
<description descriptionType="Abstract">&lt;p&gt;When developing new programs or scientific libraries most of the efforts are focused on providing&amp;nbsp;&lt;br&gt;
efficient algorithms, the state-of-the-art techniques and maximum flexibility. However, in order for a&amp;nbsp;&lt;br&gt;
new project to be effective, one of the top priorities must be how the final user will obtain our&amp;nbsp;&lt;br&gt;
software.&amp;nbsp;&lt;br&gt;
Sure enough, the first approach of the users usually is how to build/install the provided software. If&amp;nbsp;&lt;br&gt;
the necessary steps/prerequisites to install the project are missing or not working, then we will lose a&amp;nbsp;&lt;br&gt;
possible new user (or even many more). This happens especially if we are targeting users who are&amp;nbsp;&lt;br&gt;
not experienced with DevOps operations (e.g. how to develop software and which tools are needed).&amp;nbsp;&lt;br&gt;
For this purpose, the documentation must also be clear and concise, it has to provide code examples&amp;nbsp;&lt;br&gt;
and possible use cases and it has to state clearly the installation procedure. &amp;nbsp;&lt;br&gt;
This report details the work on the BioDynaMo project (a biological large-scale simulator) which&amp;nbsp;&lt;br&gt;
targeted their entire build and testing system. The project was about improving the previous&amp;nbsp;&lt;br&gt;
automatic build procedure to increase usability and to provide a more maintainable codebase. The&amp;nbsp;&lt;br&gt;
updates targeted the mechanism which takes care of installing the required packages and the&amp;nbsp;&lt;br&gt;
complete build process, such to make the operations more robust and flexible for the final users. &amp;nbsp;&lt;br&gt;
Some final conclusions were drawn from this experience to be useful to define future refactoring&amp;nbsp;&lt;br&gt;
processes. Moreover, future works and improvements are also discussed which can be used to&amp;nbsp;&lt;br&gt;
direct the next development steps of BioDynaMo. &amp;nbsp;&lt;/p&gt;</description>
</descriptions>
</resource>

110
83
views