Whitepaper: Developing
DO-178B/C Compliant Software for
Airborne Systems

Developing DO-178B/C compliant software for airborne systems is not a simple undertaking. Luckily, Parasoft makes it easier.

Learn why policy-driven development is central to DO-178B/C compliance.

Parasoft Functional Safety & Compliance 4

Download the whitepaper for the complete details on how Parasoft eases the burden of compliance with an integrated solution for automating software verification, validation processes and software quality tasks.

Key takeaways:

  • Background about DO-178B/C
  • Key differences between the versions
  • Why policy-driven development is central to DO-178B/C compliance
  • How Parasoft DTP and Parasoft C/C++test help organizations achieve DO-178B/C compliance
  • The FAA’s airworthiness requirements determine whether the agency will issue its approval document called a TSO or technical standard order.
  • The standard is not explicitly mandated, but it’s a critical component of the TSO process, thus a requirement for gaining FAA approval.
  • DO-178B/C is descriptive rather than prescriptive. The standard describes the goals of the processes; not the methods by which they’re achieved.
  • DO-178B/C provides a detailed framework for integrating a policy-driven software development strategy. Specifying the tasks that need to be accomplished in order to reduce risks forms the crux of the standard.
  • The key to managing risks is to align software development activities with your organization’s business goals. This can be achieved through policy-driven development, which ensures engineers deliver software according to your expectations.
  • Policy-driven development involves:
    1. Clearly defining expectations and documenting them in understandable polices
    2. Training the engineers on the business objectives driving those policies
    3. Enforcing the policies in an automated, unobtrusive way

By adopting a policy-driven strategy, businesses can accurately measure productivity and application quality, which lowers development costs and reduces risk.

  • With public safety, potential litigation, market position and other consequences on the line, it benefits software development teams and people in the traditional business management positions to come together on policy and implement the strategy into their software development lifecycle.
  • Parasoft DTP and Parasoft C/C++test is an integrated solution for automating software verification and validation processes and software quality tasks specified in DO-178B/C, including static analysis, data flow static analysis, metrics analysis, peer code review, unit testing and runtime error detection. This provides teams a practical way to prevent, expose and correct errors in functional safety systems.
  • Parasoft prioritizes potential defects based on configurable severity assignments and automatically assigns them to the engineer responsible for the code. Direct links to the problematic code and a description of how to fix it are distributed to his or her IDE. For embedded and cross-platform development, Parasoft C/C++test can be used in both host-based and target-based code analysis and test flows.

Notable features:

  • Automated code analysis
  • Flow analysis
  • Code review
  • Runtime error detection
  • Unit and integration testing with coverage analysis
  • Configurable reports
  • Integration with Parasoft development testing solution

This table provides a sampling of key DO-178B/C principles matched with Parasoft DTP and Parasoft C/C++test. For a more complete list, download the Whitepaper.

5.3.2: Software coding process activities

Method

Parasoft approach

The Source Code should implement the low-level requirements and conform to the software architecture.

The Source Code should conform to the Software Code Standards.

The Source Code should be traceable to the Design Description.

Inadequate or incorrect inputs detected during the software coding process should be provided to the software requirements process, software design.

Rules that enforce industry best practices are built-in. Users can select entire libraries based on industry standards, individual rules, or create custom rules based on the organization’s policies.

Parasoft DTP, coupled with a suite of testing tools, such as Parasoft C/C++test, enables bi-directional traceability from code to requirement. This ensures that the source code is implemented correctly.

 

6.3.3: Reviews and analyses of the software architecture

Method

Parasoft approach

The objective of these reviews and analyses is to detect and report errors that may have been introduced during the development of the software architecture. These reviews and analyses confirm that the software architecture satisfies these objectives:

  •  Compatibility with the high-level requirements: The objective is to ensure that the software architecture does not conflict with the high-level requirements, especially functions that ensure system integrity, for example, partitioning schemes.
  • Consistency: The objective is to ensure that a correct relationship exists between the components of the software architecture. This relationship exists via data flow and control flow.
  • Compatibility with the target computer: The objective is to ensure that no conflicts exist, especially initialization, asynchronous operation, synchronization and interrupts, between the software architecture and the hardware/ software features of the target computer.
  • Verifiability: The objective is to ensure that the software architecture can be verified, for example, there are no unbounded recursive algorithms.
  • Conformance to standards: The objective is to ensure that the Software Design Standards were followed during the software design process and that deviations to the standards are justified, especially complexity restrictions and design constructs that would not comply with the system safety objectives.
  • Partitioning integrity: The objective is to ensure that partitioning breaches are prevented or isolated.

Configure Parasoft rules to enforce any kind of policy, including a policy that specifies software architecture and a policy based on target computer specifications.

Parasoft includes software development testing tools, such as static analysis, unit testing, code coverage analysis, peer review analysis, and runtime error detection to verify that the code performs as expected.

Rules that enforce industry best practices are built-in. Users can select entire libraries based on industry standards, individual rules, or create custom rules based on the organization’s policies.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

About Parasoft

Parasoft’s software testing solutions support the entire software development process, from when the developer writes the first line of code all the way through unit and functional testing, to performance and security testing, leveraging simulated test environments along the way. Parasoft's unique analytics platform aggregates data from across all testing practices, providing insights up and down the testing pyramid to enable organizations to succeed in today's most strategic development initiatives, including Agile/DevOps, Continuous Testing, and the complexities of IoT. Parasoft’s automated software testing innovations fuel software development organizations, helping teams reduce the time, cost, and effort of delivering high-quality software to the market.