There is no doubt that the automotive industry benefits from the rapid expansion of IT and consumer electronics technology. However, a car – with its many time-dependent and safety-critical systems – is not an iPhone, and it will take time to integrate this technology safely and efficiently
The automotive industry has been rapidly adopting information technology and consumer electronics technology to create a safer and better driving experience for customers. ADAS are now a vital part of any new vehicle. However, while many consumer products require testing for quality, cars demand rigorous testing and compliance with defined standards and protocols to also ensure safety and security in automotive software.
Many initiatives are helping to pave the way, including:
- The COVESA Alliance (formerly the GENIVI Alliance) software architecture standard
- The Automotive Safety Integrity Level (ASIL) classification system defined by ISO 26262
- The AUTOSAR Adaptive Platform, which has at its core an operating system based on the POSIX family of standards
- Automotive Grade Linux which is building an open operating system and framework for automotive applications
- Layered electronics architectures to aid the design of next-generation vehicles
- Central communications servers and encapsulation aiming to simplify local scalability
- Service-oriented architectures to provide whole-system service abstraction
To guarantee safe operation within its operational design domain (ODD), engineers need to thoroughly analyze the operational requirements of their systems, as well as the environments they will operate in. However, they also need to accept that it is impossible to predict every contingency at the start of a project. This has led to the development of agile software development methodologies, involving building, testing, failing and repeating cycles to eliminate errors progressively. Continuous testing is key to this approach, and it is crucial to test components and subsystems individually and in concert, ensuring they deliver expected outputs and do not break the rest of the system when they fail.
Real-world driving has traditionally been the main (and only) testing mechanism in automotive engineering. However, road testing is expensive. It is difficult to isolate individual components, and takes it time to execute. Similarly to other software development practices, the automotive industry had to adapt and adopt mechanisms to test software as it is being developed – known colloquially as shifting left. This is becoming more and more necessary as finding bugs and faults later in the game during system testing not only comes with significant financial costs but also makes it much harder to identify the source of the problem.
Testing occurs at a component level, such as GPS/GNSS receivers, cameras, radar, lidar and telematic systems, all the way up to a system level, such as lane-keeping assist analysis. Testing must evolve during the development cycle, going from a functional test for individual components to subsystem tests to validate the operation of an ECU, all the way to scenario testing to validate the correct operation of the vehicle in its intended operational design domain.
Engineers must develop testing strategies covering the many subsystems and components that make up the vehicle’s electronics ecosystem. These subsystems and components include ADAS, infotainment systems, safety systems, and body and chassis control. Testing strategies must be comprehensive, repeatable and cost-effective to ensure the software and firmware integration is safe and efficient.
Effective simulation leads to shorter development times, but it is only possible with high-quality testing tools. When testing equipment interacts with specialist hardware on the test lab bench, engineers need to ensure that the rig itself does not affect the output by, for instance, introducing high latency into the loop. Comprehensive, repeatable and cost-effective testing is essential to deliver high-functioning, resilient and safe systems that will meet consumer demands for features and driving experience.
In conclusion, the need for ever-greater improvements in vehicle intelligence and driving experience is driving the development of vehicle electronic architecture. However, engineers must balance testing with software development methodologies to ensure safety in the rapidly evolving ECU ecosystem. Effective simulation leads to shorter development times, but it is only possible with high-quality testing tools. Comprehensive, repeatable, cost-effective testing is key to delivering high-functioning, resilient and safe systems that will meet consumers’ demands for features and driving.