Requirements-Based Testing

Section 08: Software Certification (DO-178C)

Definition

A testing strategy in which test cases are derived from the software requirements (both HLRs and, where applicable, LLRs) rather than from the software implementation. Each test case is designed to verify one or more specific requirements by defining inputs that exercise the required behavior and expected outputs that demonstrate the requirement is correctly implemented. Requirements-based testing includes normal range testing (inputs within specified operating ranges), boundary value testing (inputs at the boundaries of specified ranges), and robustness testing (inputs outside specified ranges, where applicable). The goal is to demonstrate that every requirement is correctly implemented, that the software produces the correct outputs for the specified inputs, and that no unintended function exists.

Where This Shows Up

Requirements-based testing is the cornerstone of DO-178C verification. It ensures that the software is verified against its intended behavior as specified in requirements, not against its implementation. This approach is independent of the implementation: the test cases are derived from the requirements, so they verify whether the code does what it should, not whether the code does what it does. Structural coverage analysis is used as a complementary measure to assess whether requirements-based tests adequately exercise the code structure.

Primary Sources

RTCA DO-178C, Section 6.4

Defines requirements-based testing strategy and the criteria for test case development.

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.