Traceability and trace data

From a pure traceability standpoint, one of the main changes brings by DO-178C/ED-12C is to consider the “trace data” as new software life cycle data. However, what these trace data should look like is not specified, as their definition in the glossary allows multiple formats to be used: The traceability linkages may be shown with different techniques: « Data providing evidence of traceability of development and verification processes’ software life cycle data without implying the production of any particular artifact. Trace data may show linkages, for example, through the use of naming conventions or through the use of references or pointers either embedded in or external to the software life cycle data »

Trace data should be used wherever it is necessary to establish an association between two life cycle data items. The new wording requires bi-directionality of this association: §11.21

Trace Data establishes the associations between life cycle data items contents. Trace Data should be provided that demonstrates bi-directional associations between:

  1. System requirements allocated to software and high-level requirements.
  2. High-level requirements and low-level requirements.
  3. Low-level requirements and Source Code.
  4. Software Requirements and test cases.
  5. Test cases and test procedures

Another clarification is to explicitly require that rationale for derived requirements be provided during the development process. The wording “reason for their existence“ has been added in the activity description, in addition to the analysis. This rationale should also be passed to the system process together with the requirements themselves.