After working on a mission involving tools that required maximum stability due to stringent operational constraints, whilst regularly integrating new features, I became convinced of the necessity of high-quality development and production maintenance practices. Now working on projects led by EURODECISION, I have genuinely appreciated that these practices are central to our project management approach!

First, I was able to rapidly integrate into an existing EURODECISION project, thanks to the team-based development approach.

In fact, all individuals involved in a project use collaborative tools common to all EURODECISION projects, whether they are developed in C++, Python, Java, CSS/HTML/JavaScript, etc. This standardisation of team working practices enables the rapid integration of a new contributor to a project.

For code sharing, we use the well-known Git version control system and follow the Gitflow workflow to manage branches. This model enables a well-organised project code history, ensures traceability of deliverable content to our clients, and facilitates parallel feature development.

The combination of Git and GitLab ensures precise project tracking, including ticket creation, code reviews, role-based access control, and wikis. This standardised project management approach facilitates collaborators’ workflows.

Using these tools, I have observed that EURODECISION ensures its clients receive high-quality software solutions, thanks to continuous integration tools that deliver significant added value to our projects.

Indeed, to ensure the quality of our solutions, it is necessary to test every new code change before deploying it. With projects comprising several thousand lines of code, it is essential to use high-performance tools that run automatically to avoid time-consuming manual interventions when executing multiple tests.

For more details, please contact us
Name
First Name
Company
Email *
Phone number
Your request *

* Mandatory fields

Thus, with each proposed modification, all standard software testing methods (compilation, static code analysis, and dynamic code analysis during unit or functional execution) are performed across multiple operating systems. Jenkins is used to orchestrate and automate these tests. An internally developed tool simplifies the project-wide implementation of these sequences and standardises them across projects.

And again, without manual intervention, once the tests have been executed, the reports and source code are sent to the SonarQube platform. According to our quality standard definition at EURODECISION, this tool enables the identification of vulnerabilities, their correction, and the minimisation of the risk that code added to the project contains errors or is untested and undocumented.

The SonarQube tool also enables us to monitor project quality and estimate “technical debt”, i.e. the time required for the code to be completely free of bugs and poor practices.

Maintaining control over the evolution of EURODECISION projects also relies on proper management of the versions of common software libraries used. Dependency changes can rapidly become tedious for a project, but systematic monitoring of these evolutions is firmly in place!

It is necessary to trace software library versions to benefit from their evolution whilst ensuring that no modification negatively impacts a project using that library.

To ensure these libraries remain practical toolkits for our projects, “package managers” are used. They function as servers that make all available versions accessible, with information for each evolution. Per our requirements, we can easily retrieve the desired library versions via a simple project configuration.

Developing in C++, I use the Conan package manager, selected by EURODECISION, which fulfils this function extremely well.

As a developer, I find that the modernisation work on development processes and tools undertaken by EURODECISION several years ago is genuinely valuable!

Internal tools are also maintained to reduce development time on time-consuming tasks, allowing us to focus on client-specific requirements in their business domain and on the performance of our proposed solutions.

EURODECISION has notably developed a C++ code generator that enables, in seconds, the translation of a business model into source code, on which we can develop our algorithms, with the guarantee that it will be efficient, secure (memory management and encapsulation), and standardised.

Drawing on EURODECISION’s years of experience in industrial computing and applied mathematics, it is a pleasure to add new building blocks to the edifice.

Many thanks to all those working for quality at EURODECISION! Their work enables us to meet our clients’ stringent quality requirements and to ensure we develop our solutions under excellent conditions.

To find out more: Closer look at development processes at EURODECISION