As we move from a world of embedded systems to one of cyber-physical systems and systems-of-systems, software is no longer merely a separable component of a system.
This assignment involved defining an ASPICE-compliant software development process (SWE3 and SWE4) intended to cover the needs of all in-vehicle software development teams.
Automotive OEMs have evolved to become highly efficient outsourcing and system integration organizations. Everything related to a vehicle is thought of as a component, including software. The whole automotive system engineering process treats software as a component of a vehicle. This prevents them thinking about the software as a whole system.
Some software engineering teams have a problem understanding the difference between abstraction and vagueness. Since one is essential to the architecture and design of complex systems and the other leads to technical debt and poor software quality, software teams must grok the difference.
The automotive world has an awful lot to learn about innovating in software engineering and little time to do it.