Passer au contenu

Vers des tests de sobriété dans les services numériques

Thierry Leboucq
2 août 2021

Néanmoins, il s’agit d’un objectif de moyens qui ne garantit pas l’atteinte d’un résultat. L’exigence « non fonctionnelle » de sobriété de ressources doit l’être sur un résultat à obtenir et sur la base d’indicateurs mesurables.

Quelles sont les conditions de mesure de la sobriété numérique ?

La sobriété peut être fonctionnelle, technique ou ergonomique. Elle touche aussi le contenu et le design.

Pour être mesurée, les impacts sur toute la chaîne doivent être pris en compte. Nous devons donc nous appuyer sur des indicateurs représentatifs des ressources consommées à la fois sur le serveur, le réseau et le poste client d’une application.

Cette mesure de la sobriété doit également s’inscrire dans la dynamique du parcours que nous suivons sur une page, un écran, un formulaire, etc.

Elle doit aussi se faire dans les conditions d’usage et les contraintes du service pour être au plus proche du ressenti de l’utilisateur (parcours utilisateur de bout en bout, prise en compte de la mobilité, …).

Enfin, pour des raisons économiques, il convient de se concentrer sur les endroits fonctionnels où l’utilisateur passe souvent dans son usage régulier.

Quels indicateurs existent-ils pour tester et vérifier cette sobriété numérique ?

Il y a une complexité dans le choix des indicateurs, avec parfois un accès difficile à la mesure des indicateurs tels que la mesure du Cloud public, celle du traitement sur un serveur ou celle de l’impact d’une donnée qui transite sur le réseau.

Nous pouvons retenir comme première approche sur le poste « client » ces deux indicateurs mesurables que sont la consommation d’énergie et la mémoire utilisée.

La consommation d’énergie est une métrique qui se projette bien sur les indicateurs environnementaux avec pour avantage de consolider les consommations liées au traitement, à la connectivité extérieure et à l’affichage.

Pour compléter cet indicateur, nous pouvons y adjoindre la mémoire utilisée qui consomme autant d’énergie qu’elle est utilisée. Elle peut devenir un facteur limitant du poste utilisateur, l’obligeant à upgrader ou changer son poste si la mémoire est surutilisée.

Par ailleurs, la performance d’usage est un élément clé dans la quote-part que prend le service dans l’impact global du matériel.

Nous faisons le même constat côté serveur pour l’énergie et la mémoire. On peut se contenter de la consommation de CPU (Central Processing Unit, unité qui mesure le nombre d’informations traitées chaque seconde) en pourcentage de la capacité totale utilisée pour projeter l’énergie car cela est moins complexe. En l’absence de ces données, le nombre de requêtes envoyées vers les serveurs et le volume de données qui transitent par les serveurs peuvent favoriser la sobriété sans en mesurer son efficacité.

Sur le réseau, les éléments actifs tels que switch et routeurs vont consommer la même énergie quel que soit le trafic. Nous serons aussi attentifs au volume de données qui transitent pour éviter d’engorger les réseaux et d’upgrader tout ce matériel de transport de la donnée en raison de l’impact de son renouvellement. En effet, une majeure partie de l’impact d’un service numérique se situe dans la fabrication du matériel.

Mais alors comment définir le niveau de sobriété d’un service numérique et répondre à cette exigence ?

Sur ces indicateurs de résultats, il faut se fixer des seuils qui répondent à un objectif ambitieux et mesurable. Nous pouvons « benchmarker » des services ressemblants ou des domaines connexes sur les indicateurs définis pour définir ces valeurs. Afin de vérifier les résultats, il est primordial de fixer le contexte ou l’environnement dans lequel nous allons tester. Par exemple, sur un mobile de moyenne gamme accédant par un réseau Wifi, mon parcours fonctionnel utilisateur ne doit pas consommer plus de X ressources sur le réseau et sur le serveur.

Comment vérifier cette exigence non-fonctionnelle ?

Deux éléments sont importants. D’une part, la mise en place d’un environnement isolé et représentatif de la cible de production du service numérique nous permet d’éviter toute ambiguïté sur la qualité de la mesure. D’autre part, le fait de reproduire cette mesure plusieurs fois permet d’écarter tout risque de parasitage.

Il existe aujourd’hui peu de repères sur les indicateurs de sobriété numérique et l’atteinte d’un résultat. Des lois vont prochainement définir des objectifs de sobriété pour les services numériques publics. Un groupe de travail AfnorSpec a été lancé le 7 juillet 2021 pour définir la sobriété numérique, ses indicateurs, ses modalités de mesures et les résultats à obtenir.

Sans attendre ce référentiel, des normes et des labels, il s’avère possible de piloter cette exigence non-fonctionnelle en la quantifiant tout au long du projet par du test en continu pour la maîtriser et pour essayer de la réduire. De premières initiatives de labels internes voient le jour pour encourager la sobriété numérique et récompenser les projets vertueux. Nul doute que ce sujet de sobriété numérique deviendra de plus en plus présent dans les exigences et de plus en plus testé sur les livrables numériques.

Il a y donc matière à alimenter les cahiers des charges et de tests et répondre aux enjeux environnementaux des organisations publiques !