Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety...

45
© 2013 Carnegie Mellon University Supporting Safety Evaluation Process using AADL Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Julien Delange and Peter Feiler 12/09/2013

Transcript of Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety...

Page 1: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

© 2013 Carnegie Mellon University

Supporting Safety Evaluation Process using AADL

Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Julien Delange and Peter Feiler 12/09/2013

Page 2: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

2

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Safety Analysis issues (aka the problem)

Manual process, inaccurate with system implementation Some errors are not captured/caught during analysis Long and error-prone evaluation process

System Specs.

Implementation + tests

Certification documents

Safety Evaluation Report

Manual Process

Page 3: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

3

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Automate/Improve Evaluation (aka the solution) Derives materials from existing artifacts (i.e. architecture models)

Avoid manual process traps and pitfalls Automate evaluation, reduce analysis time

System Specs.

(ideally a model)

Implementation + tests

Certification documents

Safety Evaluation Report

Automatic Process

Improve Safety/Reliability Assessment

Page 4: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

4

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Combine existing methods (aka the approach) Add safety-information to existing models Automate the evaluation process, avoid manual efforts Generate materials required by safety standards (ARP4761)

Page 5: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

5

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Agenda

Overview of AADL & Error-Model Annex Overview of ARP4761 and Safety Evaluation Support of Safety Evaluation with AADL Case-Study On-Going Work Discussion

Page 6: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

6

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Agenda

Overview of AADL/Error-Model Annex Overview of ARP4761 & Safety Evaluation Support of Safety Evaluation with AADL Case-Study On-Going Work Discussion

Page 7: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

7

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Architecture Analysis Design Language

Modeling language standardized by SAE Inherit MetaH concepts Initiated in 2003; revised in 2008 Design of hardware and software Analysis of different criteria (performance, safety, security, etc.) Tool support: OSATE, Ocarina, MASIW Evaluation during research projects SAVI: avionics community ASSERT: aerospace community

Page 8: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

8

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

AADL ecosystem

Code Generation

Security

Reliability

Requirements description

System Validation System

Configuration

Performance Evaluation

Safety ARINC653

Page 9: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

9

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Overview of Error-Model Annex

Extension of AADL for fault description: error events, propagations, etc. Integration with current models by extending existing components Draft document to be proposed as a standard annex Support for Safety Evaluation and Analysis

Page 10: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

10

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Error Types and propagations

Error types: error classification Extensions and renaming Error propagations across components Associate errors with system connections Define error sources, sinks and containment

ValueError

OutOfRange Inconsistent

Sensor Processing Actuator ValueError NoData

Error Source of ValueError

Sink for ValueError & source for NoData

Error Sink for NoData

Page 11: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

11

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Error behavior

States machines Error-related transitions Propagation rules Use of error types Composite behavior Define system states according to its parts ex: “I am failing if one of my component is failing”

Normal

Failed

Failure (BadData)

Failed (NoValue)

Recover

Subsystem 1 (Normal)

Subsystem 2 (Failing)

Subsystem 1 (Normal)

Subsystem 2 (Normal)

Page 12: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

12

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Support of AADL textual syntax Error types mechanism w/ extensions Error propagations Composite error state Machine

Sensor Processing ValueError

Operational

Sensor (Operational)

Processing (Operational)

Actuator (Operational)

Page 13: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

13

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Specific Error-Model Properties

Severity, likelihood, error description Support for generating validation documentation Tailoring for safety standards (ARP4761, MIL-STD-882)

Page 14: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

14

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Agenda

Overview of AADL & Error-Model Annex Overview of ARP4761 & Safety Evaluation Analysis of System Safety with AADL Case-Study On-Going Work Discussion

Page 15: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

15

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

ARP4761 Safety Standard SAE standard for Safety Assessment Avionics Community mostly (relation with DO178B) Assurance of System Safety Define Safety Evaluation Process Materials & Methodology Iterative process, follow development workflow Inter-connection between documents (cross checks) Use in the SAE AIR6110 standard Example of safety evaluation process Wheel-Brake System Example

Page 16: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

