<!-- Demander si je peux rôder mon cours sur l'écoconception Java https://hal.science/hal-03009741/document > Un service numérique, c’est : > • de l’information : les données > • des traitements : algorithme, filtrage, simulation > • des échanges d'informations > • des interfaces utilisateurs > Un service numérique repose sur : > • des infrastructures logicielles : applications, outils, bibliothèques, protocoles > • des infrastructures matérielles : serveurs, équipements réseau, terminaux, capteurs > • des données : la matière qui sera traitée par le matériel et le logiciel > • des personnes : développeurs, administrateurssystèmes et réseaux, chefs de projet, chercheurs --> ## Questionner le besoin - A-t-on vraiment besoin de le faire ? - A-t-on vraiment besoin de le faire en code ? - A-t-on vraiment besoin de le faire en code standardisé (non-jetable) ? - Parfois une intervention sur la base de données est suffisante > [!danger] Antipattern : Bloatware > https://permacomputing.net/bloat/ > [!info] Jevons's paradox > “the phenomenon where the increase of efficiency in the use of a resource leads to more use of the resource” > >https://permacomputing.net/Jevons_paradox/ > >Voir aussi : effet rebond > [!info] Wirth's law > “Software is getting slower more rapidly than hardware is getting faster.” > Niklaus Wirth — > https://permacomputing.net/Wirth__39__s_law/ > [!info] Anecdote > Lors d'une précédente mission, 8 personnes en réunion. > - Nous devons prendre en compte le cas X > - Est-ce que c'est important ? > - Oui > - Ca devrait prendre 2 semaines à développer, et ça complexifie considérablement le produit > - A bon ? > - Aujourd'hui, combien est-ce que ça occupe de personnes à le traiter et combien de temps ça leur prend ? > - 1 personne, 2 journées par an > - Est-ce que vous vous rendez compte que en 1h de discussions, avec nos rémunérations, nous avons déjà coûté plus de la moitié de ce que ça coûte annuellement ? Sans compter le coût de maintenance et les bugs potentiels liés à l'ajout de complexité. > - Ah, oui > - Pourrait-on imaginer, une solution moins technologique. Quand cette personne fera le traitement cette année. Assurons-nous qu'elle est accompagnée de 2 autres personnes qui apprendront en même temps. Et consignons le dans une prodécure écrite. https://www.novethic.fr/lexique/detail/economie-de-fonctionnalite.html ## Écoconception et performance Attention à l'[[Optimisation prématurée|optimisation prématurée]]. - Mesurer - Trouver un hotspot - Améliorer - Mesurer ## Des approches alternatives à l'ingénieurie logicielle ![[image-43.png]] https://permacomputing.net/ ![[image-44.png|320]] ![[image-45.png|320]] ![[image-46.png|320]] ![[image-47.png|320]] https://100r.co/site/permacomputing_101.html ## À suivre TP : https://github.com/coda-school/java_ecoconception [[8.2 - Amélioration de la performance en Java]]