RTCA/DO-178C, published in 2011 is the de facto guidance document used in the development of airborne software and was published as an improved revision to RTCA/DO-178B. Although not a required standard, the FAA continually refers to DO-178B and DO-178C as the recommended means to address safety in software. Today the use of computer technology in avionics applications is widespread; from the F-35 Joint Strike Fighter to commercial aircraft such as the Boeing 787 and Airbus A380. Applications range from safety-critical flight control functions to on-board passenger entertainment systems. Users in the military community and unmanned systems are also relying on DO-178 as the guidance document for software development.
The level of effort to comply with the objectives of DO-178 will vary based on software criticality (depending on how software can contribute to a failure condition). The level of effort is also proportional to the size of the software under consideration. DO-178 defines five software levels, each related directly to the failure condition that can result from anomalous behavior of the software. The software level definitions given in DO-178 and the number of objectives required to satisfy the requirements of each level are shown below.