TerriSTORY® – Une histoire de territoires OpenSource

By mardi 16 juillet 2024NewsFR

Lorsque nous avons commencé à travailler sur Terristory en 2018, c’était alors un POC (Proof Of Concept) commandé par AURA-EE,  Auvergne Rhône-Alpes Énergie Environnement. Le premier sprint devait convaincre de la faisabilité et projeter les ambitions de l’association. 6 ans plus tard, la plateforme devenue publique est un projet OpenSource maintenu de façon autonome directement par AURA-EE.

Le développement de la plateforme s’est déroulé sur plusieurs années. Au départ Oslandia était le prestataire chargé de réaliser et conseiller l’AURA-EE sur le projet, mais il était prévu aussi de former petit à petit les équipes côté association et de transmettre le savoir pour un jour permettre une totale autonomie. En parallèle, il y avait une volonté forte de la part d’Oslandia d’arriver à terme à une ouverture du code source de l’application, ce qui était également une volonté d’AURA-EE dès le départ.

Publier le code source d’une application (ici un site web) n’est pas forcément une tâche difficile en apparence.  On pourrait penser qu’il s’agit juste de créer un répertoire gitlab et d’y déposer le code. Dans les faits, c’est ce qui se passe. Néanmoins, une bonne préparation en amont est nécessaire si on souhaite une ouverture de qualité.

De nombreuses questions se bousculent alors

Quand doit-on publier ? Est-ce que la documentation est prête ? Dois-je traduire en anglais ? A-t-on résolu tous les bugs critiques ? Comment va se passer la publicité ? Y-a-t il un formalisme à respecter ? Les aspects juridiques sont-ils couverts ? Est-on prêt à recevoir les retours de la communauté ?

Les étapes

La première chose à faire était de choisir la licence. Dans le cas de Terristory c’est la GNU Affero (ou AGPL) version 3 qui a été sélectionnée, après étude des tenants et des aboutissants. Ici il s’agit d’un outil serveur, sur lequel AURA-EE et les différents partenaires impliqués au sein d’un consortium national voulaient que les modifications faites par les utilisateurs soient reversées.

Un premier travail de documentation et de structuration du code a été entrepris par AURA-EE. Avoir une bonne documentation, des guidelines sont essentiels pour s’assurer que toute personne intéressée par la réutilisation ou par la contribution au code puisse aisément installer, tester et ajouter de nouvelles fonctionnalités.

Le code de Terristory a également connu de nombreuses phases de refactoring, c’est à dire de réécriture de certaines parties parce qu’obsolète, pas assez efficaces ou suite à des changements de librairies utilisées. Outre les évolutions fonctionnelle d’une telle application, le refactoring constitue une partie importante de la vie du logiciel. D’autant plus sur les applications Web où les avancées technologiques sont rapides. Il faut maintenir le code, et suivre l’évolution des librairies sous-jacentes si on veut pouvoir faire évoluer le site plus facilement et par un maximum de personnes. Côté Oslandia, nous anticipons au mieux ces phases de développement pour éviter le jour J de devoir faire une revue totale et potentiellement complexe du code juste avant la publication.

Oslandia a accompagné AURA-EE sur toutes ces années, et a réussi à lui transmettre la culture de l’OpenSource, aussi bien techniquement que dans les méthodes de travail. Ainsi, les collaborateurs d’AURA-EE sont vite devenus des utilisateurs experts de Gitlab, des utilisateurs experts de la solution, puis des développeurs de l’application, pour enfin procéder eux-même à la libération publique du code. En tant qu’ancien développeur principal de l’application pendant plusieurs années, je suis personnellement assez fier du travail accompli et de la manière dont les choses se sont déroulées.

[Témoignage]

Pierrick Yalamas, Directeur intelligence territoriale et observatoires à Auvergne-Rhône-Alpes Énergie Environnement :
« Oslandia a su nous accompagner durant les premières années du projet TerriSTORY® : des premiers développements à l’appui juridique (choix de la licence) pour l’ouverture du code. L’équipe est maintenant complètement autonome. L’ouverture du code début 2023 a déjà donné lieu (mi-2024) à plusieurs réutilisations, qui permettent d’enrichir les fonctionnalités de TerriSTORY®. »

Notre vision

Le projet TerriSTORY® et la manière dont il s’est déroulé correspond à la vision d’Oslandia de la relation client : notre objectif est de fournir les outils et les méthodes permettant aux organisations que nous accompagnons d’être le plus efficace et le plus autonome possible. Et ce, sur tous les aspects d’un projet logiciel : technique, mais aussi organisationnel, juridique, sur l’infrastructure de développement et les process mis en place. Voir des solutions que nous avons ébauchées prendre leur propre autonomie, dans le respect de l’esprit du logiciel libre est une satisfaction et une fierté pour toute l’équipe, et nous sommes reconnaissants à l’AURA-EE de nous avoir fait confiance pour cela.