Comment faire du développement de logiciels durable
La durabilité des logiciels inclut l’informatique à des fins environnementales et l’utilisation appropriée des ressources. Selon Coral Calero, les ingénieurs logiciels ont besoin d’une vision globale des logiciels et doivent être conscients de l’impact environnemental des logiciels. Plusieurs outils et frameworks sont disponibles pour permettre aux ingénieurs logiciels de réaliser un développement logiciel durable.
Coral Calero a prononcé un discours sur la durabilité des logiciels lors de XP 2023.
L’informatique verte consiste à définir la relation entre les TIC et l’environnement, a déclaré Calero. Il comprend « Green BY », dans lequel l’informatique est utilisée à des fins environnementales (un régulateur automatique de température, par exemple), et « Green IN », dans lequel l’objectif est de rendre l’informatique elle-même verte, c’est-à-dire d’utiliser les ressources de manière appropriée (par exemple pour utiliser un langage de programmation qui produit des applications efficaces).
Lorsque nous développons un système avec des objectifs environnementaux, notre solution sera efficace avec les ressources qu’elle utilise. Travailler sur l’utilisation efficace des ressources informatiques (Green IN) devrait être une priorité, a soutenu Calero. Des études estiment que d’ici 2030, les technologies de l’information et de la communication nécessiteront 20 % de la consommation énergétique mondiale, a-t-elle ajouté.
Calero a mentionné que les logiciels sont actuellement dans une révolution grâce à l’intelligence artificielle, largement intégrée dans de nouveaux systèmes logiciels qui devraient se développer :
Les algorithmes d’intelligence artificielle, selon la manière dont ils sont fabriqués et utilisés, sont de gros consommateurs d’énergie. Dans certains cas, une augmentation de 0,02 % de la précision signifie une consommation deux fois supérieure.
Nous sommes dans « l’ère intelligente » et il est nécessaire d’aller plus loin et d’exiger des « logiciels intelligents », qui incluent des caractéristiques de qualité, doivent être des logiciels réfléchis et intelligents et doivent être durables, a déclaré Calero.
Les ingénieurs logiciels ont besoin d’une vision globale des logiciels et doivent être conscients de l’impact futur des solutions qu’ils développent, a soutenu Calero. Il s’agit d’une perspective ambitieuse, qui prend en compte non seulement le temps et le budget, mais également la durabilité, l’efficacité énergétique et l’utilisation optimale des ressources. Ils doivent être formés et dotés de mécanismes leur permettant de prendre en compte ces aspects, a-t-elle expliqué :
Par exemple, GAISSALabel, un outil d’étiquetage énergétique des modèles ML. Ou encore Blue Angel, une initiative développée en Allemagne visant à définir un label environnemental pour les produits logiciels économes en ressources et en énergie, axé sur les impacts environnementaux résultant de l’exploitation d’un produit logiciel.
Dans notre équipe, nous fournissons des lignes directrices aux développeurs de logiciels sur les langages de programmation, les modèles de conception de logiciels ou la conception de schémas de bases de données relationnelles. Toutes ces lignes directrices sont rendues publiques à travers nos publications sur Green Team Alarcos.
La Green Software Foundation construit un écosystème de personnes, de normes, d’outils et de meilleures pratiques pour créer des logiciels verts. Ils fournissent également des lignes directrices sur la façon de mesurer l’empreinte carbone des logiciels, a mentionné Calero.
InfoQ a interviewé Coral Calero sur la durabilité des logiciels.
InfoQ : Quel rôle jouent les logiciels dans l’informatique Green IN ?
Corail Calero: Lorsqu’on se concentre sur l’informatique Green IN, un aspect à considérer est de savoir si l’effort est fait dans le composant matériel (matériel Green IN) ou dans le logiciel (logiciel Green IN).
Il existe une perception selon laquelle c’est le matériel qui pollue ; après tout, c’est le matériel qui consomme de l’énergie. Et pourtant, nous devons penser que le matériel est conçu pour exécuter des logiciels. Par conséquent, la consommation d’énergie dépendra beaucoup du logiciel qui y est exécuté et de la manière dont ce logiciel est implémenté.
Alors que le matériel Green IN est un sujet mature, le logiciel Green IN ne fait que commencer. Et il est très important qu’elle continue de croître car, comme l’a dit Bjarne Stroustrup, le créateur du langage de programmation C++, notre civilisation dépend autant des logiciels que de l’eau.
InfoQ : Que peuvent faire les entreprises pour aider leurs ingénieurs logiciels à réduire l’impact de leurs logiciels sur l’environnement ?
Caléro: Leur fournir des processus métiers bien définis, des lignes directrices et des recommandations sur la manière d’intégrer la consommation d’énergie dans les développements, est essentiel pour que les ingénieurs puissent mener à bien leur travail en tenant compte de l’impact des systèmes à développer.
Si cela fait partie de leurs connaissances et qu’ils l’intègrent dans leur travail, ils augmenteront et renforceront progressivement l’ensemble des connaissances nécessaires pour intégrer les aspects de durabilité et de logiciels verts comme autre élément de leur travail.
C’est la nouvelle transformation numérique, mais c’est désormais une transformation numérique verte et durable. Et en tant que transformation numérique, elle doit être appliquée et affecter les produits, les services développés et les modèles économiques, mais aussi la relation avec le client. Et tout cela ne peut être réalisé que si l’on suppose que cela implique un changement culturel au sein des entreprises.