16

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Safety Analysis Workflow Aircraft-level (functions) Define failure conditions Allocate failure to system functions Preliminary System Safety Assessment System Functional Hazard Analysis (FHA) System Fault-Tree Analysis (FTA) System Safety Assessment Failure Mode and Effect Analysis Refined FTA with Quantitative Failures Rates

Syst

em D

evel

opm

ent C

ycle

Page 17: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

17

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Functional Hazard Analysis

Identify and classify functions failure conditions Aircraft or System Level Aircraft, High-Level View Refinement at System Level Input for safety requirements specification Description and specification in FTA, DD or MA Reference of Aircraft Low-Level to System FHA Spreadsheet with reference to functions failures description

ARP4761, section 3

Page 18: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

18

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Fault-Tree Analysis

Relationship of failure effects and failure modes Reference to system hierarchy Support with Open-Source and Commercial Tools

Fault Occurrence

Failure Mode

Initial Failure Mode

ARP4761, section 4.1

Page 19: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

19

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Markov Chain

Evaluation of system behavior over time Probability of being in particular states Analysis and evaluation of fault states Support with Commercial and Open-Source Tools

ARP4761, section 4.1

Page 20: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

20

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Failure Mode and Effect Analysis

Impact of Fault at a Higher Levels Start from Function Level to System/Aircraft Level Spreadsheet/textual document

ARP4761, section 4.2

Page 21: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

21

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Agenda

Overview of AADL & Error-Model Annex Overview of ARP4761 & Safety Evaluation Support of Safety Evaluation with AADL Case-Study On-Going Work Discussion

Page 22: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

22

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

AADL & Safety Evaluation – Tool Overview

FHA • Spreadsheet

• Use error propagations

FTA • CAFTA

OpenFTA

• Use composite behavior

• Error flows

Markov Chain • PRISM

• Use error flow

• Error behavior

FMEA • Spreadsheet

• Error behavior

• Propagations

Page 23: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

23

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Safety Analysis & AADL

Preliminary System Safety Assessment (PSSA) support High-level component, interfaces from the OEM Automatic generation of validation materials (FHA, FTA) System Safety Assessment (SSA) support Use refined models from suppliers Enhancement of error specifications Support of quantitative safety analysis (FTA, FMEA, MA)

Syst

em D

evel

opm

ent C

ycle

Page 24: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

24

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Evolution of Safety Analysis process with AADL

Validation Materials

(FHA, FTA)

Validation with quantitative fault rates (FMEA, FTA, DD, MA)

Component types

(system interfaces)

Component implementation

Preliminary System Safety Assessment

System Safety Assessment

Ref

inem

ent &

dev

elop

men

t evo

lutio

n

Check PSSA and SSA

consistencies

Page 25: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

25

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Safety Analyses on Refined Architecture Aircraft-Level Safety Analysis Define aircraft failure conditions Allocate failure to system functions Perform PSSA and SSA Avionics Subsystem Level Safety Analysis Perform PSSA and SSA at subsystem level Ensure consistency with aircraft level analysis Navigation Sub-Subsystem Level Safety Analysis Perform PSSA and SSA at sub-subsystem level Ensure consistency with aircraft level analysis

System

Subsystem Subsystem

System

Subsystem Subsystem

Subsystem Subsystem

Syst

em A

rchi

tect

ure

Ref

inem

ent System

Page 26: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

26

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Evolution of the AADL model

Component extension, refinement & implementation

Development Process

AADL model Version n AADL model Version n + 1

Page 27: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

27

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Evolution of Safety Assessment with AADL

Development Process

FTA Version n FTA Version n + 1

FTA refinement & improvement

AADL model version n AADL model version n + 1

Automatic Fault-Tree Generation Automatic Fault-Tree Generation

Page 28: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

28

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Functional Hazard Analysis Support

FHA Use of component error behavior Error propagations rules Internal error events Specify initial failure mode Define error description and related information Create spreadsheet containing FHA elements To be reused by commercial or open-source tools

Page 29: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

29

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Fault-Tree Analysis Support

FTA Use of composite error behavior FTA nodes Use of component error behavior Incoming error events Walk through the components hierarchy Generate the complete fault-tree Focus on specific AADL subcomponents Export to several tools Commercial: CAFTA Open-Source: OpenFTA – http://www.openfta.com

