Explaining Differences Between DO-178c And DO-178b
The DO-178c, also called Software Considerations in Airborne Systems and Equipment Certification, is a document published jointly by RTCA, Inc. and the European Organization for Civil Aviation Equipment (EUROCAE). Certification authorities like the Federal Aviation Administration use the document as a standard for approving commercial aerospace systems. The document was approved in December 2011 and has been available for use since Jan 2012. It essentially replaces the DO-178b.
Specifically, the do-178c is used as a guideline for developing avionics software and testing its reliability. The do-178b was becoming outdated, and the new document was requested to ensure standards were up to date with current software development and other technologies, as well as to improve the terminology.
One of the more notable changes to the DO-178C is the use of clearer, more consistent language. The DO-178B was unclear about certain technologies and frequently used words like “objective,” “purpose,” and “goals,” interchangeably, which was deemed confusing by some. The DO-178C sticks to consistent word usage and does a better job of further defining words in its glossary.
Changes were also made to the document’s annex, most notably the information pertaining to Design Assurance Levels (DAL). DALs for aircraft are broken into multiple levels that describe aviation electronics and possible failures ranging from catastrophic to minor.
Level A: This level pertains to critical flight electronics. Malfunctions or failures in these components would cause severely unsafe conditions and would likely result in the deaths of those aboard the craft.
Level B: This level covers flight hardware where malfunctions would cause a serious condition that could potentially result in deaths.
Level C: This level describes flight electronics whose failure or malfunction could cause a condition likely resulting in major injuries.
Level D: This level covers hardware whose malfunction or failure could result in minor injury.
Level E: This level describes non-critical flight electronics whose failure or malfunction would have no immediate effect on the operations of the craft.
In the DO-178C, more objectives were added for levels A, B, and C. Additionally, Level A received further clarification in its 9th objective: “Verification of additional code, that cannot be traced to Source Code, is achieved.”
Addition of DO-330
The DO-178C also introduced more supplementary material to establish standards for aviation equipment outside of software development and electronics. One of the most notable of these supplementary materials was the DO-330.
This document is a guideline on qualifications for tools used in developing avionics software. It clarifies responsibilities for both tool vendors and tool users as well as qualification objectives for developers building tools for avionics software design. These tool developers typically lack a background in aviation software guidance, so standardized guidelines are needed to prevent confusion between parties.
Goals and Effects on Software
Ultimately, the purpose of the DO-178C was to be a practical and cost-effective set of guidelines that was flexible enough to be used with varying development models. With little government oversight, the document was instead written by industry professionals to be as informative and reliable as possible.
The expectations outlined in the DO-178C are far more detailed than those of the previous document. The new document requires much more software testing in general, and the documentation requirements also increase along with how critical the software is. Requirements for testing coverage are broken into levels A-E, with Level D requiring standardized testing protocols and all higher levels to be significantly more rigorous. Generally speaking, all software needs to be tested for all possible conditions, and the software should demonstrate the ability to reach all possible outcomes for each condition.
With these improved standards, avionics software developers and users can rest assured that their equipment is as reliable as possible.