Make manual regression testing faster, smarter, and more targeted. See it in Action >>
WEBINAR
In the automotive industry, ISO 26262 addresses software safety in product development and outlines various testing methods to ensure the delivery of safe vehicles. Similarly, many organizations must meet software security and verification requirements recommended by ISO 21434.
Essential verification methods like static analysis, unit testing, structural code coverage, and requirements traceability can be time-consuming and labor-intensive. Discover how to automate them within the natural workflow of software development to reduce labor costs, expedite time to market, enhance code quality, and ensure compliance with ISO 26262 and ISO 21434 functional safety and security standards.
Key Takeaways
ISO 26262, particularly Part 6 for software development, uses a V-model. This model shows different phases of development on the left side (requirements, design, implementation) and corresponding testing phases on the right (unit testing, integration testing, system testing). While the V-model is a recommended process, it’s not a development methodology like Waterfall or Agile.
ISO 21434 also uses a similar V-model approach for development and verification, emphasizing the need to test security functions at different levels. This means unit testing encryption functions, integration testing boot processes, and system testing communication protocols to ensure data exchange is secure.
Learn best practices for accelerating ISO 21434 compliance with automated testing.
ISO 21434 states that cybersecurity should be integrated into existing processes. Since many in the automotive industry are already familiar with ISO 26262, integrating security is more straightforward. This often involves systems engineers working closely with security engineers to define requirements, perform hazard analysis for safety, and threat analysis for security.
Both standards require similar verification methods:
Many automotive manufacturers are adopting continuous integration (CI) and continuous delivery (CD) workflows. These pipelines help predict software delivery, manage requirement changes, and reduce issues reported by quality assurance. The focus is on automation at scale.
Frameworks like GoogleTest are popular for unit testing in C++. They are easy to use, have a clear syntax, and integrate well with build systems like CMake. However, to get the most value, these frameworks can be enhanced with tools that add structural code coverage and requirements traceability.
Here’s how a streamlined workflow might look:
When comparing open-source tools with commercial solutions, several cost factors come into play:
By automating verification methods and integrating them into your development workflow, you can effectively reduce labor costs, speed up your time to market, improve code quality, and ensure compliance with ISO 26262 and ISO 21434.