Page 30: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

30

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Markov-Chain Support

Markov Chain Use of component error behavior Error propagations rules Error transitions Map states and error types into specific values Tool-specific approach Ability to evaluate system state over time What is the probability my system is failing within 30 days ? Export to open-source tools, PRISM http://www.prismmodelchecker.org/

Page 31: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

31

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Failure Mode and Effects Support

FMEA Use of component error behavior Error propagations rules (source, sink, etc.) Internal error events Traverse all error paths Record impact over the components hierarchy Use error description and related information Create spreadsheet containing FHA elements To be reused by commercial or open-source tools

Page 32: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

32

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Reliability Block Diagram aka ARP4761 Dependence Diagram (DD)

RDB Use of composite error behavior Error propagations rules (source, sink, etc.) Internal error events Compute reliability of the Dependence Diagram Use of recover and failure events Overall probability of system failure Support in OSATE (built-in)

Page 33: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

33

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Agenda

Overview of AADL & Error-Model Annex Approach for Safety Evaluation Support of Safety Evaluation with AADL Case-Study On-Going Work Discussion

Page 34: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

34

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Wheel Brake System

Development of a public model Available on AADL public wiki

Use of core and additions of AADL Error-Model (safety) + ARINC653 annexes (specific architecture) Demonstration for the System Architecture Virtual Integration consortium Relevance for the avionics domain Apply the technology/toolset on a known example Generation of FHA, FTA, MA & FMEA

Page 35: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

35

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

AADL model root system

NoService

NoPower

NoPressure

InvalidReport

Software and/or RuntimeError

Page 36: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

36

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

AADL model, BSCU variations

Page 37: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

37

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

FHA of the root system

Page 38: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

38

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

FTA of the root system

Focus on a specific

AADL subcomponent

Page 39: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

39

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

FTA of the BSCU subcomponent

Page 40: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

40

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

FMEA of the root system

Component 1 Component 2

Out propagation

Current State

Propagation path

Out propagation or error containment

Page 41: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

41

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Agenda

Overview of AADL & Error-Model Annex Overview of ARP4761 & Safety Evaluation Support of Safety Evaluation with AADL Case-Study Conclusion Discussion

Page 42: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

42

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Conclusion

Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency Improve evaluation reliability & robustness Support for incremental evaluation Investigate interaction with other system characteristics Behavior specification

Page 43: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

43

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Agenda

Overview of AADL & Error-Model Annex Approach for Safety Evaluation Support of Safety Evaluation with AADL Case-Study Case-Study Discussion

Page 44: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

44

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Contact

Presenter / Point of Contact Dr. Julien Delange Telephone: +1 412-268-9652 Email: [email protected]

U.S. Mail Software Engineering Institute Customer Relations 4500 Fifth Avenue Pittsburgh, PA 15213-2612 USA

Web www.aadl.info www.sei.cmu.edu www.sei.cmu.edu/contact.cfm

Customer Relations Email: [email protected] Telephone: +1 412-268-5800 SEI Phone: +1 412-268-5800 SEI Fax: +1 412-268-6257

Page 45: Supporting Safety Evaluation Process using AADL€¦ · Facilitate Safety Evaluation Derives safety materials from existing assets Automate evaluation & check architecture consistency

45

AADL & Safety @ LAW2013 Julien Delange, December, 09 2013 © 2013 Carnegie Mellon University

Copyright 2013 Carnegie Mellon University This material is based upon work funded and supported by the Department of Defense under Contract No. FA8721-05-C-0003 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center. NO WARRANTY. THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERING INSTITUTE MATERIAL IS FURNISHED ON AN “AS-IS” BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT. This material has been approved for public release and unlimited distribution. This material may be reproduced in its entirety, without modification, and freely distributed in written or electronic form without requesting formal permission. Permission is required for any other use. Requests for permission should be directed to the Software Engineering Institute at [email protected]. Carnegie Mellon® is registered in the U.S. Patent and Trademark Office by Carnegie Mellon University. DM-0000767