tarent heißt jetzt Qvest Digital AG | mehr erfahren

Was ist Green Software?​​​​​​​

Daniel Clasen
Technology Consultant
Veröffentlicht 31. Oktober 2023

In unserer digitalisierten Welt spielt Software eine zentrale Rolle in nahezu allen Lebensbereichen. Doch mit der voranschreitenden Technologie, wächst auch die Verantwortung der IT-Industrie, zur Reduzierung der CO2-Emissionen beizutragen. Im Artikel stellt Daniel das Konzept „Green Software“ vor und zeigt, warum die IT-Branche im Klimaschutz aktiver werden muss.

Das Konzept, die Ideologie und unsere Verantwortung

In unserer digitalisierten Welt spielt Software eine zentrale Rolle in nahezu allen Lebensbereichen. Doch während die Technologie immer weiter voranschreitet, wächst auch die Verantwortung der IT-Industrie, ihren Beitrag zur Reduzierung der globalen CO2-Emissionen zu leisten. In diesem Artikel stelle ich euch den Begriff und das Konzept „Green Software“ vor, erkläre die Bedeutung und zeige auf, warum die IT-Branche mehr tun muss, um ihren Anteil am Klimaschutz zu leisten.

Das Konzept

Green Software ist als Teil des übergeordneten Schlagwortes “Green IT” ein Konzept, das auf die Gestaltung und Implementierung von Softwarelösungen abzielt, die einen minimalen ökologischen Fußabdruck hinterlassen und den Energieverbrauch reduzieren. Laut des Lean ICT Report ist die IT-Branche für etwa 3,7% der globalen CO2-Emissionen verantwortlich ([1] The Shift Project, 2019). Damit liegt sie etwa auf dem Niveau des gesamten weltweiten Flugverkehrs ([2] Lee et al., 2021) oder ungefähr bei den doppelten CO2-Emissionen von Deutschland ([3] Our World in Data, 2022). Daher ist es wichtig, dass wir als Teilnehmer der IT-Branche unsere Rolle bei der Reduzierung der CO2-Emissionen ernst nehmen und uns auf die Entwicklung von nachhaltigeren Technologien konzentrieren. Doch wie gelingt das und welche Perspektiven müssen wir für eine angemessene Betrachtung einnehmen? Das Green Software Konzept lässt sich dazu grob in drei Aspekte zerlegen.

Green Software Engineering

Hierbei stehen die Messung und Kompensation des CO2-Fußabdrucks aller Mitarbeitenden, ihrer technischen Ausstattung, den genutzten Büroflächen und z. T. auch ihren Haushalten im Fokus, die direkt oder indirekt an der Softwareentwicklung beteiligt sind. Es geht darum, eine nachhaltige Unternehmenskultur zu fördern und die Verantwortung für die Umwelt in den Arbeitsalltag und die unternehmerische Denkweise zu integrieren. Dabei müssen wir uns z.B. auch frei machen von der Vorstellung, dass Mitarbeitende im Homeoffice lediglich Energie verbrauchen, die auf einem anderen Zähler gemessen wird. Zwar reduziert ein durch Remote-Arbeit induziertes geringeres Reiseaufkommen auch den CO2-Fußabdruck, jedoch kann dies nicht gegen den individuellen Energieverbrauch der einzelnen Mitarbeitenden aufgerechnet werden. Unabhängig davon, wo die Arbeit verrichtet wird. Einsparungen hinsichtlich reduzierter Gebäude-, Energie-, und Nebenkosten sollten auch eine gewisse Umlage auf die andernorts verursachten Emissionen erfahren, wenn wir als Branche unserer Verantwortung aufrichtig nachkommen möchten.

Green Software Delivery & Infrastructure

Dieser Punkt konzentriert sich auf die Messung und Kompensation des CO2-Fußabdrucks von Entwicklungs-, Test- und Staging-Umgebungen, sowie der IT-Infrastruktur, die bei der Bereitstellung von Software zum Einsatz kommt. Die Optimierung von Algorithmen und Ressourcennutzung spielt dabei eine zentrale Rolle, um den Energieverbrauch zu reduzieren. Dazu fehlen uns in der Softwareentwicklung aktuell in weiten Teilen Messwerte, denen wir vertrauen oder die wir selbst erheben. Diese Messwerte gilt es also zunächst zu erheben, um mit ihnen Erfahrungen über die Effizienz unserer Software zu erlangen. Einen ähnlichen Werdegang kann man den Messungen und der daraus resultierenden Awareness für das Thema Softwarequalität und Tests der letzten zwei Jahrzehnten ablesen. Darauf kommen wir gleich nochmal zurück.

