+49 911 225060 info@novartum.com

Green Coding in Unternehmen einsetzen

Green Coding

Warum Unternehmen nachhaltige und sichere Software einsetzen sollten

Der Begriff Nachhaltigkeit ist eng mit dem Thema Umweltschutz und Ressourcen-knappheit verknüpft. Aber auch Softwarelösungen können nachhaltig entwickelt werden, um für einen langen und sicheren Einsatz im Unternehmen zu sorgen. Das spart den Unternehmen wiederum Ressourcen, Zeit und Geld. Welche teilweise einfachen Möglichkeiten der Umsetzung es gibt, erfahren Sie in unserem Blogartikel.

Was ist Green Coding?

Eine nachhaltige, energiesparende und umweltfreundliche Software-Entwicklung wird als Green Coding bezeichnet. Zentrale Handlungsfelder in diesem Rahmen sind die Bereiche der Software-Architektur, der einzelnen Software-Komponenten sowie der Betriebsplattformen für den Code.

Digitale Technologien können einen Großteil dazu beitragen, dass Deutschland bis zum Jahr 2030 seine Klimaziele erreicht. Wie die im Auftrag des Digitalverbands Bit-kom erstellte Studie „Klimaeffekte der Digitalisierung“ zeigt, können die CO2-Emissionen in Deutschland durch den gezielten und beschleunigten Einsatz digitaler Lösungen in den kommenden zehn Jahren um bis zu 152 Megatonnen CO2 verringert werden.
Das entspricht rund einem Fünftel der heutigen CO2-Emissionen. Einsparungen lassen sich unter anderem durch die Automatisierung von Produktionsanlagen, smarte Verkehrssteuerung und Logistik oder Online-Banking erzielen.

Green Coding zielt in diesem Kontext darauf ab, die Software selbst effizienter zu gestalten, um den Verbrauch von Strom und damit auch CO2-Emissionen zu reduzieren. Dies erfordert jedoch eine darauf abgestimmte Gestaltung der gesamten Unterneh-mensarchitektur, um den ökologischen Fußabdruck der Organisation zu reduzieren. Ei-nen wesentlichen Beitrag hierzu leistet der Betrieb von Software in grünen Clouds. Ökologischen Prinzipien entsprechen Rechenzentren und Datenverarbeitung vor allem dann, wenn es möglich ist, sie vollständig in die Cloud zu verlagern. Im Vergleich zu firmeneigenen Rechenzentren sind cloudbasierte Server um bis zu 93 Prozent energie-effizienter und um bis zu 98 Prozent CO2-effizienter.

Priorisierung von Green Coding

Netflix beispielsweise gibt an, dass eine Stunde Video-Streaming pro Nutzer einen CO2-Ausstoß von 100 Gramm erzeugt – wer den Dienst tagtäglich für zwei Stunden nutzt, erzeugt damit jährliche CO2-Emissionen in Höhe von 73 Kilogramm. Diese Summe muss natürlich auf Millionen Nutzer hochgerechnet werden. Wenn ein Netflix-Entwickler in der Lage wäre, den CO2-Ausstoß pro Nutzerstunde von 100 Gramm auf 97 oder 95 Prozent zu reduzieren, würde hieraus weltweit eine Emissionsreduktion von sehr großem Umfang erzielt werden.

Ein solches Szenario lässt sich auch auf die Entwicklung und Nutzung von Unternehmenssoftware übertragen. Damit Green Coding tatsächlich klimarelevant wird, ist es unternehmensweit als nichtfunktionale Anforderung (NFR – non-functional requirement) mit hoher Priorität zu definieren. Hieraus können jeweils konkrete Detailanforderungen sowie Best Practices für Entwickler und IT-Architekten abgeleitet werden. Zu einem gemeinsamen Verständnis von Green Coding tragen Schulungsprogramme für alle betei-ligten Personen bei, die sich idealerweise an konkreten Praxisbeispielen orientieren.

Die Priorisierung von Green Coding kann einer einfachen Regel folgen: Im Fokus stehen dabei jeweils die firmeneigene Software mit dem höchsten potenziellen Energieverbrauch. Die Anzahl der realen oder potenziellen parallelen Nutzer ist für entsprechende Projekte das entscheidende Auswahlkriterium.

Die Optimierung beginnt immer mit der Messung des aktuellen Stromverbrauchs. Im Hinblick auf Softwareprojekte gehört hierzu auch, energieintensive Anforderungen wie hochdynamische Inhalte oder die Datenverarbeitung in Echtzeit kritisch zu hinterfragen, um Lastspitzen so weit wie möglich zu vermeiden. Selbstverständlich muss auch im Rahmen einer grünen Softwarenentwicklung in Absprache mit den internen oder externen Nutzern der Programme ein sinnvolles Gleichgewicht zwischen funktionalen Anforderungen und der Senkung des Energieverbrauchs gefunden werden.

