4min Personeel

Waarom een IT-storing alle NS-treinen platlegt

Waarom een IT-storing alle NS-treinen platlegt

Normaliter rijden NS-treinen (zij het in mindere mate) ook tijdens winterweer en wisselstoringen gewoon door. Een ‘bijkomende IT-storing’ legt de Nederlandse Spoorwegen echter volledig plat vanaf 8.00 uur tot ten minste 10.00 uur. Hoe is dat mogelijk? En is er eigenlijk wel een alternatief voor het gedigitaliseerde systeem?

Elke nacht voert de NS in de planningstool een berekening uit. Deze vertaalt de Basisdienstregeling naar het ‘Plan van de Dag’. Er is immers een theoretisch vast rijschema, maar door feestdagen, het weekend, weersomstandigheden, wisselstoringen, personeelstekorten en andere bijzonderheden is elke dag op het spoor net iets anders. Bijna 4.500 treinritten moeten elk van A naar B komen zonder op hetzelfde moment hetzelfde perron of stukje spoor te bezetten. In de jaren ’60 was het met aanzienlijk minder materieel en mankracht mogelijk om met de hand de planning te maken; tegenwoordig is het Plan van de Dag algoritmisch. Het bijzondere aan de NS is dat het de software hiervoor grotendeels in-house heeft gebouwd. Het bestaat uit meerdere onderdelen, zoals een applicatie enkel voor de treinbewegingen en een systeem dat het personeel indeelt bij treinstellen. Het plannen van de treinbewegingen an sich was niet het probleem.

Planning niet gemaakt

Tegenover het NOS Radio 1 Journaal vertelt NS-woordvoerder Erik Kroeze dat het vannacht niet lukte om een planning te maken voor de dag. Desgevraagd bevestigt Kroeze dat er “niet te plannen, en dus niet te rijden” is. Zo simpel kan het zijn. Zo complex kan het onderliggende probleem echter zijn. De NS geeft aan dat het niet een probleem was van de planningsoftware zelf (Donna, dat gebruikt wordt voor het plannen van treinbewegingen en samen met ProRail ontwikkeld is) maar “verderop in de keten, daar waar het personeel dat de trein moet bemensen gepland wordt.” Dat systeem wordt niet met naam genoemd en ook niet wat precies het probleem was.

De NS was al door de weersomstandigheden overgeschakeld op de winterdienstregeling, waarbij er minder treinen rijden. Dat leidt overigens niet gelijk tot een eenvoudigere dienstregeling: wegens de extra overstappen zullen sommige treinen opeens overvol zijn of kan een vertraging van enkele minuten al gauw een reis onmogelijk maken. De IT-problematiek voorkwam dat dergelijke planning van personeel te voorzien was.

Het planningsysteem beheert dagelijks zo’n 200.000 logistieke afhankelijkheden. Dat volgt uit de optelsom van het aantal treinen, het personeel en de perrons waar de treinen stoppen. Met een enorme interne complexiteit ligt het opeenstapelen van problemen op de loer, maar de algoritmes van de NS berekenen schema’s die tot een zo soepel mogelijke dienstvoering leiden. Zo blijkt de virtuele wereld minstens zo kwetsbaar als het fysieke spoor: stroomuitval of een softwarefout zijn net zo funest als een omgevallen boom. Tot 1970 kon men terugvallen op potlood en papier, maar tegenwoordig is dat niet haalbaar. Bij twijfel staat alles stil, en de algoritmes van de NS zijn niet met een rekenmachinetje te vervangen.

De planningsoftware, die hier niet de directe boosdoener was, was overigens ooit monolithisch, maar klinkt tegenwoordig vrij modern. De ontwikkelaars ervan maken het steeds meer een optelsom van deelapplicaties en microservices, “zodat de teams sneller nieuwe versies van de applicatie kunnen releasen”, aldus de NS. Een miljoen regels code bepaalt waar welke trein wanneer is, waarbij nieuwe applicaties zich bijvoorbeeld richten op potentiële conflicten zoals een dubbel bezet perron. Reizigers zullen vooral de situaties herinneren waarin zo’n conflict wél voorkwam, maar achter de schermen voorkomen de vierhonderd planners bij de NS en circa honderd developers dat het vele malen vaker fout gaat.

Wet van Murphy

Hoewel eerdere IT-incidenten bij de NS ook met een strakblauwe zomerhemel tot een volledige uitval hebben geleid, was er dinsdagochtend een opeenstapeling van problemen. Er kan door de wisselstoringen en de interactie met andere vervoerders op het door ProRail beheerde spoornetwerk niet consistent gereden worden. Die complexiteit geeft geen ruimte voor een soort ‘Safe Mode’-schema waar reizigers vanuit mogen gaan. Daarnaast zou een storing bij ProRail (of bij een lokale vervoerder) ook tot problemen bij de NS en haar reizigers leiden. Immers is er voorbij de NS zelf nog een groot netwerk aan afhankelijkheden.

De NS won in 2008 een prijs voor haar algoritmes die de planningen maken. In 2009 stelde onderzoek vast dat de verhoogde passagiersaantallen tot tientallen miljoenen meer winst leidden. Het voordeel van extra passagiers en extra treinen maakt de berekeningen echter complexer dan ooit. De efficiëntieslag dankzij digitalisering heeft de NS geen windeieren gelegd, maar de wildgroei aan complexiteit maakt een herhaling van deze storing in feite een garantie.

Lees ook: Odido onthult oorzaak van landelijke storing