Green Software Architecture

Die Auswahl von umweltfreundlichen (Cloud-)Umgebungen und die Gestaltung von Systemen, die Ressourcen effizient nutzen und skalieren können, sind entscheidend, um den CO2-Fußabdruck der IT-Infrastruktur zu minimieren. Einen besonderen Hebeleffekt haben dabei die angewandten Skalierungs- und Deployment-Strategien der Systeme, die wir entwerfen. So kann ein aggressives Scale-In gepaart mit einem optimistischen Scale-Out dafür sorgen, dass Ressourcennutzung und Ressourcenallokation ein besseres ökologisches Gleichgewicht finden, als es der Status Quo derzeit darstellt. Infrastructure-as-Code, beziehungsweise automatisierte Deployments von Infrastrukturen, Diensten und Anwendungen werden im Zuge der Green Software Maßnahmen noch wichtiger als zuvor. Sind wir flexibler, geübter und schneller in der Art und Weise, wie wir Software ausrollen, können wir ganze Systeme in Abhängigkeit von Last und Nutzen zwischen Regionen verschieben, die zum gegebenen Zeitpunkt mehr erneuerbare Energie produzieren. 

Die Ideologie und ihre Potentiale

Die IT-Branche und damit auch wir als Teilnehmende stehen vor der Herausforderung, unsere CO2-Emissionen zu reduzieren, während wir gleichzeitig immer leistungsfähigere Lösungen für eine wachsende Nachfrage anbieten. Dies erfordert ein Umdenken in der Branche und u.a. die Implementierung von Green Software Konzepten auf allen Ebenen. Die Berichte der Anthesis Group ([4], 2015 und [5], 2017) zeigen, dass etwa 25-30% der physischen Server weltweit komatös sind, d.h. sie verbrauchen Energie, ohne nützliche Arbeit zu verrichten. Weitere Studien gehen sogar davon aus, dass durch den Einsatz von effizienteren Skalierungsstrategien, Best Practices und Technologien Energieeinsparungen von bis zu 80% möglich sind ([6] Masanet et al., 2011). Die Potentiale sind groß, fast so groß wie der Elefant im Raum, der das Kostüm der nachfolgenden Fragestellung trägt.

Was hindert uns? 

An dieser Frage kann man sich entweder die Zähne ausbeißen, oder in traditionell-politischer Manier mit dem Finger auf Andere zeigen. Ich versuche es daher mal mit einem Vergleich zwischen Green Software und Softwarequalität, welcher auf uns selbst zeigt.

In den letzten zwei Jahrzehnten hat das Bewusstsein für Softwarequalität, Testing, Messungen von Testabdeckung und technische Schulden (Technical Debt) zugenommen. Dies ist auf verschiedene Faktoren zurückzuführen, einschließlich der voranschreitenden Digitalisierung in verschiedenen Branchen, der Notwendigkeit, schnell auf Kundenanforderungen zu reagieren und der Einführung von agilen Softwareentwicklungsmethoden. Letztlich hat auch ein hohes Lehrgeld durch Vernachlässigung wirksamer Maßnahmen dafür gesorgt, die Perspektive auf Softwarequalität in Gänze zu verändern.

Es gibt Parallelen zwischen dem aktuellen Status Quo von Green Software und dem Zustand der Softwarequalität vor 15 bis 20 Jahren. Damals waren das Bewusstsein und die Bedeutung von Softwarequalität und Testabdeckung in der Branche noch nicht weit verbreitet. In ähnlicher Weise steht Green Software heute noch am Anfang der Akzeptanz in der Softwareentwicklungsbranche. Nichtsdestotrotz lässt sich bereits jetzt erahnen, welche Priorität der Optimierung unserer Systeme zuteilwerden muss, wenn wir dieses Mal das Lehrgeld vermeiden möchten.

Die gesteigerte Bedeutung von Qualität hat das gesamte Ökosystem der Softwareentwicklung nachhaltig beeinflusst. Unternehmen und Entwicklende haben begonnen, Best Practices, Testautomatisierung, kontinuierliche Integration und kontinuierliche Bereitstellung (CI/CD) einzuführen, um regelmäßig Software von hoher Qualität zu liefern. Dies hat dazu geführt, dass Anwendungen schneller auf den Markt gebracht werden können und stellt gleichzeitig sicher, dass sie den Anforderungen der Kunden entsprechen.

