Ga direct naar inhoud

Wat is duurzame software?

Capgemini
2021-11-19

Beste lezer, terugkijkend naar ons eerste blog van Nienke is daar verwoord dat we een product of ons handelen duurzaam kunnen noemen als het op de aspecten economisch, milieu en sociaal zodanig is gebaseerd zonder de behoefte van huidige en toekomstige generaties in het gedrang te brengen. In ons eerste artikel hebben wij uitgelegd waar het bij duurzaamheid om gaat. In het onderstaande, tweede artikel, schetsen we wat met er duurzame software wordt bedoeld.

Wie zijn wij?

Wij zijn een groep van business analisten, architecten en projectleiders bij Capgemini. Ons doel is om bewustzijn over duurzaamheid te creëren en de kennis van onze collega’s en onze klanten te vergroten. De groep bestaat uit Nienke van der Burg, John Christiaanse, Hans van Rijs, en Hans van Zanten. Gezamenlijk behandelen we onderwerpen op het gebied van duurzaamheid en IT in een blogserie.

Waarom is software niet inherent duurzaam net als de idealist dit van alle andere dingen verwacht? En wat bedoelen we daar nu mee? In deze blog gaan we daar verder op in.

Figuur: Duurzaamheid en informatietechnologie.

Sinds 2008 besteedt de wetenschappelijke wereld langzaamaan meer en meer aandacht aan dit onderwerp. Meerdere wetenschappers zijn op zoek gegaan naar een definitie van wat duurzame software is en hoe je daartoe kunt komen.

Samengevat: op de volgende eigenschappen voldoet duurzame software aan de duurzaamheidsdefinitie:

  • Duurzaam mét software
    de duurzaamheidseffecten die iemand met de software nastreeft;
  • Duurzaamheid ván de software zelf
    de duurzaamheid van de software zelf;
  • Duurzaam geproduceerde software
    de duurzaamheid in de wijze waarop de software is gemaakt.

Per eigenschap gaan we kijken wat het kan betekenen.

Duurzaam mét software

Daarmee bedoelen we dat een of meerdere duurzaamheidsdoeleinden met de software wordt nagestreefd. Dit is een heel interessante invalshoek die je geregeld tegenkomt maar niet structureel aandacht krijgt op alle duurzaamheidsaspecten: Economisch, Milieu, en Sociaal (de groep zowel als het individu). Vanuit de literatuur wordt er vaak nog een vierde aan toegevoegd en dat is het aspect Technisch. Om deze aspecten meer levendig en voorstelbaar te maken volgt nu een kleine uitwerking van deze vereisten als we het doel van software gaan bepalen.

Als software Sociaal duurzaam voor het individu is, betekent het dat de software meehelpt in het in stand houden van het menselijk kapitaal (gezondheid, vaardigheden, kennis, leiderschap, het kunnen gebruiken van allerlei maatschappelijke diensten). Voor Sociale duurzaamheid voor de groep kan de software meehelpen met het in stand houden van sociale gelijkheid, in wat voor mate de software voor alle groepen (ouderen en jongeren) goed bruikbaar is of in wat voor mate de software een community ondersteunt in het bestendigen van de groep en ze elkaar kunnen helpen. Als software in zijn functie Economisch duurzaam is dan zorgt de software er voor dat kapitaal en toegevoegde waarde in stand blijven. Voor Milieu beoog je het verbeteren van het welzijn voor elk levend wezen (waaronder de mens) door de natuurbronnen, water, lucht, land, mineralen en ecosystemen te beschermen en in stand te houden. Technisch duurzaam betekent het blijvend kunnen gebruiken (persistentie) en adequaat evolueren van softwaresystemen binnen veranderende omgevingsfactoren, eisen en voorwaarden.

Duidelijk is dat het definiëren van ‘duurzaam zijn mét software’ voor deze mee te wegen aspecten al een intensief proces kan zijn. Het wordt weer complexer als je ook nog de onderlinge beïnvloeding van de factoren meeneemt in je beoordeling. Alles heeft met elkaar te maken zou je zeggen. En, jawel, dat is óók een aspect dat je zal moeten meewegen als je mét de software duurzaam wilt zijn.

Het gebruik van software heeft nu eenmaal op meerdere manieren impact, die je idealiter probeert zichtbaar te krijgen.

Om deze impact waarneembaar te maken onderzoek je de impact bij direct gebruik (eerste soort impact) van de software, zoals het energieverbruik.

Of je onderzoekt het directe gevolg (tweede soort impact) van het gebruik van de software. Stel: je komt in contact met een beoogd persoon en dient daarmee het primair beoogde sociaal doel, echter let op: het kan ook nog een milieu-effect of een economisch effect hebben. Kortom je ziet dat gebruik van functionaliteit soms een bredere impact heeft dan je in eerste instantie had gedacht of bedoeld.

