SC-205/WG-12 was responsible for revising DO-178B/ED-12B to bring it up to date with respect to current software development and verification technologies. The structure of the document remains largely the same from B to C. Example changes include: • Provide clearer language and terminology, provide more consistency • More objectives (for Levels A, B, and C) • Clarified the "hidden objective", applicable to Level A, which was implied by
DO-178B in section 6.4.4.2b but not listed in the Annex A tables. This objective is now explicitly listed in DO-178C, Annex A, Table A-7, Objective 9: "Verification of additional code, that cannot be traced to Source Code, is achieved." • Parameter Data Item Files - Provides separate information that influences the behavior of an executable object code (without changing it). An example would be a
configuration file that sets up the schedule and major time frames of a partitioned operating system. The parameter data item file must be verified together with the executable object code, or else it must be tested for all possible ranges of the parameter data items. •
DO-330 "Software Tool Qualification Considerations", a new "domain independent, external document", was developed to provide guidance for an acceptable tool qualification process. While DO-178B was used as the basis of the development of this new document, the text was adapted to be directly and separately applicable to tool development and expanded to address all tool aspects. As a domain-independent, stand-alone document, DO-330 is intended for use not only in support of DO-178C/ED-12C, but
DO-278/ED-109,
DO-254/ED-80, and
DO-200 as well, even for non-aviation applications, e.g.,
ISO 26262 or
ECSS. Consequently, tool qualification guidance was removed in DO-178C, replaced therein with guidance for deciding when to apply DO-330 tool qualification guidance to tools used in a DO-178C context. • Technology supplements were added to
extend the guidance of the DO-178C document to specific techniques. Rather than expanding the prior text to account for all current and future software development techniques, supplements are made available to explicitly add, delete, or otherwise modify the guidance of the core standard for application to specific techniques or technologies. All guidance in these supplements are written in the context of the affected guidance elements in DO-178C and so should be considered as at the same level of authority as that core document. •
DO-331 "Model-Based Development and Verification Supplement to DO-178C and DO-278A" - addressing Model-Based Development (MBD) and verification and the ability to use modeling techniques to improve development and verification while avoiding pitfalls inherent in some modeling methods •
DO-332 "Object-Oriented Technology and Related Techniques Supplement to DO-178C and DO-278A" - addressing
object-oriented software and the conditions under which it may be used •
DO-333 "Formal Methods Supplement to DO-178C and DO-278A" - addressing
formal methods to complement (but not replace) testing
Guidelines vs. guidance DO-178B was not completely consistent in the use of the terms
guidelines and
guidance within the text. "Guidance" conveys a slightly stronger sense of obligation than "guidelines". As such, with the DO-178C, the SCWG has settled on the use of "guidance" for all the statements that are considered as "recommendations", replacing the remaining instances of "guidelines" with "supporting information" and using that phrase wherever the text is more "information" oriented than "recommendation" oriented. The entire
DO-248C/ED-94C document,
Supporting Information for DO-178C and DO-278A, falls into the "supporting information" category, not guidance.
Sample text difference between DO-178B and DO-178C Chapter 6.1 defines the purpose for the software verification process. DO-178C adds the following statement about the Executable Object Code: • "The Executable Object Code satisfies the software requirements (that is, intended function), and provides confidence in the absence of unintended functionality." • "The Executable Object Code is robust with respect to the software requirements that it can respond correctly to abnormal inputs and conditions." As a comparison, DO-178B states the following with regard to the Executable Object Code: • "The Executable Object Code satisfies the software requirements." The additional Revision C clarification filled a gap that a software developer could have encountered when interpreting the Revision B document. ==See also==