← Neueste Arbeiten
💻 Informatik

Measuring Code Level Determinants of Software Sustainability: A Systematic Literature Review

Diese systematische Literaturübersicht von 137 Studien synthetisiert auf Code-Ebene liegende Determinanten und Metriken für Software-Nachhaltigkeit, deckt eine signifikante Forschungslücke bei der Kohlenstoffmessung im Vergleich zu Energie auf und schlägt ein fundiertes Entscheidungsframework sowie handlungsleitende Richtlinien vor, um Entwickler beim Bau grünerer Software zu unterstützen.

Ursprüngliche Autoren: Zoya Mahboob, Atif Jilani, Qurrat Ul Ain

Veröffentlicht 2026-10-22
📖 5 Min. Lesezeit🧠 Tiefgang

Ursprüngliche Autoren: Zoya Mahboob, Atif Jilani, Qurrat Ul Ain

Originalarbeit lizenziert unter CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). ✨ Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen

Jedes Mal, wenn ein Softwareprogramm ausgeführt wird – vom App auf einem Smartphone bis hin zu den massiven Systemen, die globale Cloud-Dienste verwalten –, zieht es Strom aus dem Elektrizitätsnetz. Dieser Verbrauch ist nicht nur eine Frage der Kosten; er ist ein direkter Beitrag zu den Kohlenstoffemissionen, die den Planeten erwärmen. Während die Rechenzentren, in denen diese Systeme untergebracht sind, für ihren Energiebedarf bekannt sind, spielt die Software selbst – die von Entwicklern geschriebenen Codezeilen – eine verborgene, aber entscheidende Rolle dabei, wie viel Elektrizität verbraucht wird. Genau wie das Motorendesign eines Autos dessen Kraftstoffeffizienz bestimmt, entscheiden die spezifischen Entscheidungen beim Schreiben des Codes darüber, wie viel Energie ein Programm benötigt, um zu funktionieren. Einige Entscheidungen sind effizient, während andere Energie verschwenden, ohne dass der Nutzer es jemals merkt.

Jahrelang haben Forscher untersucht, wie man Software grüner machen kann, doch die Belege waren über tausende von Papieren verstreut, die oft unterschiedliche Methoden verwendeten, um dieselben Dinge zu messen. Eine neue systematische Übersichtsarbeit, die von Forschern der National University of Computer and Emerging Sciences in Pakistan veröffentlicht wurde, führt dieses fragmentierte Wissen zusammen. Durch die Analyse von 137 Peer-Review-Studien, die zwischen Ende 2015 und Anfang 2026 veröffentlicht wurden, erstellte das Team eine klare Landkarte darüber, welche Codierungsentscheidungen für die Nachhaltigkeit am wichtigsten sind. Sie fanden heraus, dass das Feld zwar schnell gewachsen ist, sich aber weitgehend auf die Messung des Energieverbrauchs konzentriert hat, was eine signifikante Lücke bei der Messung der daraus resultierenden Kohlenstoffemissionen hinterlässt, selbst während Regulierungen beginnen, eine Kohlenstoffbilanzierung zu fordern.

Die Forscher begannen damit, die gesamte vorhandene Literatur in ein strukturiertes System zu sortieren. Sie identifizierten zwei Hauptkategorien von Informationen: die spezifischen Entscheidungen, die Entwickler treffen, bekannt als Determinanten, und die Arten und Weise, wie diese Entscheidungen gemessen werden, bekannt als Impact-Metriken. Die Determinanten reichen von den breiten Themen, wie der Wahl der Programmiersprache oder des verwendeten Algorithmus, bis hin zu den granularen Details, wie etwa der Art und Weise, wie Daten im Speicher gespeichert werden oder wie Schleifen geschrieben werden. Die Metriken sind die Werkzeuge, um die Auswirkungen dieser Entscheidungen sichtbar zu machen, wobei primär gemessen wird, wie viel Energie verbraucht wird oder wie lange eine Aufgabe dauert. Das Team organisierte diese Erkenntnisse, um aufzuzeigen, wann diese Entscheidungen im Softwareentwicklungsprozess getroffen werden und wann ihre Auswirkungen tatsächlich beobachtet werden.

Einer der beeindruckendsten Befunde betrifft das schiere Ausmaß der Auswirkungen, die High-Level-Entscheidungen haben können. Die Übersicht bestätigt, dass die Wahl der Programmiersprache ein dominanter Faktor ist. Studien zeigen konsistent, dass kompilierte Sprachen, die direkt in Maschinencode übersetzt werden, bis zu zwanzigmal energieeffizienter sein können als interpretierte Sprachen, die Zeile für Zeile während der Laufzeit verarbeitet werden. Ähnlich kann auch die Wahl des Algorithmus – des mathematischen Rezepts, dem ein Programm folgt – massive Unterschiede im Energieverbrauch bewirken. Ein effizienterer Algorithmus kann den Energieverbrauch um Größenordnungen senken, ein Unterschied, der so groß ist, dass keine Menge an kleinteiliger Code-Optimierung dies jemals einholen könnte. Dennoch stellt die Übersicht fest, dass diese hochwirksamen Entscheidungen nicht die am häufigsten untersuchten Themen in der Literatur sind; Forscher haben mehr Zeit mit der Untersuchung kleinerer, weniger wirkungsvoller Details wie spezifischer Codierungsstile oder geringfügiger Optimierungen verbracht.

