Accueil Nos publications Blog La chaîne de valeur de la conception durable

La chaîne de valeur de la conception durable

article-La-chaîne-de-valeur-de-la-conception-durable

Sommaire

  1. Introduction
  2. Identification des besoins
  3. Conception fonctionnelle
  4. Spécifications techniques
  5. Conception architecturale
  6. Conclusion

Introduction

Après avoir exploré les enjeux et opportunités de la durabilité, il est essentiel de structurer notre démarche de manière méthodique pour maximiser les bénéfices écologiques et économiques. La prochaine étape consiste à analyser la chaîne de valeur de la conception, en identifiant les leviers et les outils à mobiliser à chaque niveau, ainsi que les acteurs impliqués. Cette approche systémique nous permettra de mieux intégrer les principes de durabilité à chaque phase de la conception, tout en optimisant l’impact global de nos pratiques sur l’environnement.


Pour mieux comprendre comment intégrer la durabilité à chaque phase, voici les différentes étapes de notre chaîne de conception :

1. Identification des besoins

Cette première phase consiste à comprendre les besoins des utilisateurs, les exigences fonctionnelles et les contraintes environnementales. L’objectif est de poser des bases solides qui orienteront toutes les étapes suivantes. En intégrant dès le départ des objectifs de durabilité, nous nous assurons que chaque décision prise répond aux enjeux écologiques.

2. Conception fonctionnelle & spécifications techniques :

Il s’agit ici de définir les fonctions que le produit ou service doit remplir tout en évaluant leur impact écologique. Une conception fonctionnelle et des spécifications techniques bien réalisées permettent d’optimiser les ressources nécessaires pour répondre aux besoins identifiés.

3. Conception architecturale :

Durant cette phase, nous réfléchissons à la structure globale du produit, à la fois sur le plan matériel et logiciel.
L’éco-conception est essentielle à cette étape pour minimiser l’impact environnemental à travers des choix techniques pertinents.

4. Développement :

Le développement consiste à concrétiser techniquement les éléments définis lors des phases précédentes.
Chaque étape de la chaîne de valeur constitue une opportunité stratégique pour intégrer des pratiques de durabilité qui, non seulement atténuent l’empreinte écologique de nos processus, mais renforcent également l’efficience économique globale. En adoptant cette approche holistique, nous nous assurons que nos
produits transcendent leur simple utilité pour devenir des solutions durables, pleinement conformes aux exigences de responsabilité environnementale et sociétale.

Identification des besoins

  • Intervenants :

Chefs de projet, analystes métier, représentants des utilisateurs finaux.

  • Objectifs écologiques et méthodologie :

Durant cette phase, deux axes d’intervention se présentent aux parties prenantes. Tout d’abord définir les fonctionnalités vraiment nécessaires et porteuses de plus-value. Il est important de comprendre qu’une fonctionnalité éco-responsable est d’abord une fonctionnalité qui n’a pas été implémentée, d’où l’importance
d’éliminer toutes les fonctionnalités superflues qui n’apportent pas de réelle valeur ajoutée. Une fois les fonctionnalités nécessaires définies, nous les analysons sous l’angle écologique pour minimiser leur
impact environnemental :

Évaluation des impacts directs via une série de questions clés (liste non-exhaustive) :

  • La fonctionnalité nécessite-t-elle une connectivité permanente, augmentant ainsi la consommation d’énergie des appareils des utilisateurs ?
    Exemple : Une application de messagerie instantanée qui exige une connexion continue par rapport à une version qui synchronise les messages périodiquement.
  • La fonctionnalité ou le produit va-t-il inciter l’utilisateur à une consommation accrue d’énergie ?
    Exemple : Netflix a remplacé les DVD et les VHS, mais a entraîné une surconsommation de flux vidéo, bien plus émettrice de GES.
  • La fonctionnalité nécessite-t-elle une infrastructure matérielle supplémentaire qui pourrait augmenter la consommation de ressources ?
    Exemple : Prendre en compte le coût énergétique de l’entraînement d’une IA en interne avant de la mettre au service d’un client.
  • Est-il possible d’optimiser certaines fonctionnalités pour réduire la consommation de données et la charge sur les serveurs ?
    Exemple : Mettre en cache des données localement sur l’appareil de l’utilisateur afin de limiter la consommation de bande passante et de réduire la charge sur les serveurs.

