Software Verification
Section 08: Software Certification (DO-178C)
Definition
The evaluation of the outputs of a software lifecycle process to ensure correctness and consistency with respect to the inputs and standards for that process. In DO-178C, verification encompasses three primary methods: (1) Reviews — systematic examination of lifecycle data by qualified personnel to detect errors, omissions, and inconsistencies; (2) Analyses — examination of lifecycle data using mathematical or logical reasoning to detect errors or demonstrate properties (e.g., data flow analysis, control flow analysis, stack usage analysis, timing analysis); (3) Testing — execution of the software with defined inputs and comparison of actual outputs to expected outputs. Requirements-based testing is the primary testing strategy, supplemented by structural coverage analysis to assess the thoroughness of the test set.
Where This Shows Up
Verification is the largest effort area in DO-178C compliance, often consuming more resources than development itself, particularly at higher DALs. The verification process must demonstrate that the software meets its requirements (requirements-based testing), that the requirements are correctly implemented (requirements reviews), that the software architecture is sound (design reviews), and that the code is correct and complete (code reviews and structural coverage analysis). The rigor and independence of verification activities scale with the software level.
Primary Sources
Defines the software verification process, its objectives, methods, and the relationship between testing, analysis, and review.
Related Terms
Need help navigating certification?
Understanding the terminology is the first step. If you need expert guidance on DO-178C, DO-254, ARP4754B, or any aspect of FAA, EASA, or TCCA certification, our team is here to help.