What is Aerospace Software Testing?
From the fasten seatbelt sign to the flight control unit, software can be found almost everywhere in avionics systems.
To ensure the safety of passengers, crew, and the aircraft, aerospace software applications must be vigorously tested within strict guidelines to ensure that they operate correctly. Failure of onboard critical software (safety-critical and/or mission critical) could have far-reaching repercussions.
Avionics systems often comprise many thousands of functions and millions of lines of code. To ensure safety of the system, these must be tested to make sure that they operate as expected. Activities used to test avionics systems include:
- Functional testing to ensure that the software meets high- and low-level requirements.
- Worst-case execution time analysis to ensure that time-critical sections of code meet timing deadlines
- Structural coverage analysis to ensure that structural elements of the code (such as statements) have been tested to an acceptable degree
What is DO-178?
When approving commercial software-based aerospace systems, certification authorities such as the EASA and FAA refer to the DO-178C Software Considerations in Airborne Systems and Equipment Certification guideline, which ensures that safety-critical software used in airborne systems is safe to use.
According to AC 20-115, DO-178C is recognized as an "acceptable means, but not the only means, for showing compliance with the applicable airworthiness regulations for the software aspects of airborne systems and equipment certification."
This guideline superseded its predecessor, DO-178B, in 2012.
What are software levels?
A system’s Design Assurance Level (DAL) (also known as Item Development Assurance Level or IDAL) derives from hazard analysis and the safety assessment process. Software is categorized into a DAL based on the impact of a failure condition in the system on the passengers, crew, and aircraft.
No safety effects