Objectif : un code optimisé !
L’audit d’éco-conception consiste à analyser en détail une application sous l’angle de l’écologie et des consommations de ressources (énergie, eau, CO2…).
En se basant notamment sur plusieurs référentiels de bonnes pratiques d’éco-conception, on étudie le code source de l’application, l’application en fonctionnement et les pratiques de développement (documentation, technologies utilisées, processus de développement…).
Complémentaire à l’audit de code classique, l’audit éco-conception web permet de se donner les moyens de comprendre et d’agir sur la consommation de son application.
Avoir une vision claire sur la consommation de son application
Avoir la liste des fonctionnalités qui consomment le plus
Avoir une roadmap claire sur les actions à mener pour diminuer la consommation de ressources
Avoir la vision sur la consommation de son hébergement
Former les équipes de développement à l’éco-conception
Chez AXOPEN, nous sommes convaincus qu’il est toujours possible de faire quelque chose pour améliorer la consommation d’une application. On trouve au passage que mettre le focus sur l’éco-conception permet de nombreuses externalités positives :
Réduction de la facture d’hébergement
Amélioration de l’expérience utilisateur, avec des performances souvent bien meilleures
Une maintenance facilitée, car l’éco-conception se focalise aussi sur la qualité de l’application et du code
Diminution des risques de sécurité
Augmentation de la durée d’exploitation de l’application
En tant que partenaire de développement de nos clients, nous avons l’habitude de travailler sur des applications variées, que ce soit pour des audits d’éco-conception, du développement de nouveaux modules ou des activités de maintenance.
Pour ce qui est des technologies, nous sommes capables d’analyser les applications qui tournent sous les stacks : C#/.NET, Java/Springboot, PHP/Symfony ou encore les frameworks JavaScript (Angular, React, Vuejs). De même, pour la partie hébergement, nous pouvons analyser des apps hébergées dans le cloud (AWS, Azure, GCP) ou en hébergement classique.
Méthodologie
Faire un audit d’éco-conception, ça ne s’improvise pas ! On doit tout d’abord avoir accès aux informations suivantes : le code source de l’application, un environnement de l’application fonctionnel, les informations relatives à l’hébergement et si possible, la plateforme d’observabilité utilisée.
Sur cette base et les objectifs identifiés avant le démarrage de l’audit d’éco-conception, nos experts techniques, qui ont l’habitude de naviguer dans de grandes quantités de code, démarrent leur analyse manuelle.
La démarche
#1
Identification de la problématique et du périmètre de l’audit
#2
Premières analyses
#3
Point mi-parcours : Premiers retours & échanges avec votre équipe
#4
Poursuite des analyses
#5
Restitution orale
#6
Restitution écrite : rapport d’audit
Étape #1
Pour démarrer l’analyse, on commence par faire un état des lieux global de l’application. Cela se traduit concrètement par le balayage des fonctionnalités de l’application, puis par le monitoring de chacune des fonctionnalités en fonctionnement pour évaluer leur consommation unitaire.
Une fois cette première étape terminée, on peut se concentrer sur le code source de l’application. L’idée est de rentrer dans le détail de chacune des fonctionnalités pour savoir ce qui consomme des ressources de manière précise. Cela peut être par exemple :
Un algorithme mal optimisé
Des requêtes SQL complexes
Trop de données véhiculées entre le front et l’API
Une conception hasardeuse
Et bien d’autres choses !
L’idée est ici d’avoir une liste précise de choses qu’il est possible d’améliorer concrètement dans son application.
Étape #2
Une fois cette première analyse effectuée, nous nous concentrons sur les aspects qui ne sont pas purement techniques, mais qui permettent de gagner en durée d’exploitation de l’application.
On analyse ici toutes les composantes périphériques au code principal de l’application, pour identifier ce qui pourrait faire améliorer sa durée de vie. On peut s’attarder notamment sur :
Les librairies utilisées
La qualité de la documentation
Le processus de développement
L’outillage mis à disposition
Etc.
Pour clore l’analyse, on se penche sur l’hébergement de l’application et son optimisation.
Après l'audit ?
Sur la base du panel d’analyses réalisé, nous créons un livrable sous forme de rapport écrit détaillé qui contient les grandes parties suivantes :
Etat des lieux global de l’applicatif
Points positifs et négatifs observés durant les phases d’analyse, au regard des bonnes pratiques d’éco-conception
Matrice de recommandations détaillée des points à améliorer avec une priorisation entre les chantiers et bien sûr, les gains qui pourront être réalisés.
Nous organisons également une restitution orale avec vos équipes (décisionnaires et/ou de développement) pour présenter le rapport de manière synthétique.
Vous ressortez ensuite avec une liste d’actions concrètes à réaliser, pour lesquelles nous pouvons vous accompagner au besoin (comme par exemple : celle de réaliser les optimisations, ou de former vos développeurs aux bonnes pratiques d’éco-conception).
A notre sens, l’éco-conception ce n’est pas un one shot ! C’est nécessaire de mettre en place une véritable démarche de réduction de consommation des ressources et d’acculturation des équipes à ses pratiques pour réussir ce défi sur la durée :)