Why software development testing is so critical for safety-critical systems.
The average car today contains up to 100 million lines of code. Software controls everything from safety critical systems like brakes and power steering, to basic vehicle controls like doors and windows. Yet the average car today may have up to 150,000 bugs, many of which could damage the brand, hurt customer satisfaction and, in the most extreme case, lead to a catastrophic failure. Software development testing is designed to help developers, management and the business easily find and fix quality and security problems early in the software development lifecycle, as the code is being written, without impacting time-to-market, cost or customer satisfaction.
To help address vehicle safety, the International Organization for Standardization (ISO) put forth ISO 26262 for road vehicle functional safety. The standard was created to provide guidance to avoid the risk of systematic failures and random hardware failures through feasible requirements and processes. The standard is comprised of 10 parts that span the breadth of the automotive safety lifecycle including management, development, production, operation service and decommissioning. The Synopsys Software Integrity Platform products Coverity and Test Advisor apply most directly to ISO 26262 Part 6: Product Development: Software Level.