Software muss selbst so gestaltet werden, dass sie die Umwelt schont
Die Themen Green IT und Green Coding sind in aller Munde. Es geht hauptsächlich darum, die Nutzung von Informations- und Kommunikationstechnik umwelt- und ressourcenschonen zu gestalten und das über den gesamten Lebenszyklus hinweg durchzuhalten. Experten sind sich sicher, dass es auch beim Entwickeln bzw. Programmieren von Software ein großes Einsparpotenzial gibt.
In diesem Beitrag wollen wir ein paar Anregungen geben, auf was Softwareentwickler achten sollen, um „grüner“ zu werden.

  • Grüner Aufbau: Es geht um die Softwarearchitektur und um die Erkennung der Potenziale bei dem Aufbau von Software. Dabei soll der gesamte Lebenszyklus einbezogen und Software als großes Ganzes betrachtet werden. Was soll man bei dem Aufbau berücksichtigen? Wer sind die Nutzer? Wird Software von menschlichen Nutzern oder von automatisierten Systemen verwendet? Wie viele Nutzer werden erwartet? Um die Software möglichst zielgerecht zu gestalten, lohnt sich ein Aufbau nach modularen Prinzipien. In diesem Fall können einzelne Module und Microservices bei geringer Nachfrage heruntergefahren werden. Eine geringere Systemlast führt zu einem verringerten Stromverbrauch. Aktionen, welche nicht dringend sind, können auf einem späteren Zeitpunkt verschoben werden, wenn zum Beispiel „grüne Energie“ zur Verfügung steht.
  • Grüne Logik: Die Logik des Programmcodes soll zu einer guten ökologischen Bilanz beitragen. Verwenden Sie Algorithmen, welche die Berechnungen schnell ausführen. Lohnt es sich ein ganzes Framework mit einem großen Speicherbedarf in das Projekt aufzunehmen, wenn man aus diesem nur einige wenige Funktionen benötigt? Vielleicht ist die Eigenimplementierung bzw. der Einsatz einer schlanken Bibliothek die „grünere Lösung“, da deutlich ressourcenschonender.
  • Grüne Methoden: Durch die Auswahl der Methoden, kann man die Effizienz der Softwareentwicklung steigern. Agile Vorgehensweisen und Lean Methoden haben sich dabei als effektiv erwiesen. Beispiel: Je früher die Auswirkungen auf den Energieverbrauch erkannt werden, desto schneller können die Entscheidungen modifiziert werden bzw. „grüner“ gestaltet werden.
  • Grüne Infrastruktur: Die Auswahl der passenden Infrastruktur bzw. die verwendeten Plattformen für die Ausführung des Codes sind mindestens genauso wichtig wie der Quellcode selbst. Es soll darauf geachtet werden, dass die Infrastruktur entsprechend nachhaltig mit den Ressourcen umgeht. Weniger gut ist es, wenn die Systeme zu großzügig geplant werden bzw. die Anzahl der Nutzer überschätzt wird. Ein Beispiel: Ein Server, der nur zur Hälfte ausgelastet ist, kann nicht als ressourcenschonend angesehen werden. Automatisch skalierende Systeme – auch nach unten! – sind der bessere Ansatz.

Links:

https://www.bmuv.de/themen/nachhaltigkeit-digitalisierung/konsum-und-produkte/produktbereiche/green-it
https://green-it.baden-wuerttemberg.de/
https://www.umweltbundesamt.de/themen/wirtschaft-konsum/gruene-informationstechnik-green-it