External components

Application of DO-178B/ED-12B to development tools for software level A raised concerns on object code to source code traceability and the need for additional verification on object code. There is no further consideration about the object code in DO-330/ED-215. But additional considerations on “external components” were added.

This term is defined in the glossary as « Components of the tool software that are outside the control of the developer of the tool. Examples include primitive functions provided by the operating system or compiler run-time library, or functions provided by a COTS or open source software library ».  Examples are also provided in the FAQ C.2 in an appendix of DO-330/ED-215.

To address these external components, several new objectives are defined:

  • In the design process (§5.2.2.g): The description of the interface should identify all the external components, such as file management routines, primitives, memory allocation calls, and routines supporting the user interface management (for example, command line or display message).
  • The correctness of their identification and of their interfaces are verified during the Tool Architecture review and analyses (§6.1.3.3.e). This is applicable for TQL-1 and 2.
  • The requirements-based test coverage analysis should also verify that the requirements based tests exercise the interface and the functionality of each function of the external components utilized by the tool. This is applicable only for TQL-1.