testing of avionics · manual api lab results requirements engineering tools systemc simulation xml...

26
Testing of Avionics Dr Stephen Wright Department of Engineering Design and Mathematics University of the West of England [email protected]

Upload: others

Post on 14-Mar-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Testing of Avionics

Dr Stephen Wright

Department of Engineering Design and Mathematics

University of the West of England

[email protected]

Page 2: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Programme

• Certification authorities

• Certification standards

• Development life cycles

• Tools

Page 3: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Avionics in boxes

Page 4: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Avionics Growth

• F-4A (1958) - 1000 lines-of-code

• F/A-18 (1978) – 1 million lines-of-code

• F-22 (1997) - 1.7 million lines-of-code

• F-35 (2006) - 8 million lines-of-code

Page 5: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Certification Authorities

• National aviation authorities certify aircraft for flight over their territory

• America: Federal Aviation Administration

• Europe: European Aviation Safety Agency

• United Nations: International Civil Aviation Organization

Page 6: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Aircraft Certification

• A type certificate is issued to confirm that an aircraft design is airworthy

• Certified that the aircraft meets Minimum Operational Performance Standards

• MOPS are enforced by agreed procedures

• Procedures are published by non-profit industry organisations

• DO-178 series, DO-254 series (and DO-160 series)

Page 7: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Standards

• DO-254 - electronic hardware

• DO-178C - software

• DO-160G - environmental test conditions

• Note that documents are sometimes republished under a different name by another authority

Page 8: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Avionics development life cycle

• Standards do not prescribe particular methods of design and test (some are

recommended)

• Standards only enforce a structured life cycle

• Therefore it is impossible to certify the hardware/software retrospectively

• Standards enforce a V-Model

Page 9: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

V – Model*

• Validation – confirming that specification is correct

• Verification – confirming that implementation is correct with respect to specification

• Each level of requirements, specification etc. provides the basis of each level of verification (this is the V)

Page 10: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

DO-178C

• Published 2012

• Updated from DO-178B (1992)

• Published by RTCA Inc. and EUROCAE

• Defines Design Assurance Levels

• Demands V-Model development with documented traceability between levels

• Recommends certain techniques (e.g. Formal Methods and Model Based Design)

Page 11: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Jargon Buster

Radio Technical Commission for Aeronautics = technical guidance for use by US government regulatory authorities and

industry

European Organisation for Civil Aviation Equipment = works together with RTCA

Page 12: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

DO-254

• Published 2005

• Similar form to DO-178C (e.g. V-Models, DALs)

• Covers FPGAs, PLDs, ASICs (i.e. a reaction to flexible hardware technologies)

Page 13: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Design Assurance Level

• Level A – Catastrophic : 10-9 failures/flight-hour

• Level B – Hazardous: 10-7 failures/flight-hour

• Level C – Major: 10-5 failures/flight-hour

• Level D – Minor: 10-3 failures/flight-hour

• Level E – No Effect: Not Applicable

Page 14: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Tools

• Requirements

• Validation

• Development

• Verification

• Test

Concept of

Operations

Requirements,

Architecture

Detailed

Design

Implementation

Integration

Test

System

Test

Operations

Simulink

SCADE

DOORS

SCADE

Avionics Rig

“Iron Bird”

UML

Page 15: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Requirements Capture

• Rational Dynamic Object Oriented Requirements System (DOORS)

• Visure

Page 16: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Development • Esterel SCADE

• Altran SPARK Pro

Page 17: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

asureSIGNTM at the heart of HW/SW V&V

Requirements - Excel - Doors - Jira - etc

Hardware Simulation • Coverage Cadence • Assertions Mentor, Aldec • Etc.

Directed test results

asureSIGNTM

Matlab

Formal Verification • OneSpin

UCIS API

Run API

Automated SW Test Tool

SW Test Tools

Manual API

Lab Results

Requirements Engineering tools

SystemC Simulation

XML API

Page 18: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Software Unit Testing

• Individual modules (functions) are tested in isolation

• Unit testing performed outside the “target” avionics hardware

• DO-178C allows some unit testing to be replaced by static analysis techniques

Page 19: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

System Integration Benches

• Simulate all physical devices electronically

• Model all systems that interact with SuT in software

Page 20: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Further Testing

• Further testing on “iron bird” rigs

• Finally go to flight test

Page 21: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Aircraft Flight Test

Gulfstream G650, 2011

Airbus A400M, 2015

Flight test is to be avoided as much as possible

Page 22: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Boeing 767 Production Flight Test

Page 23: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Costs • Software production: ~10

loc/day @ ~$100/hour = $800M

• Civil aircraft, avionics about 30% of total cost

• Some military aircraft can be as high as 75%

• Full Authority Digital Engine Controller - $100,000 - $200,000

Page 24: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

The future

• Model Based Design

• Formal Methods

• DO178D?

• Generic safety-critical standards

Page 25: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

In summary

• Avionics test driven by combination of certification and commercial

goals

• Avionics test is well behind automotive/consumer test

Page 26: Testing of Avionics · Manual API Lab Results Requirements Engineering tools SystemC Simulation XML API. Software Unit Testing •Individual modules (functions) are tested in

Questions?