null
July 2, 2018

Best Practices for DO-178C Compliance

Security & Compliance
Application Lifecycle Management

Everyone who boards a plane assumes that it will stay in the air throughout their journey. The reason? Airborne vehicles — whether a commercial airline or a military jet — need to comply with functional safety standards.

That’s why DO-178C compliance is so critical. It protects the passengers and crew on board — as well as the developers of the hardware and software on the aircraft.

But achieving compliance can be a challenge.

What Is DO-178C?

DO-178C Software Considerations in Airborne Systems and Equipment Certification is a standard used in the aerospace and military/defense industries. It's an update to DO-178B.

Compliance with this standard is required to receive flight-worthiness certification. Without it, you (literally) won’t get your plane off the ground.

Software Levels for Safety

DO-178C classifies safety in five levels. Each level corresponds to the consequence if the software fails.

  • A: Catastrophic
  • B: Hazardous
  • C: Major
  • D: Minor
  • E: No Safety Effect

These software levels are designated based on risk. And the higher the risk, the more safety objectives need to be met. (And the more difficult it will be to prove compliance.)

Levels A through C are the most severe. Level A software failures may result in fatalities through a plane crash. Level B software failures may result in passenger injuries. Level C software failures may cause passenger discomfort.

Levels D and E are much more minor. Level D software failures cause passenger inconvenience, such as flight delays. And Level E software failures have no impact on safety.

How to Achieve DO-178C Compliance Across Development

Achieving compliance with DO-178C is important. And it needs to be done in all aspects of development.

Planning

Planning is critical. You need to plan what you’re going to deliver to market and when — and how you’ll be compliant in your processes.

This means you need to gather requirements. And you need to make sure those requirements account for the standard.

You can manage these requirements in a number of ways. Your requirement document might be in Microsoft Word. Or it might be in a sophisticated requirements management tool.

Your plan should also include quality assurance. How will you make sure your code is compliant? And how will you prove that you’ve tested and verified that those requirements are met?

If you’re using an Agile development process, you’re likely setting requirements with test cases in mind. That makes it easier to ensure quality.

Development

DO-178C should be top-of-mind during development processes.

This means:

  • Requirements should be clearly defined.
  • Test cases should be developed from requirements.
  • Code should be written to satisfy those requirements.
  • Tests should satisfy test cases and show that requirements are met.
  • Traceability should link every item.

Verification

Verification processes will help you prove you’ve satisfied compliance requirements.

There are three big things you’ll need to verify:

  • Requirements
  • Code
  • Tests

So, you need to confirm that the code satisfies your requirements — compliance and otherwise. This can be achieved by creating a traceability matrix. Then you’ll be able to show the links between requirements, code, and tests — and prove that requirements were met.

You also need to make sure the code conforms to a coding standard. This can be achieved through code reviews or by using a static analysis tool.

And, you need to verify your tests and test coverage. One way to do this is by creating tests from a test case. That way you’ll confirm you’ve tested the right things — especially the requirement the test case was written for.

DO-330 Software Tool Qualification Considerations

Tool qualification is a part of many compliance standards. For DO-178C, there’s a supplementary standard that does this — DO-330.

DO-330 is a tool qualification requirements standard. It was created for DO-178C, but it can be used outside of airborne industries.

So, DO-330 is an important component of compliance. And using already qualified tools makes this process much easier.

What to Look for in DO-178C Compliance Tools

Developing software and hardware in the aerospace and military/defense industries is complex. And DO-178C makes it more complex.

Costs can pile up when you’re proving compliance. But choosing the right tools can help you achieve DO-178C compliance — and lower the cost of compliance.

Here’s what to look for.

Thorough Test Coverage

If you want to be in compliance with DO-178C, you need thorough test coverage.

With Helix ALM, you can create test cases from requirements. And you can run tests from test cases. This helps you ensure 100 percent test coverage.

Traceability Across Development

Traceability is always important for compliance. And it will significantly boost your ability to comply.

With Helix ALM, you can establish links between everything. Requirements. Code. Tests. Bugs.

Quality, Guaranteed

Quality matters. And for aerospace and military/defense organizations, quality is critical.

With QAC/QAC++, you can improve code quality. And you can comply with your coding standard. And with Helix ALM, you’ll rest assured that requirements are satisfied. With these tools combined, you’ll guarantee quality and ship on time.

DO-178C Compliance Is Easy With Perforce

Perforce offers a range of tools that can help you get in compliance throughout your development lifecycle.

Helix ALM brings your requirements, tests, and bugs together in one spot. You’ll be able to demonstrate test coverage for your requirements. And you’ll be able to create a traceability matrix with ease. 

QAC and QAC++ static code analyzers verify that your source code complies with coding standards. These analyzers come with a DO-330 qualification pack to automatically document your tool qualification.

Try Helix ALM  Try QAC/QAC++