This course focuses on the most important proactive implementation techniques that reduce firmware defects for safety-critical systems. Such firmware defects can result in severe – even deadly – consequences. Specifically, this course will discuss three of the most important and undervalued safety-critical firmware implementation techniques: adopting an effective coding standard, conducting meaningful code inspections, and using static analysis properly.
Many teams rely too heavily on important, but more costly, downstream approaches, such as testing/validation or even end-user feedback, to discover and remove defects. As a result, front-end activities rarely are fully embraced and often are not practiced successfully. All are necessary, together forming a type of "firmware safety net" for your embedded device. This course will teach you best practices for coding standards, code inspections, and static analysis, including coverage of the latest version of the MISRA-C Coding Guidelines. It will also provide in-depth examples of defects that are trapped and removed by these activities.
- Engineers with any level of embedded software experience
- Technical leaders and managers
The following outline is provided as a summary of the major course topics and should not be taken as literally the section-by-subsection lecture breakdown.
- Safety-Critical Software
- Case Studies
- Coding Standards
- Benefits and Justification
- Embedded-Specific Coding Rules
- Integrating into your process
- MISRA-C and MISRA-C++
- Code Inspections
- Quality Metrics
- Integrating into the Process
- Best Practices and Recommendations
- Static Analysis
- Contrasted with Compilers & Dynamic Analysis
- Effective Usage
- Enforcing Coding Standards
- Wrap up
- Lessons Learned
- Putting it All Together
- Key Takeaways
Attendees should have a working familiarity with the C programming language.
Find out More
All Barr Group Training Public and On-site courses may not be videotaped or photographed without consent from Barr Group's executive team.