Zo houd je overzicht over alle geplande treinen

Planningssysteem NS

Hoe maak je alle geplande treinritten van NS overzichtelijk? In Donna, het centrale planningssysteem van NS, werken dagelijks honderden planners met interfaces die talloze datastromen visueel maken. Eén van de DevOps teams van Donna ontwikkelt nieuwe grafische schermen. "Donna stuurt alles aan, alle treintijden komen hier vandaan," vertelt een tester uit het team. "Het systeem heeft een enorme impact."

"Alles op het scherm heeft een betekenis," legt de tester uit. "Je ziet per tijdstip waar de treinen rijden en hoe. Als er bijvoorbeeld werkzaamheden aan het spoor zijn, kunnen planners zien waar nog ruimte is om een nieuwe trein in te plannen." Het team werkt aan drie schermen in Donna: het TijdWegDiagram (TWD), het SpoorBezettingsDiagram (SBD) en het EmplacementsDiagram (EPD). "De nieuwe schermen zijn niet alleen technisch interessant, maar ook vernieuwend voor de organisatie. Dat vind ik zo leuk, je ziet twee werelden samensmelten. Voorheen leverden we vier keer per jaar één grote nieuwe versie van Donna op, nu werken we met kleine deelapplicaties en kunnen we elke seconde iets nieuws releasen. We kunnen veel sneller waarde leveren."

“Wat kunnen we automatiseren zodat we onze creativiteit optimaal kunnen inzetten?”

Testen in de praktijk

De nieuwe interfaces zijn visueel sterker en geven meer informatie voor de planners. Ondanks dat de nieuwe schermen nog in ontwikkeling zijn, kunnen de planners nu al profiteren van de technologie. "De eindgebruikers kunnen de schermen nu al gebruiken naast het huidige scherm. Met hun feedback maken we de applicatie steeds beter, ook middels gebruikerssessies. Wij ontwikkelen bijvoorbeeld vier varianten van één lijn, zij mogen kiezen. Zo vormen we het product écht samen. Het is zo gaaf om te zien dat al het werk dat wij erin stoppen nu bij de planner in gebruik is."

De nieuwe software wordt continu getest om aan hoge kwaliteitseisen te voldoen voor het bij de gebruikers terecht komt. Reactief én preventief, om bijvoorbeeld het geheugengebruik te monitoren. "Als DevOps team zijn wij verantwoordelijk voor de hele lifecycle van het product. Bij een storing krijgen we automatisch een melding en kunnen we binnen enkele minuten een fix klaarzetten." De testen worden zoveel mogelijk geautomatiseerd. "Bij elke codewijziging vindt automatisch een hele testsuite plaats. Testontwikkeling is inmiddels echt software development. Als je tien keer op een lijn moet klikken gaat dat nog, maar wat als je dat bij elke codewijziging moet doen? Dan ben je op dag drie helemaal op. Mensen zijn gewoon intelligenter. Die creativiteit willen we optimaal gebruiken: wat zijn nou scenario’s waar het mis kan gaan? En welke complexe gevallen kunnen we automatiseren?"

Complexe business logica in beeld

Aan de frontend maken Angular applicaties de data visueel voor de planners, aan de backend zorgen verschillende Spring Boot applicaties voor de integratie van alle data. Om de functionele (en visuele) werking en performance van zowel de front- als backend te verzekeren, gebruiken de testers populaire technieken als WebdriverIO, Applitools, WireMock, Rest Assured en Gatling.

"Die afwisseling maakt het zo fascinerend om hieraan te werken. Aan de ene kant ben je bezig met: "Hoe moet het er voor de planners uitzien op het scherm?" en aan de andere kant werk je met complexe business logica van treinen die naar het buitenland rijden en weer terug. Je werkt echt aan een groter geheel. En er komen steeds nieuwe technieken bij, dus je blijft uitgedaagd."

Samen verder

"Elke story pakken we gezamenlijk op, waarbij ik als testautomatiseerder verantwoordelijk ben voor de kwaliteit van de testen, het ontwikkelen en automatiseren ervan en de testopzet en strategie. We trekken alles uit de kast om ook remote goed samen te werken, ook met andere teams. Als een ander team iets kan hebben aan de code die ik schrijf, dan deel ik dat. Ook vanuit NS komen ideeën over nieuwe technieken. Dan merk je dat het een grote organisatie is, waar veel mogelijk is en waar mensen met je meedenken. Er is heel veel ruimte voor je eigen input. Zelfs als de planners al een bepaald idee hebben, proberen we als team toch verder te denken. Soms weet je niet wat er mogelijk is totdat je het ziet."

Planningssysteem voor treinen Donna

Onze mensen in de IT

IT

IT-trainee bij NS, een kijkje in de reis van onze trainees

Floor is IT-trainee bij NS. Op de afdeling Reisbegeleiding gaat ze samen met haar team over de omreisadviezen bij een verstoring op het spoor. “Als er iets gebeurt op het spoor, dan komt dat bij het OCCR (operationeel controle centrum rail) binnen. Medewerkers van het OCCR gebruiken dan onze applicatie om de verstoring in te voeren en aan de hand van de informatie die wordt ingevoerd genereren wij de omreisadviezen. Dit vind je terug in onder andere de omroepberichten op het station, want dat komt van mijn team. Dat is super leuk, super concreet en heel zichtbaar.”

Kantoor
IT

Complexe IT bij NS op 'champions league'-niveau

NS heeft een uitdagend IT-landschap. IT-recruiter Jeroen vertelt geïnteresseerden hier graag over op de grootste Java-beurs van Nederland: 'Ik vond het ontzettend leuk om op zo’n dag met bezoekers in contact te komen.'

IT

Vertellen over kunstmatige intelligentie op televisie: NS in Cybersessies AI

“Het is heel tof om aan een groot publiek zichtbaar te maken wat NS doet met AI”. Steven Woudenberg is Data Lead bij NS. Vanuit zijn functie mocht hij in het televisieprogramma Cybersessies AI vertellen over zijn werkzaamheden op het gebied van kunstmatige intelligentie. “Er lopen veel projecten op het gebied van AI binnen NS. Denk daarbij aan het optimaliseren van het onderhoud aan onze treinen, maar ook aan het verbeteren van onze informatievoorzieningen voor de reiziger. In het programma geven we concrete voorbeelden om Nederland te laten zien wat er zoal mogelijk is met AI binnen NS.”

Jouw droombaan in je mailbox?

Mis nooit meer jouw ideale vacature met onze persoonlijke vacature alerts.