Vincent van der Goes

CGI (The Netherlands)
October 30 | 12:45-13:45 | Room 0C

Building a test automation tool for a legacy Train Control System

We have been working on a safety critical Train Control System. We built up a new test automation tool when the product was already in a late stage of development, but was facing several challenges. The requirements are complex, sometimes spanning three pages each. It was legacy software, where application of SOA architecture resulted in tightly coupled components. The pre-existing testset was built with improper tooling, hundreds of tests were failing every night and it was hard to analyze them. We show how we built up new test automation tooling from scratch. We defined a custom Domain Specific Language for our tests, within the JUnit environment. Replacing the old test suite was necessarily a slow process, because the SIL-1 safety integrity level demands that all requirements are covered. We demonstrate how the project was able to make a gradual transition, while development was still ongoing.

We also show how we enforced a detailed documentation of the test conditions covered in each test, in order to get a grip on the complex requirements. Finally, we show how we were able to deal with the SOA architecture in our new tooling.

Graduated as a Computer Science student at Leiden University, 2008. Presented thesis results as a paper on the prestigious PPSN (Parallel Problem Solving from Nature). Worked as a Postdoc student in the field of environmental economics until 2012. Worked at Tactical Planning for KLM Airlines in 2013.Worked at Portavita (health web portal) in 2013.

Joined CGI as a software engineer in 2014. Works on a safety critical Train Control System. Started on the project as a software engineer, but gradually grew into the role of software tester. Is currently the lead tester on the team.