In late 2011 RTCA’s DO-178B received a significant
update to bring it in line with modern software development practices. DO-178B
replaced the previous DO-178A standard in 1992 and has been used by a number of
aviation authorities as the basis on which they base their certification of
civil aviation software.
Over the past few years DO-178B has
received criticism over the fact that it does not address modern software
development techniques such as object orientation and the use of modelling
languages like UML.
Like its predecessors, DO-178C, published
in Europe by EUROCAE as
ED-12C, defines 5 levels of software based on the
effect of system failure:
A
– Catastrophic (inability to safely fly aircraft)
B – Hazardous (serious or fatal injuries to some)
C – Major (discomfort and possible injuries)
D – Minor (some inconvenience to occupants)
E – No Effect (not addressed in DO-178B)
Each of these levels identifies a number of
objectives which must be satisfied before the software can be certified. These
range from 66 at level A to 28 at level D. These are further divided by
identified processes which must satisfy between 1 and 13 of the objectives.
These processes are:
- Software Planning Process
- Software Development Process
- Verification of Software Requirements Output Process
- Verification of Software Design Output Process
- Verification of Software Coding and Integration Output Process
- Testing Outputs of Integration Process
- Verification of Verification Process
- Software Configuration Management Process
- Software Quality Assurance Process
- Certification Liaison Process
DO-178C is a non-prescriptive standard
which means that it only identifies the objectives to be met and allows
individual projects to decide how they achieve that.
All of the above remains consistent between
DO-178B and C with only minor changes to clarify the use of terminology (e.g.
purpose, goal, objective, activity etc.). DO-178C, however, aims to address
modern software development techniques such as the use of:
- Object-Oriented design and languages
- Model based design
- Automatic code generation
- CASE tools for design and code development
Given the recent report detailing the system
failure and pilot error that caused the loss of 228 lives on an Air FranceAirbus A330 in 2009
one hopes that, once DO178C has been fully implemented by the worlds aviation
authorities, future aircraft systems will provide even greater reliability
thereby minimising the need for human intervention.
No comments :
Post a Comment