Grünes und nachhaltiges Software Engineering führt zu grüner und nachhaltiger Software und versucht dabei selbst in seinen Herstellungs-, Unterstützungs- und Anwendungsprozessen nachhaltige Zielsetzungen zu verfolgen und deren Zielerreichungsgrad kontinuierlich zu optimieren. Bezug nehmend zu den verschiedenen Anspruchsgruppen ergeben sich passende Vorgehensmodelle:
Als mögliche Ausprägung eines Vorgehensmodells für die Kategorie Entwickeln, wird eine generische Erweiterung für Softwareentwicklungsprozesse vorgeschlagen, deren Ziel es ist die Entwicklung grüner und nachhaltiger Software im Softwareentwicklungsprozess systematisch zu organisieren und für beliebige Prozesse adaptiert werden zu können.
Das Software Engineering kennt viele verschiedene systematische Ansätze, die eine methodische wohlorganisierte Entwicklung von Softwareprodukten ermöglichen. Typische Phasen in diesen Vorgehensmodellen sind die Anforderungsanalyse, der Entwurf, die Implementierung, das Testen, der Betrieb und die Wartung. Auf den ersten Blick stellen sich die verschiedenen Prozessmodelle sehr unterschiedlich dar. Nach einer genaueren Analyse kann jedoch festgestellt werden, dass die von den Akteuren ausgeführten Aktivitäten doch sehr ähnlich sind, auch wenn die Benennungen und die zeitliche Sequenzierung differieren. Für die folgende Darstellung wird ein generalisiertes Modell, basierend auf dem Wasserfallmodell (Royce 1970) verwendet, ohne jedoch die Restriktionen und Limitierungen des Wasserfallmodells (z. B. strikte sequenzielle Ausführung der Phasen) zu übernehmen.
Für diesen Überblick wird einfachheitshalber eine nebenläufige überlappende Ausführung der Entwicklungsphasen angenommen ohne Iterationen oder Inkremente.
Der Beschaffungsprozess von Software kann in verschiedene Schritte unterteilt werden, beginnend bei der Festlegung der Anforderungen bis hin zum Vertragsabschluss. Im vorgeschlagenen Prozessmodell „Beschaffen“ wird zwischen zwei Arten von Beschaffern unterschieden: zum einen staatliche Organisationen und große Unternehmen, auf der anderen Seite Privatnutzer und kleine bis mittelgroße Unternehmen. Dabei sind die Potentiale in der Umsetzung nachhaltiger Ziele in der ersten Gruppe höher als in der zweiten.
Insbesondere große Unternehmen und staatliche Organisationen verfügen heutzutage über einen Nachhaltigkeitsbericht, der auch die Beschaffungsprozesse beeinflussen kann. Zur Visualisierung der typischen Schritte während eines solchen Beschaffungsprozesses mit dem Fokus auf Nachhaltigkeitskriterien schlagen wir das in der Abbildung dargestellte Prozessmodell vor.
In beiden Fällen müssen zunächst die Anforderungen an ein Softwareprodukt definiert werden. Bezüglich der Nachhaltigkeit, liegt der Schwerpunkt der Betrachtung auf der Anforderungsanalyse. Neben technischen Anforderungen müssen auch die sogenannten Lebenszykluskosten eines Produktes in die Betrachtung einbezogen werden. Auf diese Weise kann sowohl der Produktlebenszyklus eines Softwareproduktes als auch die gesamte Zulieferkette in den Beschaffungsprozess einbezogen werden. Das Ergebnis sind optionale und hinreichende Kriterien basierend auf einem Nachhaltigkeitsbericht. Um einen Überblick über relevante Kriterien zu bekommen, empfiehlt es sich eine Checkliste mit verschiedenen Kategorien, bspw. Effizienzkriterien, Umweltkriterien, aber auch sozialen Aspekten, zu erstellen und mit Hilfe dessen die Nicht-funktionalen Anforderungen an ein Softwareprodukt zu erweitern.
Basierend auf diesen Kriterien folgen im weiteren Verlauf des Beschaffungsprozesses die Auswahl der Anbieter, Evaluierung der Angebote und schließlich der Vertragsschluss zur Entwicklung bzw. der Kauf eines Softwareproduktes. Während dieses gesamten Prozesses sind Nachhaltigkeitskriterien einzubeziehen.
Die Energieeffizienz und Alterungskriterien für Hardware können im Fall von Standardsoftwareprodukten entweder als technische Anforderung oder als aufwertende Kriterien angesehen werden. Üblicherweise werden deren Grenzwerte und Gewichtungen während des Auswahlprozesses in den Ausschreibungsdokumenten festgehalten.
Das Prozessmodell für den Aspekt „Administrieren“ sollte einem Planen-Umsetzen-Überprüfen-Handeln („Plan-Do-Check-Act“) Zyklus folgen, um problemlos mit anderen Managementsystemen, bspw. aus dem Qualitätsmanagement (ISO 9000), dem Umweltmanagement (ISO 14001) oder dem Energiemanagement (ISO 50001/EN 16001), verknüpft zu werden.
Vorschlag eines Prozessmodells für den Aspekt "Administrieren"
Im vorgeschlagenen Modell gehen Aspekte des Umweltbewusstseins sowie der sozialen Verantwortung in das Management ein. Diese werden im Planungsschritt in ökologische und soziale Kriterien überführt (bspw. Emissionen in der Luft, Energieverbrauch, Abfallwirtschaft und Arbeitsplatzergonomie). Um einen solchen Zyklus zu beginnen, sollten die verantwortlichen Personen zunächst Kriterien, die einen signifikanten Einfluss auf diese Aspekte haben, identifizieren, die dann für das weitere Vorgehen höchste Priorität haben. In diesem Zusammenhang wird es notwendig sein Messungen durchzuführen, um ausreichende und verlässliche Daten zu haben, auf denen Entscheidungen getroffen werden können. Allerdings müssen vorab der Aufwand für solche Messungen und Analysen abgeschätzt werden. Gegebenenfalls empfiehlt es sich mit Vorgaben zu starten, deren Daten und Analysen leichter bzw. günstiger zu beschaffen sind.
Im Folgenden werden Beispielmaßnahmen, die während der Implementierungs- und Ausführungsphase umgesetzt werden können, um IKT und Software mit einem geringeren ökologischen und sozialen Fußabdruck zu erhalten, aufgelistet.
Beispiele für Maßnahmen am Arbeitsplatz
Beispiele für Maßnahmen im Rechenzentrum
Die resultierenden Pläne werden dann in der darauf folgenden Phase „Implementierung und Betrieb“ umgesetzt. Zudem ist es wichtig den Nutzer einzubeziehen. Dies kann z. B. in Form von Schulungen und der Bereitstellung von Informationen geschehen mit dem Ziel, bestmögliche Ergebnisse zu erzielen. Anschließend, in der Überprüfungsphase, sind Monitoring und Messungen notwendig, um zu überprüfen, ob die festgelegten Kriterien erreicht werden oder nicht. Falls notwendig, müssen korrigierende oder vorbeugende Maßnahmen eingeleitet werden.
Da die Nutzung von Software in erster Linie von Ad-Hoc-Prozessen dominiert wird, ist es nur indirekt möglich die Nutzungsphase als Prozess aufzufassen und ein entsprechendes Vorgehensmodell zu erstellen. Insgesamt lässt sich die Softwarenutzung jedoch als kontinuierlicher Zyklus mit den folgenden Phasen beschreiben: Installation, Konfiguration, Updates, regelmäßige Nutzerschulungen. Im Bezug auf die Konfiguration einer Software sollten auch „Mikro-Konfigurationen“ wie bspw. die Installation eines Add-ons in einem Browser, Konfigurationen in Textverarbeitungsprogrammen, usw. berücksichtigt werden. Daneben führen Softwareschulungen der Nutzer dazu, dass der Anwender im Umgang mit der Software trainiert wird und sie dadurch effektiver nutzen kann. Im Regelfall bedeutet der resultierende Zeitgewinn eine Reduzierung des Ressourcen- und Energieverbrauchs.
Die Nutzungsphase lässt sich zwischen der Selektionsphase und der Deaktivierungsphase einordnen. Das heißt, nachdem ein Softwareprodukt ausgewählt und in einer Weise, bei der die beschriebenen Aktivitäten zirkulär wiederholt wurden, genutzt wurde, wird die Nutzungsphase durch die Deaktivierung des Produktes abgeschlossen. In den meisten Fällen geht dies mit dem Start eines neuen Nutzungszyklus einer anderen Software einher.
Sie verlassen die offizielle Website der Hochschule Trier