Entwicklungsanforderungen im Green Coding

Netflix beispielsweise gibt an, dass eine Stunde Video-Streaming pro Nutzer einen CO2-Ausstoß von 100 Gramm erzeugt – wer den Dienst tagtäglich für zwei Stunden nutzt, erzeugt damit jährliche CO2-Emissionen in Höhe von 73 Kilogramm. Diese Summe muss natürlich auf Millionen Nutzer hochgerechnet werden. Wenn ein Netflix-Entwickler in der Lage wäre, den CO2-Ausstoß pro Nutzerstunde von 100 Gramm auf 97 oder 95 Prozent zu reduzieren, würde hieraus weltweit eine Emissionsreduktion von sehr großem Umfang erzielt werden.

Effizienter Code mit optimalen Algorithmen

Software beruht grundsätzlich auf mathematischen Algorithmen. Der wichtigste Optimierungsansatz im Green Coding besteht darin, den für die Einsparung von Energie und die Reduktion von CO2-Emissionen am besten geeigneten Algorithmus zu entwickeln und praktisch anzuwenden. Im ersten Schritt sollten Soft-wareentwickler prüfen, ob vorhandene Algorithmen diese Aufgabe erfüllen oder sie mit dieser Zielstellung weiterentwickelt werden können.

Vermeidung unnötiger Round-Trips

Bei der Vermeidung unnötiger Round-Trips geht es darum, die Zahl der Server-anfragen auf ein funktional erforderliches Mindestmaß zu reduzieren. Für jede Anfrage sollte im Rahmen von Green Coding daher abgewogen werden, ob sie tatsächlich nötig ist.

Caching

Durch das Zusammenfassen von Serveranfragen und Zwischenspeicherungen von Anfragen auf dem Client trägt effizientes Caching in hohem Maße dazu bei, unnötige Round-Trips innerhalb des Netzwerks sowie teure und energieintensive Zugriffe auf Festplatten oder Datenbanken zu vermeiden. Caches, die für häufige Anfragen eingerichtet werden, senken den Energieverbrauch von Software. Gleichzeitig optimieren sie ihre Performance.

Optimiertes Datenvolumen

Zur Einsparung von Ressourcen trägt auch die Optimierung des Datenvolumens bei. Die verschiedenen Dateiformate sind in unterschiedlichem Umfang datenintensiv. CSV verbraucht weniger Ressourcen als Excel, YAML oder JSON erzeugen ein geringes Datenvolumen als XML. Auch die Wahl der API kann erheblichen Einfluss auf die CO2-Emissionen haben.

Komprimierte Netzwerkkommunikation

Ebenso spart das Komprimieren von Daten Bandbreite, Strom und Übertragungskosten. Bei der Übertragung von Bildern ist im Green Coding neben der Komprimierung auch der Verzicht auf verlustbehaftete Formate wie JPEG, AAC oder AV1 von Bedeutung.

Datenbankindizes

Indizes auf Tabellen und folglich auch auf Datenbankeinträge gehören zu den Standards einer zeitgemäßen IT-Architektur. In der Praxis wird jedoch noch häufig Software angewendet, die auf die Indizierung von Datenzugriffen verzichtet. Abhängig von den genutzten Datenmengen steigen beim Verzicht auf Datenbankindizes die Zugriffszeit sowie die CPU- und IO-Belastung. Hieraus resultiert ein hoher Energieverbrauch mit entsprechenden Konsequenzen für den Ausstoß von CO2-Emissionen.

Cloud Computing

Im Fokus einer optimierten Ressourcennutzung steht die Minimierung von Leerlaufzeiten. Ein Server mit ungenutzten Kapazitäten vernichtet Kapital und Energie. Cloud-Computing kann große Energieeinsparungen bewirken. Public-Cloud-Systeme folgen einem hochgradig modularen Aufbau, der eine präzise Steuerung der Auslastung unterstützt. AWS, die Google Cloud oder Microsoft Azure erreichen eine Standardauslastung von rund 65 Prozent. Zum Vergleich: Stationäre Rechenzentren sind meist nur zu zwölf bis 18 Prozent ausgelastet.

Performance Engineering

Performance Engineering ist ein Konzept, der Leistungsanforderungen im Rahmen eines ganzheitlichen Ansatzes als wesentlichen Bestandteil der Entwicklung neuer Softwareprodukte ansieht. Energiebezogenes Performance Engineering erfordert die Messung des Energieverbrauchs von Software während der Entwicklung und im laufenden Betrieb. Falls er zu hoch ist, müssen gegenläufige Maßnahmen ergriffen werden. Voraussetzung für seine Anwendung ist die Definition messbarer Bedingungen für konkrete Anforderungen. Dabei kann es sich um das Gesamtsystem oder einzelne Komponenten handeln. Zudem dürfen Hardware und Software im Performance Engineering nicht voneinander isoliert betrachtet werden – vielmehr müssen auch energetische Aspekte der Hardware in die Bewertung einbezogen werden.

