Robuuste software is een must in de infrawereld

Ook tijdens noodsituaties is 100% functionaliteit nodig.

Robuuste software ontwikkelen (in de infrawereld)

Bijna alle apparatuur die we gebruiken bevat software voor de aansturing van functies. In de infrawereld is dat niet anders, echter de eisen die gesteld worden aan software bij infra objecten zijn vele malen zwaarder. Of we het nu hebben over tunnels, sluizen, bruggen, elk object is uniek en is in principe gebouwd om 100 jaar of meer mee te gaan. Ze zijn onmisbaar en altijd in gebruik, daarom moet er software worden toegepast die een hoge mate van robuustheid kent.

Op het moment dat de software in gebruik genomen wordt, mogen er geen kinderziektes meer inzitten en moet alles betrouwbaar en voorspelbaar blijven draaien, ook in onverwachte situaties. Bij wijzigingen moet die voorspelbaarheid nog steeds gegarandeerd kunnen worden. Croonwolter&dros en Soltegro spreken de digitale taal van tunnels, sluizen en bruggen als geen ander. GWW-Bouw in gesprek met Harry Engwirda, Programmamanager Industrialisatie bij Croonwolter&dros en Franc Fouchier, Manager Systems Engineering & Innovation bij Soltegro.

Ontwikkelingsproces van robuuste software

"Om robuuste software te kunnen schrijven, dient er sprake te zijn van een gedegen ontwikkelingsproces en een gedegen opzet van de software", opent Harry het gesprek. "Transparantie in alles wat je doet is dan het sleutelwoord. Alles dient vastgelegd te worden, we leggen niet alleen vast wat er aan functionaliteit van de software verlangd wordt, maar ook hoe de hele lijn van ontwikkeling is opgezet. Dat vraagt om zorgvuldigheid in elke stap van het proces. We maken zichtbaar wat er moet gebeuren en zijn open in het delen van alle gegevens met iedereen die betrokken is in het proces. Omgekeerd verwachten wij diezelfde openheid en transparantie van toeleveranciers; als er een deelinstallatie door derden geleverd of gerealiseerd wordt, dan dienen wij te weten hoe de software eruitziet en werkt. Alleen zo kunnen we betrouwbaarheid kwantificeren."

Franc licht toe: "Deelinstallaties worden steeds slimmer en kennen soms softwarematig een stuk autonomie. Heel mooi, maar een 'zelfdenkende' installatie mag op geen enkele manier de werking van het geheel verstoren. Dan wordt zo'n onderdeel ineens onberekenbaar en daarmee wordt de hele installatie onbetrouwbaar. Robuust bouwen betekent dus ook volledige inzage hebben in de software architectuur van toeleveranciers. Daar selecteren we hen dan ook op."

"De beschikbaarheid van bijvoorbeeld een tunnel mag niet in gevaar komen als er een onderdeel van de installatie uitvalt. Daarom is het zo belangrijk dat alle processen strak gedefinieerd zijn".
Harry Engwirda, Programmamanager Industrialisatie

Uptime is het hoogste goed in de digitale infra

"In de meeste omgevingen werkt het nog zo dat als iets faalt, er even een uitval van het systeem is, om reparaties door te voeren. Dat kan niet in de infra, uptime is het hoogste goed. De beschikbaarheid van bijvoorbeeld een tunnel mag niet in gevaar komen als er een onderdeel van de installatie uitvalt. Daarom is het zo belangrijk dat alle processen strak gedefinieerd zijn. Wanneer wij software ontwerpen, dan starten we met te definiƫren wat de software moet doen, dit gebeurt in een functionele analyse. We gebruiken daarbij een generieke analyse als vertrekpunt, zaken die al vastgelegd zijn bij andere tunnels, sluizen of bruggen. Zo zien we niets over het hoofd. Vanuit de analyse wordt een specifiek ontwerp gemaakt voor de software, toegespitst op het object waar de software voor geschreven wordt", legt Harry uit.

"Om de software leesbaar en inzichtelijk te houden, hebben we een Coding Guideline", aldus Franc. "Daarin zijn structuren, uitgangspunten en benamingen vastgelegd. Per apparaat wordt de aansturing en functionaliteit omschreven. Daarmee kun je bij toeleveranciers nieuwe objecten valideren. Ook wanneer je voor vervangingstaken staat, kun je terugvallen op alles wat vooraf gedefinieerd is, te beginnen bij de gevraagde functionaliteit."

"Je zult zien dat we over 10 jaar meer vertrouwen hebben in software, door wat we nu doen".
Franc Fouchier, Manager Systems Engineering & Innovation bij Soltegro

Virtueel testen van robuuste software

Een van de middelen om kinderziektes uit software te halen, is het virtueel testen van de software. "Daarbij komt alles aan bod, niet alleen de functionaliteit van de onderdelen van de installatie, maar ook de veiligheid van een object, in relatie tot de software. We gebruiken er gedetailleerde processen voor en beschikken over gecertificeerde (CSME) specialisten die alles aansturen", aldus Harry.

Het sleutelwoord, nu en in de toekomst, is voorspelbaarheid. Tot besluit zegt Franc: "Je zult zien dat we over 10 jaar meer vertrouwen hebben in software, door wat we nu doen. We testen nu zoveel om onszelf te verzekeren van robuuste software over de hele linie van de installatie. In de toekomst kun je een samenspel verwachten tussen de hard- en software in een tunnel en de hard- en software in een slimme auto. We bouwen de tunnel voor 100 jaar levensduur, maar over 50 jaar kan het digitale landschap er weleens heel anders uitzien."

Stuur verhaal door