0% found this document useful (0 votes)
5 views4 pages

DO-178

DO-178C is a standard for the development, verification, and certification of software in airborne systems, ensuring safety and reliability in aviation. It outlines processes across the software lifecycle, including planning, requirements, design, coding, testing, and quality assurance, with a focus on compliance for certification by aviation authorities. The standard categorizes software by criticality levels and mandates rigorous verification to prevent software-related failures that could jeopardize aircraft safety.

Uploaded by

Deniz CANTURK
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as ODT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views4 pages

DO-178

DO-178C is a standard for the development, verification, and certification of software in airborne systems, ensuring safety and reliability in aviation. It outlines processes across the software lifecycle, including planning, requirements, design, coding, testing, and quality assurance, with a focus on compliance for certification by aviation authorities. The standard categorizes software by criticality levels and mandates rigorous verification to prevent software-related failures that could jeopardize aircraft safety.

Uploaded by

Deniz CANTURK
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as ODT, PDF, TXT or read online on Scribd
You are on page 1/ 4

DO-178C, titled Software Considerations in Airborne Systems and Equipment Certification, is

a widely recognized standard developed by RTCA (Radio Technical Commission for


Aeronautics). It provides guidelines for the development, verification, and certification of software
used in airborne systems and equipment. DO-178C is crucial for ensuring that software functions
correctly and reliably in the aviation environment, especially for safety-critical systems.

Overview of DO-178C:
DO-178C outlines the requirements and processes for certifying software that is part of systems
used in commercial, military, and other aerospace applications. It is particularly relevant for
software that could affect the safety of an aircraft or its operations, such as flight control systems,
navigation systems, communication systems, and more. The standard applies to both airborne
software and ground systems involved in certification.

Key Objectives of DO-178C:


• Ensure Software Safety and Reliability: The primary goal of DO-178C is to ensure that
airborne software is developed, tested, and verified rigorously to avoid software-related
failures that could compromise the safety of an aircraft.
• Compliance for Certification: Compliance with DO-178C is required for FAA (Federal
Aviation Administration), EASA (European Union Aviation Safety Agency), and other
regulatory bodies to certify software in airborne systems.
• Software Development Lifecycle: The standard specifies the processes that must be
followed during the software development lifecycle, including design, coding, testing, and
verification.

Structure of DO-178C:
The standard defines a detailed set of processes and objectives to be achieved at different stages of
software development. These are organized in terms of levels of rigor (known as software levels)
based on the criticality of the software and its impact on safety. The standard also includes
certification levels for software, known as DALs (Design Assurance Levels), which range from A
(most critical) to E (least critical).

1. Software Levels (DALs):


• Level A (Catastrophic): Software whose failure would cause a catastrophic failure of the
aircraft (e.g., flight control software).
• Level B (Hazardous): Software whose failure would cause a hazardous failure, but not
catastrophic (e.g., navigation systems).
• Level C (Major): Software whose failure would cause a major failure but would not lead to
hazardous conditions (e.g., engine control systems).
• Level D (Minor): Software whose failure would result in a minor failure, with no significant
effect on safety.
• Level E (No Effect): Software whose failure has no effect on safety or the operation of the
aircraft.
The required rigor and documentation increase as the software level rises.

2. Software Development Processes:


The standard outlines a series of development processes that must be followed for certification.
These processes are organized into five key areas:
1. Planning:
• This involves creating a Software Development Plan that outlines the processes and
objectives for developing the software, including risk management and traceability.
2. Requirements Definition:
• This step ensures that the software meets the necessary functional requirements.
These requirements must be clearly defined, validated, and traceable throughout the
software development lifecycle.
3. Design:
• The software design process involves creating a system architecture and detailed
design for the software, ensuring that it meets both functional and non-functional
requirements.
4. Coding:
• The actual coding of the software is done according to the defined design, adhering
to the coding standards set forth in the development plan. It must also be verified
against the requirements.
5. Testing and Verification:
• Verification of the software is performed to ensure it meets its requirements and
behaves as expected. This includes testing at various levels (unit testing, integration
testing, and system testing), with the level of testing increasing for higher-criticality
software.
6. Configuration Management:
• This ensures that software versions and configuration states are properly managed
and controlled throughout development and certification.
7. Quality Assurance (QA):
• This ensures that the software development process adheres to the required standards
and procedures. It involves regular audits, reviews, and inspections of the software
and its development processes.

3. Verification and Testing:


DO-178C emphasizes rigorous verification through various levels of testing:
• Unit Testing: Validates the functionality of individual software components.
• Integration Testing: Ensures that software components work correctly when integrated.
• System Testing: Validates the software system as a whole, ensuring that it meets the overall
functional and safety requirements.
For higher levels of software (especially Levels A and B), additional levels of testing and
independent verification (by a third party) may be required to ensure compliance with safety and
reliability standards.

4. Traceability:
• Traceability is one of the core principles of DO-178C. Every requirement, design,
implementation, and test must be traceable through the entire software development
lifecycle. This ensures that all aspects of the software can be reviewed for compliance and
that there is a clear record of decisions, changes, and test results.

Key Aspects of DO-178C:


1. Software Verification:
• Verification of software is critical for ensuring compliance with requirements and for
ensuring that the software performs as expected under all conditions. DO-178C requires
both static verification (e.g., inspections, reviews) and dynamic verification (e.g., testing,
simulations).

2. Independence of Verification:
• For software developed at the highest assurance levels (Levels A and B), there must be
independent verification of critical processes, such as requirements definition, design,
coding, and testing. This ensures that biases or mistakes from the development team do not
compromise the software’s safety or performance.

3. Data and Documentation:


• The standard requires extensive documentation to prove compliance with the processes and
objectives of DO-178C. This includes detailed records of design decisions, test results, code
reviews, and configuration management.

4. Tool Qualification:
• DO-178C includes guidelines for qualifying development tools, ensuring that software tools
used for development, testing, and verification meet specific standards for use in the
certification process. This includes compilers, static analyzers, and testing tools.

DO-178C and Its Role in Certification:


DO-178C plays a critical role in the certification of software used in airborne systems. Certification
bodies such as the FAA, EASA, and others require that software in aircraft systems comply with
DO-178C for approval. This ensures that the software is not only functional but also safe and
reliable in the demanding aviation environment.
The certification process involves extensive documentation and evidence that the software has been
developed and verified according to the standards outlined in DO-178C, and that the software is
free from defects that could compromise the safety of the aircraft or its passengers.
Summary of DO-178C:
DO-178C is a rigorous standard for the development, verification, and certification of software
used in airborne systems. It provides detailed guidance on the software lifecycle, including
planning, requirements, design, coding, testing, and quality assurance. The standard establishes
processes to ensure that software meets safety and reliability requirements, and it outlines the
necessary steps for obtaining certification from aviation authorities. Compliance with DO-178C is
essential for ensuring that software used in critical systems (e.g., flight controls, navigation)
operates correctly and safely, reducing the risk of software-related failures that could impact aircraft
safety.

You might also like