Towards Model-Based Failure-Management for Automotive Software

Failure management is a particular challenge problem in the automotive domain. Today's cars host a network of 30 to 80 electronic control units (ECUs), distributed over up to five interconnected in-car networks supporting hundreds to thousands of software- defined functions. This high degree of distribution of hard- and software components is a key contributor to the difficulty of failure management in vehicle. This paper addresses comprehensive failure management, starting from domain models for logical and deployment models of automotive software. These models capture interaction patterns as a critical part of both logical and deployment architectures, introducing failure detection and mitigation as "wrapper" services to "unmanaged services", i.e. services without failure management. We show how these models can be embedded into an interaction-centric development process, which captures failure management information across development phases. Finally, we exploit the failure management models to verify that a particular architecture meets its requirements under the stated failure hypothesis.