Évaluation des impacts indirects :

Dans cette partie, je conseille l’utilisation de l’arbre de conséquences pour évaluer les effets indirects d’un produit ou d’une fonctionnalité. À l’aide d’un schéma (illustré ci-dessous), nous classifions les effets indirects par ordre : second, troisième, etc. Plus un effet est éloigné dans la chaîne, plus sa prévision est difficile. Il faut aussi accepter de s’arrêter à un moment donné car l’arbre ne peut être infini. Pour chaque effet, nous établissons son bilan d’émission de gaz à effet de serre, indiquant une augmentation (+) ou une diminution (–) des émissions.

Frame 16
Arbre conséquentiel standard d’un service de commerce en ligne.
Source : Gauthier Roussilhe

Quelques questions peuvent vous orienter vers des réflexions approfondies :

  • La fonctionnalité mènera-t-elle indirectement l’utilisateur à des applications plus gourmandes ?
    Exemple : Un lien vers Tiktok où les flux de vidéos sont automatiquement déclenchés.
  • La fonctionnalité incitera-t-elle l’utilisateur à consommer d’autres produits plus énergivores ?
    Exemple : Une application de vente en ligne qui livre à domicile. Si l’utilisateur se déplace moins, il aura tendance à commander plus de marchandises.

Il est également intéressant de surveiller et de comprendre l’Effet rebond ou le « Paradoxe de Jevons » (Phénomène économique qui se produit lorsque l’amélioration de l’efficacité dans l’utilisation d’une ressource entraîne une augmentation de la consommation de cette ressource, plutôt que la diminution attendue).

Ce phénomène se produit lorsque l’amélioration de l’efficacité énergétique entraîne une augmentation disproportionnée de la consommation, due à l’élargissement des usages. Par exemple, bien que la 5G soit plus économe en termes de Go transmis, elle induit une augmentation massive de l’utilisation des données conduisant à un accroissement de la consommation d’énergie.


Les Datacenters, gourmands en électricité et en eau, représentent quant à eux près de 3% de la consommation électrique mondiale, un chiffre attendu à 4% d’ici 2030. C’est pourquoi, les gouvernements leur portent une attention particulière en intensifiant la surveillance et la mise en place de réglementations spécifiques. Ces éléments augmentent ainsi significativement le nombre d’exigences non fonctionnelles que les opérateurs doivent implémenter pour se conformer à la législation.


Face à ces défis, la conception d’un logiciel ne peut plus se limiter à sa seule fonctionnalité. L’impact environnemental des infrastructures et des usages numériques impose d’intégrer des critères de sobriété dès les premières étapes du projet.

C’est dans cette optique que la conception fonctionnelle intervient : elle
permet de traduire les besoins métier en spécifications précises tout en intégrant des bonnes pratiques qui limiteront la consommation de ressources
.

Conception fonctionnelle

La conception fonctionnelle vient donc compléter l’identification des besoins ; une phase clé durant laquelle les développeurs, en étroite collaboration avec les équipes métiers, définissent les spécifications détaillées.

