ELCA implements an IT Testing and Quality Strategy at the FEDRO
With the aim of reducing the number of injuries and fatalities on Swiss roads, the Federal Roads Office, FEDRO developed the VUGIS application in collaboration with ELCA. This application allows the identification of accident hotspots throughout Switzerland, so that corrective measures can be taken and monitored. Early in the project a strong focus was set on Quality and Testing.
In the context of the federal action program for safer roads "Via sicura" and the appropriate law, whose purpose is to reduce the number of injuries and fatalities on Swiss roads, the Swiss Federal Roads Office FEDRO implemented several tools, one of which is VUGIS, (Traffic Accident Analysis based on Geographical Information Systems), which was developed in collaboration with ELCA. The VUGIS web application is used by FEDRO road traffic accident analysts, cantonal police and civil engineering offices, cities and communities. Based on accident data reported by policemen, VUGIS users can easily calculate, analyze and geographically visualize "Black Spots" and other critical street sections on Swiss Roads. A powerful query module based on location intelligence technologies is at the heart of VUGIS. The application enables users to easily perform complex queries and generate many kinds of reports based on locations or attributes in a simple way.
Early in the project a strong focus was set on the Quality and Testing Process
In the early stages of the project, ELCA decided by mutual agreement with FEDRO to set up a Continuous Integration (CI) system that, every time source code is changed, would build, deploy and test the system, and check source code quality. A dedicated strategy in terms of Quality Assurance and Testing has been set up and an ELCA expert dedicated to Quality was specifically appointed from the beginning throughout project’s life. The project testing strategy gave special attention to automated tests: not only were unit tests automated, but also integration (web services) tests and end-to-end (User Interface, or UI) tests, which led to an extensive coverage of VUGIS features and source code during CI builds. A specific test framework was implemented at the beginning of the project to coverspecific aspects (checks on GIS maps, PDF reports…); this framework was based exclusively on Open Source Tools (e.g. Selenium WebDriver, FitNesse, JUnit) and integrated into the CI system. The development team was trained on the framework so that every member could develop automated tests for the feature he was coding. People also understood how to make the system testable, which is of utmost importance when it comes to UI testing.
Testing was not a cost but an investment with an effective return
The costs of implementing this test strategy with a very high level of automation were assessed as less than 20% of the total project effort. These costs were largely compensated by the benefits to the project team got during the project development and until today in maintenance phase: common failures and regressions due to code, configuration or interfaces changes are much less frequent than on other projects of similar complexity. Moreover, most automated tests can be run on target environments prior to a new version rollout. Lastly, the manual testing effort can be considerably reduced, providing a real return on investment.