Die Studie kartierte auch, wann diese Entscheidungen stattfinden. Die überwiegende Mehrheit der Forschung konzentriert sich auf die Implementierungsphase, wenn der Code erstmals geschrieben wird, und auf die Laufzeitphase, wenn die Software tatsächlich ausgeführt wird. Dabei wurde jedoch eine kritische Lücke in der Testphase festgestellt. Sehr wenige Studien untersuchen, wie der Prozess des Softwaretestens oder der Testcode selbst zum Energieverschwendung beiträgt. Dies ist ein erhebliches Versäumnis, da die moderne Softwareentwicklung stark auf automatisierten Testsystemen basiert, die tausendfach am Tag laufen und potenziell mehr Energie verbrauchen als das Endprodukt selbst. Die Forscher heben hervor, dass dieser Bereich weitgehend unerforscht bleibt, was auf eine große Chance für zukünftige Verbesserungen hindeutet.

Der vielleicht dringlichste Befund bezieht sich darauf, was gemessen wird. Die Übersicht ergab, dass 131 der 137 Studien den Energieverbrauch maßen, oft unter Verwendung spezialisierter Hardware-Counter, um den Stromverbrauch bis auf den Joule genau zu verfolgen. Im Gegensatz dazu haben nur drei Studien die Kohlenstoffemissionen direkt gemessen. Dieses Ungleichgewicht ist problematisch, da sich globale Regulierungen zunehmend von der Verfolgung von Energie hin zur Verfolgung von Kohlenstoff verschieben. Die Forscher weisen darauf hin, dass diese Lücke leicht zu schließen ist. Da Kohlenstoffemissionen berechnet werden, indem der Energieverbrauch mit der Kohlenstoffintensität des lokalen Stromnetzes multipliziert wird, könnten die reichlich vorhandenen Daten über den Energieverbrauch in Kohlenstoffdaten umgewandelt werden, wenn Forscher einfach den Kontext der Stromquelle erfassen würden. Derzeit verfügt das Feld über die Energiewerte, aber es fehlt der Kohlenstoffkontext, der für das moderne Umweltreporting notwendig ist.

Um Entwicklern zu helfen, diese Erkenntnisse anzuwenden, hat das Team ein praktisches Entscheidungsframework erstellt. Es dient als Leitfaden für die Fehlersuche bei Nachhaltigkeitsproblemen. Wenn ein Softwaredienst zu teuer im Betrieb ist, legt das Framework nahe, zuerst die Programmiersprache und den Algorithmus zu prüfen, bevor man sich um kleinere Code-Anpassungen sorgt. Wenn eine mobile App den Akku leert, weist es auf spezifische Codierungsmuster hin, die bekannt dafür sind, Strom zu verschwenden. Die Richtlinien betonen, dass Entwickler die Energie direkt messen sollten, anstatt basierend darauf zu raten, wie schnell ein Programm läuft, da ein schnelleres Programm nicht immer ein effizienteres ist. Sie empfehlen zudem, explizite Energiebudgets für Softwarefunktionen festzulegen und Energieverschwendung mit derselben Ernsthaftigkeit wie einen Softwarefehler zu behandeln.

Die Übersicht kommt zu dem Schluss, dass sich das Feld des nachhaltigen Software-Engineerings ausgereift entwickelt, mit einer wachsenden internationalen Gemeinschaft und etablierten Methoden. Sie fordert jedoch eine Änderung des Fokus. Forscher werden aufgefordert, die Testphase tiefergehend zu untersuchen, die Ergebnisse zu hochwirksamen Entscheidungen wie der Sprachwahl zu replizieren und damit zu beginnen, Kohlenstoffemissionen neben Energiedaten zu berichten. Für Fachleute in der Industrie ist die Botschaft klar: Der effektivste Weg, den ökologischen Fußabdruck von Software zu reduzieren, liegt nicht in kleinen Anpassungen, sondern in grundlegenden Entscheidungen, die ganz am Anfang des Entwicklungsprozesses getroffen werden. Durch die Wahl effizienter Sprachen, Algorithmen und Datenstrukturen und durch die genaue Messung der Ergebnisse können Entwickler die Energie- und Kohlenstoffkosten der digitalen Welt signifikant senken.

Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?

Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.

Digest testen →