Early Verification and Validation According to ISO 26262 by Combining Fault Injection and Mutation Testing
Book chapter, 2014
Today software is core part of modern automobiles. The amount, complexity and importance of software components within Electrical/Electronics (E/E) systems of modern cars is only increasing with time. Several automotive functions carrying software provide or interact with safety critical systems such as systems steering and braking and thus assuring functional safety for such systems is of high importance. Requirements for the safety assurance are specified partially by such functional safety standards as ISO 26262. The standard provides the framework and guidelines for the development of hardware and software for components deemed to be safety critical. In this chapter we argue that traditional approaches for safety assurance such as fault injection and mutation testing can be adapted and applied to functional models to enable early verification and validation according to the requirements of ISO 26262. We show how to use fault injection in combination with mutation based testing to identify defects early in the development process - both theoretically and on a case of self-driving miniature vehicles. The argument is grounded upon the current best practices within the industry, a study of ISO 26262 standard, and academic and industrial case studies using fault injection and mutation based testing applied to the functional model level. In this paper we also provide the initial validation of this approach using software of a self-driving miniature vehicle.