Nicht zuletzt haben auch rechtliche und regulatorische Einflüsse für weitere Motivation gesorgt, Qualität und ihre Messbarkeit ernst zu nehmen. Dieser Punkt ist für die Nachhaltigkeit der digitalen Plattformen, die wir heutzutage entwickeln, noch deutlich ausbaufähig. Während Gesetze oder EU-Vorgaben, wie z.B. die DSGVO, einen massiven Beitrag geleistet haben, unser heutiges Qualitätsverständnis zu formulieren, kommen wir bislang hinsichtlich der Nachhaltigkeit unserer IT-Systeme, leider, weniger scharf und konsequent daher.

Dennoch lassen diese Entwicklungen hoffen, dass auch die Nachhaltigkeit eine ähnliche Verankerung in der Zukunft erfahren wird. Wenn wir als Unternehmen und Entwicklende die Bedeutung der Green Software Maßnahmen erkennen und beginnen entsprechend zu handeln, könnte dies dazu führen, dass Green Software ein integraler Bestandteil und zur gelebten Praxis des Softwareentwicklungsprozesses wird. Dies würde nicht nur dazu beitragen, den Energieverbrauch und die damit verbundenen CO2-Emissionen zu reduzieren, sondern auch dazu führen, dass wir als Softwareindustrie insgesamt nachhaltiger werden.

Unsere Verantwortung

Dass es dazu kommt, liegt in unseren Händen. Dort liegt die Verantwortung aber nicht erst seit gestern. Seit Jahren wissen wir, um die Dringlichkeit und die Notwendigkeit zu handeln. Das Intergovernmental Panel on Climate Change (IPCC) kommt zu dem Schluss, dass schnelle, weitreichende und beispiellose Veränderungen in allen Aspekten der Gesellschaft erforderlich sind, um die Erwärmung auf 1,5 °C zu begrenzen ([7] IPPC, 2018). Auch die Unterschriften von 195 Nationen im Pariser Abkommen ([8] UN, 2015) sollten Beweis genug sein, um zu verstehen, dass wir handeln müssen. Ich könnte jetzt sicher noch etliche weitere Quellen anführen, aber das ändert alles nichts daran, dass das Thema nicht so richtig greifbar wird und im professionellen Aktionismus mündet. Während wir noch darauf warten, dass durch eine schärfere Gesetzgebung wirksamere Incentivierungen geschaffen werden, können wir aber selbst aktiv werden! Indem wir mittels Messbarkeit für Transparenz und Vergleichbarkeit sorgen und unsere Erfahrungen hinsichtlich der Effizienzoptimierung ausbauen, schaffen wir Bewusstsein für das Thema und die Metriken, die aktuell noch vor uns verborgen liegen. Effizienz ist doch letztlich auch ein Thema, mit dem wir die eher kapitalistisch gestimmten Entscheider begeistern können.

Im nächsten Teil dieser Serie schauen wir uns gemeinsam einen möglichen Fahrplan für das konkrete Handeln an. Bleibt also dran und seid gespannt!

Noch ein bisschen mehr Input und Inspiration gibt es von meinen lieben Kollegen Susanne und Florian in ihrem neusten Talk zu #GreenSoftware. So, genug Werbung – vielen Dank fürs Lesen und bis zum nächsten Mal!

Anmerkung: vielleicht etwas verwirrend, aber der Talk wurde vor unserer Umbenennung zu Qvest Digital gehalten. Früher hießen wir tarent solutions.

Quellen:

[1] The Shift Project. Lean ICT: Towards digital sobriety. 2019. S. 4 Link
[2] D.S. Lee, D.W. Fahey, A. Skowron, M.R. Allen, U. Burkhardt, Q. Chen, S.J. Doherty, S. Freeman, P.M. Forster, J. Fuglestvedt, A. Gettelman, R.R. De León, L.L. Lim, M.T. Lund, R.J. Millar, B. Owen, J.E. Penner, G. Pitari, M.J. Prather, R. Sausen, L.J. Wilcox (2021). The contribution of global aviation to anthropogenic climate forcing for 2000 to 2018. Link
[3] Our World in Data. Based on the Global Carbon Project (2022). Link
[4] Anthesis Group. (2015). Unused servers survey results. Link
[5] Anthesis Group. (2017). ZOMBIE/COMATOSE SERVERS REDUX. Link
[6] E. R. Masanet, R. E. Brown, A. Shehabi, J. G. Koomey and B. Nordman. Estimating the Energy Use and Efficiency Potential of U.S. Data Centers. 2011. Link
[7] Intergovernmental Panel on Climate Change (2018). SPECIAL REPORT – Global Warming of 1.5 ºC. Link
[8] United Nations (2015). The Paris Agreement. Link