Green Software: Was meint das eigentlich?

Green Software

Grob können sich unter dem Begriff Green Software alle etwas vorstellen. Im Gespräch stellt sich dann aber schnell heraus, dass damit durchaus verschiedene Dinge gemeint sind. Die wesentlichen Interpretationen stelle ich im Folgenden vor.

Sustainable Software

Manche Menschen verwenden den Ausdruck Sustainable Software als Synonym zu Green Software. Nachhaltigkeit ist allerdings ein sehr umfassender Begriff, der mindestens ökologische und soziale Aspekte umfasst, oft auch noch Governance oder Ökonomie. Und selbst von den ökologischen Kriterien betreffen die meisten Software nur indirekt, nämlich über die genutzte Hardware. Diese benötigt Material, muss entsorgt werden und kann dabei Gewässer verschmutzen etc.

Im Grunde meinen die meisten, die von Sustainable Software sprechen, nicht das, was die offiziellen Definitionen von Nachhaltigkeit umfassen. Meist ist der Unterschied auch nicht so wichtig. Im Gespräch mit Nachhaltigkeitsbeauftragten von Unternehmen kann es hier aber zu erheblichen Missverständnissen kommen, weil Unternehmens-Berichte Nachhaltigkeit umfassend abbilden müssen. Deshalb ist der Begriff Sustainable Software im Grunde nicht hilfreich.

Klimafreundliche Software

Die öffentliche Diskussion über Umweltschutz konzentriert sich sehr auf das Thema Klima. Das ist auch bei Software der Fall. Auch ich halte es für sehr sinnvoll, statt allgemeiner Nachhaltigkeit oder Ökologie konkret die Klimaeffekte zu betrachten. Auch, weil man diese immer auf eine einzige Zahl umrechnen kann: den CO2-Fußabdruck. Dadurch wird der Nutzen von Green Software leichter messbar und kommunizierbar. Genauer kann man unterscheiden zwischen dem CO2-Fußabdruck des reinen Software-Betriebs, oder der gesamten Software-Nutzung. Denn die Software kann durch ihren Einsatz positive Klimawirkungen erzeugen, was manchmal als Green by IT  bezeichnet wird. Je nach Standpunkt werden solche Wirkungen mit einbezogen oder nicht. Die Green Software Foundation etwa lässt sie außen vor.

Green Coding

Beim Green Coding geht es ran an die Maschine. Wir messen den Ressourcenverbrauch und finden Wege, ihn zu senken. Dafür gibt es eine ganze Reihe von Ansatzpunkten: System-Setup, Algorithmen, Datenformate, um nur einige zu nennen. Das Community-Mitglied Green Coding hat hierzu ein eigenes Messwerkzeug entwickelt, das Green Metrics Tool.  

Green Software Design

Green Software Design ist gegenüber Green Coding weiter gefasst: Es bezieht sich auf alle Praktiken, die dazu beitragen, den CO2-Fußabdruck einer Software über deren gesamten Lebenszyklus hinweg zu senken. Einerseits werden hier also positive Effekte der Softwarenutzung mit einbezogen, die „aktiven Vorteile“ der Software (Active Green).

Zum anderen wird der gesamte Entstehungsprozess der Software betrachtet. D.h., neben dem Software-Engineering werden auch die Aufgaben der Product Owner berücksichtigt, und die Integration von Green Coding in den Entwicklungsprozess, etwa durch explizite User Stories und Erweiterung der Definition of Done (DoD).

Green Software Design wurde vom Community-Mitglied Syngenio geprägt und bildet auch das übergreifende „Dach“ der Aktivitäten der Green Software Design Community.

An den Anfang scrollen