Anwendungsbeispiele

^
Wenn die Inhalte einer HTML-Webseite von 200 Kilobyte auf 20 Kilobyte ge-senkt werden, reduziert sich die bei jedem Aufruf zu übertragende Datenmenge auf ein Zehntel. Bei einer Million Seitenaufrufen pro Jahr werden durch die Da-tenkomprimierung rund zehn Kilogramm CO2 gespart. Diese Menge entspricht in etwa der lebenslangen CO2-Absorption eines Baumes.
^
Eine Web-App, die pro Tag eine Million aufgerufen wird, ist in der Lage, jährlich 132 Kilogramm CO2 zu sparen, wenn ihr Start um eine Sekunde beschleunigt werden kann.
^
Wenn Smartphone-Displays bei Nichtbenutzung konsequent und direkt in den Dark Mode schalten würden, würde dies – ausgehend von einer geschätzten Menge von rund einer Milliarde Smartphones – zu globalen CO2-Einsparungen im Umfang von 550.000 Tonnen führen.
^
Das Training Künstlicher Intelligenzen (KI) erzeugt durch den hohen Stromver-brauch dafür derzeit astronomisch CO2-Emissionen. Aktuell befinden sich Ver-fahren in der Entwicklung, die perspektivisch zu über 99-prozentigen Energie-einsparungen bei einem solchen KI-Training führen könnten.

Fazit

CO2-Emissionen lassen sich durch Green Coding in zahlreichen verschiedenen Di-mensionen reduzieren. Wird über die Software hinaus noch grüne IT im Unternehmen verwendet, sind zusätzliche Ressourceneinsparungen möglich. Grüne IT beschreibt den Betrieb von Hardware mit ökologisch erzeugtem Strom aus erneuerbaren Ener-gien sowie einen generell energiesparenden Hardware-Einsatz. Falls Sie hierzu zum Einsatz von Green Coding und grüner IT in Ihrem Unternehmen Fragen haben, können Sie sich gerne an die Novartum Gruppe wenden.

© Parradee – stock.adobe.com (Foto-ID: 599136656)

Weitere Novartum-News

Die EU-NIS2-Richtlinie und ihre Auswirkungen auf die Cybersicherheit kritischer Sektoren

Die digitale Landschaft unterliegt einem stetigen Wandel, der nicht nur Chancen, sondern auch Risiken mit sich bringt. Die Gefahr von …

Image by Kohji Asakawa from Pixabay

Die Verantwortung des Datenschutzbeauftragten im Umgang mit KI im Unternehmen

Die Integration künstlicher Intelligenz (KI, engl. AI) in Unternehmen verspricht Innovation und Effizienzsteigerung, wirft jedoch …

Der Schlüssel zur effizienten Softwareverwaltung

In der heutigen digitalen Geschäftswelt ist die effiziente Verwaltung von Software-Ressourcen von entscheidender Bedeutung.

Freelancerkompass 2023 | Politik bremst Freelancer aus

Das Berufsprofil des Freelancers wird in Deutschland immer beliebter und befindet sich nach wie vor in einem Aufwärtstrend.

Cybersecurity: Die Trends für 2023

Die Gefahren durch Cyberattacken sind 2023 so hoch wie nie. Gründe sind u.a. Technologien, die mit künstlicher Intelligenz und Metaverse einhergehen. Was tun?

Freelancer-Umfrage | Stimmung bei Selbständigen positiv

Die Pandemie hat gezeigt, dass Freelancer selbst in den zwei Jahren kräftezehrender Pandemie nicht den Kopf in den Sand stecken.

Trends im M&A-Markt in 2023

Nach dem Rekordjahr 2021 nach und während der Corona-Pandemie ist das Geschäft mit Mergers und Acquisitions (M&A) im Jahr 2022 drastisch eingebrochen.

Spezialisten für IT-Personalvermittlung

Sie suchen bereits seit einiger Zeit vergeblich nach einer qualifizierten Fach- oder Führungskraft für Ihre Vakanz im Unternehmen? Bei Novartum sind Sie genau...

Fachberatung für Mergers & Acquisitions

Sie interessieren sich für das Thema Unternehmensnachfolge, -kauf bzw. -verkauf? Dann sind Sie bei Novartum richtig! Die Experten von Novartum unterstützen

IT-Security Experten finden

IT-Sicherheit wird in Unternehmen in jüngster Zeit großgeschrieben – zu Recht! Betrachtet man die Ereignisse, die sich aktuell in der Weltpolitik abspielen, tritt...