Intervenants : Développeurs, analystes métiers, chefs de projet.

    Objectif : Réduire au maximum la consommation de ressources et l’empreinte carbone, tout en intégrant des pratiques écologiques dès la conception.

      Quelques bonnes pratiques :

        Pour aborder une approche écologique dans la phase de la conception fonctionnelle, il est important de s’armer de plusieurs bonnes pratiques (liste non exhaustive) :

        • Privilégier le texte aux images et aux vidéos : Lors de la conception, si une image est nécessaire, optez pour des formats compressés et optimisés. Les vidéos, quant à elles, devraient être utilisées de manière judicieuse car elles représentent la forme de contenu la plus lourde en termes de consommation
          de données et d’énergie.
        • Charger les ressources uniquement lorsqu’elles sont nécessaires : Par exemple, dans les applications Web, les images ne seront affichées que lorsqu’elles sont visibles à l’écran.
        • Optimiser les ressources multimédias : Réduire la taille des images, des vidéos et autres ressources multimédias. Utilisez des outils comme TinyPNG pour les images ou HandBrake pour les vidéos.
        • Utiliser de la pagination : Utilisez la pagination pour renvoyer les données en plus petits lots.

        Cette phase de conception fonctionnelle permet d’assurer que les bases du projet sont écologiquement responsables. Cependant, pour garantir une efficacité maximale sur le long terme, il est essentiel de se pencher sur les spécifications techniques qui guideront le développement et l’implémentation concrète des
        solutions.

        Spécifications techniques

        Les spécifications techniques constituent un pont essentiel entre la conception fonctionnelle et la conception architecturale. Elles définissent les choix technologiques et les caractéristiques techniques à mettre en place pour répondre aux exigences fonctionnelles. Si les sections suivantes détaillent comment faire ces
        choix de manière éclairée, voici quelques bonnes pratiques fondamentales à considérer dès la définition des spécifications :

        Intervenants : Architectes logiciels, Tech Leads, développeurs, Ingénieurs DevOps.

        Objectif : Optimiser l’efficacité énergétique et la performance de vos applicatifs par le biais des pratiques de développement, tout en maintenant une qualité optimale des produits ou fonctionnalités développés.

          Quelques bonnes pratiques :

            Intégrer des considérations écologiques dans la définition des spécifications techniques implique quelques bonnes pratiques, par exemple (liste non exhaustive) :

            • Optimiser l’utilisation du cache : Implémentez un système de mise en cache intelligent pour réduire la charge sur les serveurs et minimiser les requêtes redondantes.
            • Utiliser des SSE : Pour les communications unidirectionnelles du serveur vers le client nécessitant des mises à jour en temps réel, privilégiez les Server-Sent Events (SSE). Cette technologie utilise un format de données textuel simple, ce qui simplifie l’encodage et le décodage des messages et réduit la quantité
              de données transmises. De plus, l’absence de nécessité de gérer des sessions ou des messages de contrôle complexes diminue la surcharge de protocole, allégeant ainsi la charge de calcul sur les serveurs.
            • Compresser côté serveur : Utilisez la compression pour réduire la taille des réponses du serveur, en particulier pour les réponses JSON ou XML volumineuses. Les middlewares comme ceux offerts par Express.js pour Node.js, ou des solutions intégrées dans Spring Boot pour Java, peuvent automatiser ce
              processus.
            • Choisir une infrastructure éco-responsable : Optez pour des solutions d’hébergement sur des serveurs alimentés par des énergies renouvelables ou choisir des data centers qui intègrent des pratiques de réduction de l’empreinte carbone (optimisation des refroidissements, utilisation de technologies éco-énergétiques).


            Une fois ces spécifications techniques définies, il est important de s’assurer que l’architecture du logiciel soit adaptée pour mettre en œuvre ces choix de manière optimale et garantir leur efficacité à grande échelle.

            Conception architecturale

            La conception architecturale est l’étape suivante, où les décisions prises à ce stade trouveront leur incarnation technique dans une architecture scalable et éco-responsable.

            Intervenants : Architectes logiciels, responsables techniques, développeurs.

              Objectif : Créer une structure de système qui supporte les exigences fonctionnelles et non fonctionnelles du logiciel tout en intégrant des pratiques de durabilité. Il s’agit de prendre des décisions éclairées sur les technologies et les approches à utiliser.

                Pour en savoir plus, découvrez la suite de notre série d’articles.

                Conclusion

                En explorant les opportunités offertes par l’éco-conception et la conformité environnementale, il est crucial de mettre en place une approche structurée et systématique pour maximiser les bénéfices écologiques et économiques. Identifier les leviers, les outils et les acteurs impliqués dans la chaîne de valeur de la conception est essentiel pour intégrer les principes de durabilité à chaque étape. Cela permet non seulement d’améliorer l’empreinte carbone, mais aussi d’optimiser l’impact environnemental global. En adoptant cette perspective, nous transformons nos produits en solutions durables, conformes aux exigences environnementales et sociétales, tout en renforçant la durabilité à long terme.

                Dans les articles suivants, nous examinerons certaines stratégies architecturales et techniques afin d’avoir des bases solides pour intégrer la durabilité tout au long de la chaîne de valeur de la conception logicielle. Toutefois, il faut reconnaître les forces et les limites de chaque méthode afin que les choix ne compromettent pas la qualité du produit. Nous examinerons ces techniques de plus prêt dans le prochain article.

                Vous souhaitez en savoir plus ? Contactez-nous !

                Aller au contenu principal