DO-331: Model Based Development and Verification
Model-based design technologies can reduce the effort needed to design and test compliant software. Some benefits of using model-based design include being able to simulate software behavior, supporting unambiguous expression of requirements and software architecture, allowing automated code generation, and being able to perform some verification activities earlier in the software life cycle than when not using model-based design techniques.
RTCA DO-331 (Model-Based Development and Verification Supplement to DO-178C and DO-278A) provides additional objectives that apply when using model-based design in DO-178C projects, and clarification of how existing DO-178C objectives and activities apply to projects using model-based design.
One of the key additional verification activities discussed in DO-330 is model coverage analysis, which can detect unintended functionality in the model. As per DO-330, performing model coverage analysis does not eliminate the need to perform coverage analysis of the generated code that will actually execute.
The simulation tools provided by model-based design tools can reduce verification effort by providing a means to produce evidence that a model complies with its requirements. As per DO-330, using simulation does not eliminate the need to perform testing of the executable object code on the target hardware.
If you choose to use model-based design processes in a DO-178C project, you will need to understand the guidance in DO-331 and identify model-based design tools, as well as your verification and tool qualification strategies, in your DO-178C planning documents.
Learn more about model-based software testing here.