Differences and Challenges between DO-178B and DO-178C

Differences and Challenges between DO-178B and DO-178C

Table of Contents

Introduction

In the field of avionics software development, adherence to rigorous standards is crucial to ensure the safety and reliability of aircraft systems. Two prominent standards in this domain are DO-178B and its successor, DO-178C. DO-178B, also known as Software Considerations in Airborne Systems and Equipment Certification, was first released in 1992 by the Radio Technical Commission for Aeronautics (RTCA). DO-178C, or Software Considerations in Airborne Systems and Equipment Certification – Change 1, is the updated version that was published in 2011. This article will delve into the key differences and challenges between DO-178B and DO-178C.

Scope and Objectives

DO-178B

DO-178B provides guidelines for the development of software used in airborne systems and equipment. It outlines the objectives and activities required to achieve software certification in various levels of criticality, ranging from Level A (most critical) to Level E (least critical). The standard focuses on ensuring that the software performs its intended functions reliably, correctly, and safely.

DO-178C

DO-178C builds upon the foundation laid by DO-178B and introduces several enhancements and clarifications. It retains the same objectives and criticality levels but provides updated guidance to address technological advancements and lessons learned from previous experiences. DO-178C also introduces a more risk-based approach, placing greater emphasis on determining the criticality of software functions based on their impact on system safety.

Key Differences

Enhanced Lifecycle Processes

DO-178C introduces a more detailed set of lifecycle processes compared to DO-178B. It places additional emphasis on requirements, design, coding, and testing activities. The new processes defined in DO-178C include software modeling, formal methods, and object-oriented technology, which were not explicitly addressed in DO-178B.

Independence and Verification

DO-178C strengthens the requirement for independence between software development and verification activities. It emphasizes the need for independence in the verification of software requirements, design, coding, and test cases. This ensures that different perspectives are applied to evaluate software functionality, reducing the likelihood of bias and increasing the overall quality of the verification process.

Formal Methods and Model-Based Development

DO-178C encourages the use of formal methods and model-based development techniques to enhance software quality and reliability. These approaches involve mathematical analysis and formal reasoning to verify software correctness and safety properties. While DO-178B did not explicitly address these techniques, DO-178C provides guidance on their integration into the software development process.

Tool Qualification

DO-178C introduces a more comprehensive approach to tool qualification. It recognizes the increasing reliance on software development tools and the need to ensure their proper usage and reliability. The standard provides guidance on evaluating and qualifying tools based on their impact on software development and safety-criticality.

Supplemental Guidelines

DO-178C incorporates several supplementary documents known as Technical Supplements (TS). These supplements address specific topics such as model-based development, object-oriented technology, and formal methods. These TS documents provide additional guidance and clarification to assist developers in implementing best practices and meeting the requirements of DO-178C.

Challenges

Transition and Adaptation

One of the primary challenges in migrating from DO-178B to DO-178C is the need for organizations and developers to adapt to the updated guidelines and processes. The transition may require significant changes in development methodologies, toolchains, and organizational workflows. Ensuring a smooth transition while maintaining safety and reliability can be a complex and resource-intensive task.

Increased Documentation Requirements

DO-178C places greater emphasis on documentation compared to DO-178B. The standard requires more comprehensive documentation for activities such as requirements, design, coding, and testing. Meeting these documentation requirements necessitates additional effort and resources from development teams, which can pose challenges in terms of time, cost, and coordination.

Tool Qualification and Certification

With the increased reliance on software development tools, ensuring their proper qualification and certification is crucial. DO-178C introduces more stringent requirements for tool qualification, including the need to demonstrate that tools do not introduce any adverse effects on software safety. Organizations must invest in comprehensive tool qualification processes and documentation to satisfy these requirements, which can be a complex and time-consuming endeavor.

Compliance with New Processes and Techniques

DO-178C introduces new processes and techniques, such as formal methods and model-based development, which may be unfamiliar to organizations accustomed to DO-178B practices. Achieving compliance with these new approaches may require additional training, expertise, and investment in new tools and infrastructure. Organizations need to address these challenges to effectively adopt the updated standard.

Conclusion

DO-178B and DO-178C are important standards in the development of airborne software systems. While DO-178C builds upon the foundation laid by DO-178B, it introduces several significant differences and challenges. The enhanced lifecycle processes, emphasis on independence and verification, the inclusion of formal methods and model-based development, and comprehensive tool qualification requirements distinguish DO-178C from its predecessor. Organizations transitioning from DO-178B to DO-178C must navigate the challenges of adaptation, increased documentation requirements, tool qualification, and compliance with new processes and techniques. By addressing these challenges effectively, developers can ensure the continued safety, reliability, and compliance of their avionics software systems.

Don’t forget to share this post!

Top