Zo zijn dan twee soorten impact-invalshoeken bekeken maar er is nog een derde impact en wel: wat is het gevolg van de software bij langdurig gebruik; ontstaan er effecten die je pas op de langere duur gaat zien? Kan het ook ineens anders gaan worden gebruikt dat nog niet is voorzien? Denk bijvoorbeeld aan lichamelijke klachten (kromme rug) of een niet verwacht sociaal effect zoals je afzonderen en geen contact willen hebben met de reële wereld (denk aan Japan waar kinderen zich afsluiten van de buitenwereld en alleen in een digitale wereld willen leven, de zogeheten ‘Hikikomori’).

Duurzaamheid van de software zelf

De duurzaamheid van de software kan je direct koppelen aan kwaliteitseisen die voor de software gelden. Deze eisen zijn gedefinieerd in de ISO-normgroep 25000. Daar passeren zo’n 40 eigenschappen de revue die allemaal iets zeggen waaraan software zou moeten voldoen.

Echter: het is niet scherp welke eigenschap wel en welke niet iets met duurzaamheid heeft. Wetenschappers hebben getracht duurzaamheid helder te maken binnen alle eigenschappen, en ontdekten ondanks dat eisen een duurzaamheidskarakter hebben er toch een expliciet kwaliteitscriterium nodig is. Dit noemden ze de zogeheten Greenability-eigenschap. Deze is zichtbaar geworden door alle gedefinieerde ISO 25010-eigenschappen met een duurzaamheidsbril te beoordelen en te wegen of we daarmee al tot duurzame software kunnen komen. Dat zou dan schelen. Je selecteert de eigenschappen die tot duurzaamheid leiden, maakt ze expliciet en klaar is Kees. Als de software aan de eisen voldoet dan is het duurzame software. Wat opviel was dat duurzaam vanuit een energieperspectief vanuit middelengebruik goed wordt meegenomen maar niet vanuit een milieuoogpunt of onze leefomgeving. De definities van de ISO 25010 ontberen deze aspecten en moeten dan ook worden aangevuld voor specifieke eigenschappen. Dus is de Greenability-eigenschap geïntroduceerd, waarbij met de kenmerken: Energie-efficiëntie, Middelenoptimalisatie, Capaciteitoptimalisatie, en Duurzaam Houdbaar (Perdurability) de beoogde verrijking wordt gegeven. De ISO heeft ook nog een uitwerking van de Quality in Use en ook daar werd helder dat aanvullende kenmerken nodig zijn. Dit waren: Optimalisering van efficiency, de Perceptie van de gebruikersomgeving, en het Minimaliseren van milieuconsequenties. Degene die duurzame software wil maken zal dus uit de bestaande ISO-eigenschappen duurzaamheidskenmerken kunnen afleiden, en kan dit verder vervolmaken door de Greenability-kenmerken toe te voegen.

Duurzaam geproduceerde software

Dit klinkt als een open deur, is het ook, en om het waar te maken zijn er toch nog wel wat punten die aandacht vragen. Als eerste het feit dat software als product een levenscyclus heeft, met de levensfasen: ontwikkeling, installatie, gebruik, buitengebruiksteling, en gebruikseinde. In elke fase is het van belang de duurzaamheidsaspecten in beschouwing te nemen. Dus is het nuttig duurzaamheid te integreren in de gebruikte methode voor software-ontwikkeling. Gedacht kan bijvoorbeeld worden aan een duurzaamheidslogboek en in een iteratie vooraf en achteraf de duurzaamheid van de software… Dit kan je structureel inbedden om zo te borgen dat in het software-ontwikkelingsproces de duurzaamheid van software structureel aandacht krijgt waardoor de duurzaamheid van het ontwikkelproces verbetert en dus van de software zelf.

Figuur: Groen bij software engineering

Dit was het voor deze keer. In de volgende blogs gaan we dieper in op wat we kunnen doen om duurzaam mét, van en tot software te komen. Maar voordat deze blogs het licht zien vragen we in de volgende blog-aflevering eerst je aandacht voor Duurzaamheid en Architectuur: kan dat, moet dat, en wat zou dat kunnen betekenen. We rekenen op jullie onverdeelde aandacht bij die aflevering.

Een helpende hand van ons: mocht je in de tussentijd softwareproducten van jouw organisatie binnen de verschillende invalshoeken van duurzaamheid willen classificeren probeer dan een overzicht te maken hoe de gekozen softwareproducten scoren (goed, Middel, Slecht) op de aspecten Milieu, Sociaal, Economisch, en Technisch. Hoe verhouden deze aspecten zich tot elkaar? En in welke onderdelen van de software kan je het duurzaamheidsaspect verder verwerken? We helpen je graag daarbij, neem gerust contact op!

Auteur

John Christiaanse