DO-178C is a set of standards and guidelines for the development of commercial aircraft software. It was published by the Radio Technical Commission for Aeronautics (RTCA) in 1992 and has since been updated several times, with the most recent version being DO-178C/ED-12C, released in 2011.
DO-178C is often referred to as the “Software Considerations in Airborne Systems and Equipment Certification” standard. It provides guidance on how to conduct a software development project in order to ensure that the resulting software is safe for use in an aircraft.
DO-178C is not a mandatory standard, but it is widely used in the aviation industry and is required by many aviation authorities, such as the Federal Aviation Administration (FAA) in the United States when certifying new aircraft.
In this article, we will discuss some great requirements management software organizations can use for DO-178C compliance, standard checklist, and essential templates.
Best DO-178C Compliance Tools
When it comes to requirements management tools for DO-178C, which is a standard for the development of software in airborne systems, there are several options available. Here are some popular requirements management tools that are often used in the context of DO-178C compliance:
Visure Requirements ALM Platform
Requirement management tools such as Visure Requirements can support DO-178B by providing end-to-end traceability between all the requirements, verification, problem reporting, checklists, and project artifacts. It offers a cohesive environment that acts as a centralized and open repository for all artifacts, including DO-178B objectives.
With Visure Requirements, it’s easy to standardize and enforce the defined processes across the organization to comply with the DO-178B guideline and do so in an accessible, collaborative, and cost-effective manner.
Thanks to its versatile Integration Platform, Visure Requirements can integrate with third-party, commercial, or proprietary, tools to extend the change impact analysis features to elements out of its scope in order to further support DO-178B.
Other requirements management features of Visure Requirements include filters, user-defined views, role-based user interface, graphically defined requirement process and traceability, built-in workflows, an unlimited number of user-defined attributes, version management, and comparison, and roll-back to older versions, among others.
- Requirements Management: Requirements management is a critical process in software development, especially in safety-critical domains like aerospace. Visure Requirements ALM platform offers features for effective requirements management. It allows you to capture, analyze, document, and track requirements throughout the software development lifecycle. It provides capabilities for requirements elicitation, organization, prioritization, and allocation.
- Traceability: Traceability is an essential aspect of requirements management, ensuring that requirements are properly connected to design elements, test cases, and other artifacts. Visure Requirements ALM platform enables traceability by establishing and maintaining links between different stages of the software development process. It allows you to trace requirements from their origins through design, implementation, and testing, ensuring that each requirement is addressed and validated.
- Risk Management: Risk management plays a crucial role in safety-critical systems development. Visure Requirements ALM platform facilitates risk management by providing tools to identify, assess, and mitigate risks associated with requirements. It allows you to define risk levels, prioritize risks, and link them to the corresponding requirements. This helps in ensuring that potential risks are adequately addressed throughout the development process.
- Change Management: Change management is essential in any software development project to handle modifications to requirements effectively. Visure Requirements ALM platform offers change management capabilities that allow you to track and manage requirement changes. It enables versioning, change tracking, and impact analysis to understand the implications of required modifications and ensure proper change control.
- Configuration Management: Configuration management involves managing and controlling the versions, baselines, and variations of software artifacts. Visure Requirements ALM platform provides configuration management features that enable you to manage different versions of requirements, track changes, and maintain baselines. It ensures proper control and traceability of requirements throughout the development lifecycle.
- Workflows: Workflows define the sequence of activities and their dependencies in the software development process. Visure Requirements ALM platform supports customizable workflows that align with the DO-178C standard or any other specific process you follow. It allows you to define stages, transitions, and approval processes for requirements management, ensuring a structured and controlled development environment.
- Requirements Documentation: Documentation is a vital part of software development, particularly in safety-critical domains where thorough documentation is required for certification. Visure Requirements ALM platform offers capabilities to generate comprehensive requirements documentation automatically. It provides templates, customizable reports, and traceability matrices to produce high-quality documentation that complies with the DO-178C standard or any other relevant regulations.
Enterprise Architect is a popular modeling and design tool that supports the development of software-intensive systems in various industries, including aerospace. While Enterprise Architect itself is not specifically tailored for DO-178C, it provides a flexible platform that can be customized and configured to align with the requirements and processes defined by DO-178C. Here’s how Enterprise Architect can be used in the context of DO-178C:
- Requirements Management: Enterprise Architect allows you to capture, organize, and manage requirements using its built-in Requirements Management capabilities. You can define requirements, assign attributes, and establish traceability links between requirements and other design artifacts.
- Model-based Design: Enterprise Architect supports the creation and visualization of system and software models, including block diagrams, state machines, data flow diagrams, and activity diagrams. These models can help you specify and document system architecture, software components, and interfaces, which are essential for DO-178C compliance.
- Traceability and Impact Analysis: Enterprise Architect enables you to establish and manage traceability links between different design artifacts, such as requirements, models, source code, and tests. This traceability helps in demonstrating compliance with DO-178C requirements and performing impact analysis when changes occur.
- Test Management: Enterprise Architect provides features for managing test cases, test procedures, and test results. You can define test cases based on requirements and track their execution and coverage. This helps in verifying that the software meets the specified requirements and supports DO-178C’s testing requirements.
- Configuration Management: Enterprise Architect integrates with version control systems, allowing you to manage different versions of models, requirements, and other design artifacts. This ensures proper configuration management, which is an important aspect of DO-178C compliance.
- Documentation: Enterprise Architect offers flexible documentation generation capabilities. You can generate documents and reports based on predefined templates or customize them to match your organization’s documentation standards and DO-178C requirements. This helps in generating the necessary documentation required for DO-178C certification.
LDRA is a software testing and verification tool suite that provides support for the development and verification of safety-critical software systems, including those developed in compliance with the DO-178C standard. LDRA offers a range of tools and features that assist in meeting DO-178C objectives. Here’s how LDRA can be used in the context of DO-178C:
- Requirements Traceability: LDRA tools support the establishment and management of traceability links between software requirements, design artifacts, and verification activities. It allows you to trace requirements throughout the software development lifecycle and demonstrate compliance with DO-178C’s traceability requirements.
- Structural Coverage Analysis: LDRA provides structural coverage analysis tools that help verify that the software has been adequately exercised during testing. It measures code coverage metrics, such as statement coverage, branch coverage, and MC/DC (Modified Condition/Decision Coverage), which are required by DO-178C.
- Static Analysis: LDRA tools offer static analysis capabilities to identify potential coding and design issues early in the development process. It performs code inspections, checks for compliance with coding standards, and detects potential software defects, improving code quality and supporting DO-178C’s software verification requirements.
- Unit Testing: LDRA allows you to create and execute unit tests for individual software components. It provides tools for test case generation, test execution, and results analysis. Unit testing is an essential part of DO-178C’s software verification process, and LDRA supports the creation and management of unit tests to demonstrate software correctness.
- Structural Coverage Verification: LDRA tools assist in the verification of structural coverage requirements specified in DO-178C. They provide reports and metrics that demonstrate the achieved level of coverage for different codes and decision points, helping you ensure compliance with DO-178C’s coverage objectives.
IBM DOORS (Dynamic Object-Oriented Requirements System) is a popular requirements management tool that can be used in the context of DO-178C compliance. DOORS provides capabilities to capture, analyze, and manage requirements throughout the software development lifecycle, supporting the rigorous requirements management required by DO-178C. Here’s how IBM DOORS can be used in the context of DO-178C:
- Requirements Capture and Organization: DOORS allows you to capture requirements in a structured manner, enabling you to define requirements hierarchies, attributes, and relationships. You can create and manage requirements baselines, ensuring version control and configuration management as per DO-178C requirements.
- Traceability Management: DOORS provides robust traceability capabilities, allowing you to establish and manage traceability links between requirements, design artifacts, test cases, and other related items. You can demonstrate traceability compliance with DO-178C objectives by easily tracking the flow of requirements throughout the software development lifecycle.
- Change Management: DOORS supports change management by providing features for tracking and managing requirement changes. It enables you to record and control changes, track the history of changes, and assess the impact of changes on other artifacts. This helps in maintaining proper change control as required by DO-178C.
- Requirement Baseline and Configuration Management: DOORS offers capabilities for managing requirement baselines and ensuring proper configuration management. You can create and manage multiple baselines, compare different baselines, and roll back to previous versions when needed. This helps in maintaining the integrity of requirements and complying with DO-178C’s configuration management requirements.
- Requirements Verification: DOORS facilitates requirements verification by providing features for associating verification activities, such as test cases or reviews, with requirements. You can track the verification status of each requirement and generate reports to demonstrate compliance with DO-178C’s verification objectives.
Polarion is a comprehensive Application Lifecycle Management (ALM) platform that can be used to support DO-178C compliance. Polarion provides a range of features and functionalities that are relevant to the requirements, traceability, and verification aspects of DO-178C. Here’s how Polarion can be used in the context of DO-178C:
- Requirements Management: Polarion allows you to capture, organize, and manage requirements effectively. You can define requirements hierarchies, attributes, and relationships, and ensure proper version control and baselining. Polarion provides features for requirements traceability, impact analysis, and change management, ensuring compliance with DO-178C’s requirements management objectives.
- Traceability Management: Polarion offers robust traceability capabilities, allowing you to establish and manage traceability links between requirements, design artifacts, test cases, and other related items. You can easily visualize and track traceability relationships, ensuring comprehensive coverage and compliance with DO-178C’s traceability requirements.
- Change Management: Polarion supports change management by providing features for tracking and managing requirement changes. It allows you to record and track changes, perform impact analysis, and manage change approvals and baselines. These capabilities help in maintaining proper change control and compliance with DO-178C’s change management requirements.
- Test Management: Polarion offers test management features that support the creation, execution, and tracking of test cases and test results. You can define test cases based on requirements, execute tests, and track coverage and results. Polarion’s test management capabilities help in demonstrating compliance with DO-178C’s testing objectives.
- Workflow and Process Automation: Polarion allows you to define and customize workflows to match your organization’s development process and DO-178C requirements. You can configure review and approval processes, automate notifications and escalations, and enforce compliance with predefined processes. This helps in ensuring consistency and adherence to DO-178C’s workflow requirements.
Below is a high-level checklist for DO-178C compliance. Please note that this checklist is not exhaustive and should be adapted to your specific project and organization requirements:
- Develop a project plan that includes activities, milestones, and resources for each phase of the software development life cycle.
- Identify the software’s criticality level (DAL A, B, C, or D) based on safety assessment.
- Define the software development and verification processes, including their objectives, activities, and artifacts.
- Requirements Development:
- Define and capture software requirements, ensuring they are complete, consistent, and traceable.
- Perform requirements analysis, including identifying system-level requirements and deriving software requirements.
- Allocate software requirements to specific software components or functions.
- Software Design:
- Develop a software architecture and design that satisfies the allocated requirements.
- Document the software design, including interfaces, data structures, algorithms, and error-handling mechanisms.
- Ensure that the software design is modular, maintainable, and satisfies safety and reliability considerations.
- Coding and Unit Testing:
- Write code according to coding standards and guidelines.
- Perform unit testing to verify the correct implementation of individual software components.
- Ensure that code coverage metrics, such as statement coverage and decision coverage, are met.
- Integration and Verification:
- Integrate and verify the software components to ensure they function correctly together.
- Conduct software integration testing, including test case development and execution.
- Verify the software against the allocated requirements, ensuring traceability is maintained.
- Validation and System Testing:
- Develop and execute system-level tests to validate the software against the system requirements.
- Perform functional testing, performance testing, and any other required testing activities.
- Document test results, including any discrepancies or anomalies observed.
- Configuration Management:
- Establish and maintain a configuration management system for software and related artifacts.
- Control and track changes to requirements, design, code, and test artifacts.
- Ensure that baselines and versions of artifacts are properly managed and identified.
- Generate and maintain software development plans, software requirements specifications, software design documents, and other relevant documentation.
- Produce traceability matrices demonstrating the traceability of requirements through all stages of development.
- Generate software verification reports, including test plans, test procedures, and test results.
- Quality Assurance:
- Establish a quality assurance process to ensure compliance with DO-178C objectives.
- Conduct regular audits and reviews to verify compliance with established processes and standards.
- Perform configuration audits to ensure consistency and correctness of the software baselines.
- Safety Considerations:
- Identify and analyze potential hazards and safety risks associated with the software.
- Develop and implement appropriate safety strategies and mechanisms to mitigate identified risks.
- Generate safety assessment reports, including safety plans, hazard analysis, and safety verification evidence.
- Prepare the software and associated documentation for certification by the regulatory authority.
- Compile all required artifacts and evidence to demonstrate compliance with DO-178C objectives.
- Submit the certification package to the regulatory authority and address any findings or inquiries.
It’s important to note that DO-178C compliance requires a thorough understanding of the standard and its objectives. Consultation with domain experts, adherence to industry best practices, and the use of appropriate tools can greatly facilitate the compliance process.
Essential DO-178C Templates
DO-178C does not provide specific templates for documentation. However, there are certain essential documents that are typically created during the software development process to demonstrate compliance with DO-178C objectives. Here are some of the essential documents commonly used in DO-178C compliance:
Software Development Plan (SDP):
The SDP outlines the software development approach, methodologies, and activities to be followed throughout the project. It describes the project organization, responsibilities, and schedules, and identifies the standards and processes to be applied.
Software Verification Plan (SVP):
The SVP outlines the approach and methodologies for software verification activities. It defines the verification objectives, strategies, test coverage criteria, and the verification environment. The SVP also includes details about the test environment, tools, and test cases to be used.
Software Requirements Document (SRD):
The SRD captures the software requirements derived from system-level requirements. It describes the functional and non-functional requirements, including safety requirements, performance requirements, and any constraints that apply to the software.
Software Design Description (SDD):
The SDD provides an overview of the software architecture and design. It includes block diagrams, data flow diagrams, state diagrams, and any other necessary diagrams or descriptions that illustrate the structure and behavior of the software components.
Software Verification Cases and Procedures (SVCP):
The SVCP document contains the test cases and procedures for verifying the software requirements. It describes the test objectives, test inputs, expected outputs, and the pass/fail criteria for each test case. It also provides instructions for executing the tests.
Software Configuration Management Plan (SCMP):
The SCMP defines the configuration management procedures and processes to be followed during software development. It includes details about version control, baselines, change control, and the identification and management of configuration items.
Software Quality Assurance Plan (SQAP):
The SQAP outlines the quality assurance activities and processes to be followed throughout the software development lifecycle. It includes details about audits, reviews, and inspections to ensure compliance with DO-178C objectives and standards.
Software Accomplishment Summary (SAS):
The SAS document provides a summary of the activities, artifacts, and evidence produced during the software development and verification process. It serves as a comprehensive record of the compliance activities undertaken and the evidence generated to demonstrate compliance with DO-178C.
It’s important to note that the exact structure and content of these documents may vary depending on the organization and project-specific requirements. The templates and formats for these documents can also vary. It’s recommended to consult with industry experts, refers to DO-178C guidance material, and consider organizational and project-specific needs when creating these essential documents.
DO-178C is an internationally accepted standard used to ensure that avionics systems are properly tested and verified for safety. There are several tools, checklists, and templates that can help your organization adhere to the standard. Utilizing technological advances, like the Visure Requirements ALM Platform, you can be sure you’re fully compliant with DO-178C guidelines while having greater visibility on projects for timely resolution of any issues or risks associated with DO-178C. Why take the risk of manual data entry and checking for issues when there is a solution like Visure that can do it all in one convenient package? Give it a try with a free 30-day trial and see how easy maintaining compliance can be!