Professor Lutz Eckstein, director of the Institute for Automotive Engineering (ika), RWTH Aachen University, discusses continuous integration and testing in the development of future cooperative intelligent transportation systems
Twelve companies, including OEMs and Tier 1 suppliers, as well as nine universities, have joined forces in the Autotech.agil project. Together we are developing new architectures and technologies that will make the driverless vehicle vision a reality. Software is the key enabler of this new mobility. In future intelligent transportation systems, countless software modules must interact with each other for the overall system to function according to users’ needs. Continuous development is crucial to ensure the safety of the transportation system’s users. Software embedded in such a complex and changing system is no longer guaranteed to meet these demands over the life of, for example, a vehicle. It must receive improvements through updates.
}
else {
console.log (‘nompuad’);
document.write(”)
}
// –>
}
else if (width >= 425) {
console.log (‘largescreen’);
document.write(‘‘)
}
else {
console.log (‘nompuad’);
document.write(”)
}
// –>
We are therefore developing a system that enables software to meet these new demands. The software ecosystem comprises tools and processes that enable software modules to be continuously developed, tested and orchestrated, in a cooperative intelligent transportation system (C-ITS). Orchestration here refers to demand- and capabilities-driven deployment of software modules to various computing units and their interconnection in the overall system. For example, when an AV approaches an intersection equipped with intelligent sensors, those sensors will automatically begin to perceive the area of the intersection and combine their perceived data with the AV’s perception data. In this way a vehicle’s perception capabilities can be augmented with external data, in effect enabling vehicles to see around the corner.
Moreover, the interconnection of vehicles, sensor-equipped roadside units and traffic control systems enables the creation of a live digital twin of traffic. Connected entities can share both their own state and perceived elements in their environment with the goal of integrating all information in this live digital twin. It constitutes a digital image of the current state encountered by all road users. The live digital twin enables VRUs such as pedestrians and cyclists to be warned of hazards in their environment, such as fast-moving vehicles that may have crossed a red signal.
The software development process created by the consortium relies heavily on principles already recognized and tested in other parts of the IT sector that are now also being applied to the mobility sector. They are: documentation as code for common definitions; continuous integration, testing and containerization; and continuous simulation-based testing.
By implementing common definitions such as interfaces or coordinate frames directly as code, and integrating them into the various applications, the interfaces are also continuously subject to automated tests. This ensures that they do not become obsolete over the course of agile software development processes.
One application, for example, could be the traffic light detection of an AV. Every change in the code during development is automatically tested on the target platform as part of continuous integration. If the tests are successful, the function is made available as a container image. Through containerization, software modules are executed in consistent, isolated environments and can thus be deployed as desired to other computers. For example, the same software for camera image processing could be executed both in the vehicle and on an intelligent infrastructure sensor system, thereby facilitating function offloading.
It is not sufficient for a single module to work as desired, but the interaction of different modules has to show the desired emergent behavior in the overall system. This property can be sufficiently tested only if modules are tested jointly, possibly in their target domain.
Due to the complexity of the C-ITS and the vast number of possible scenarios, simulation plays an important role in the joint testing of software modules. In this context, a simulation requires a digital twin – a virtual and configurable representation of the transportation system and its parts. Building such a twin enables us to test the interaction of the software modules that constitute the applications running in the C-ITS before actually integrating them into vehicles, smart infrastructure or cloud back ends.
For a production system, testing would not end at this point, but processes developed under the project would capture the majority of errors before they occur in the real world – a huge benefit in terms of cost and safety. Real-world tests of applications that have already been analyzed successfully in simulation can be conducted with much more confidence.
Autotech.agil is still in the development phase. We plan to demonstrate the architectures and tools developed by the end of 2025.