Error Model Annex Revision

Size: px
Start display at page:

Download "Error Model Annex Revision"

Transcription

1 Error Model Annex Revision Peter H Feiler phf@sei.cmu.edu Jan 2011

2 Goal A core set of reliability concepts and error types Interaction of systems with nominal behavior and threats in the form of defects, faults, misbehavior, violated assumptions resulting in error propagations (hazards) Anomalous and threat mitigation behavior of a system or a system component Composability of error model in the system hierarchy Avoid global visibility into error states Error model representation improvements Add error semantics to stochastic communicating state machines Properties on all error model concepts Error types and attributes Clean separation of error propagation, error behavior, composition Explicit propagation and observation 2

3 Approach Focus fault types (fault ontology) Focus on fault propagation External fault interaction with other components Focus on fault behavior inside component How the component deals with its internal faults & incoming propagations Focus on component hierarchy System fault behavior in terms of subsystem fault behaviors Focus on interaction between fault management specification & management implementation Detection (heart beat, output monitoring) Containment (space partition, time partition) Restoration action: Recovery/repair behavior (replacement, extrapolation) Isolation higher level symptom decomposed into lower level causes 3

4 Error Type Definitions & Type Hierarchy Error types defined in terms of other error types establish a type hierarchy: ObservableOccurrenceError: error type { Omission, Commission}; ObservableTimingError: error type { Early, Late}; ObservableValueError: error type { Bad_value, Imprecise_value}; ObservableStreamError: error type {ObservableOccurrenceError, ObservableValueError, ObservableTimingError, Wrong_rate, Variable_rate}; Error types can be members of multiple error types: ObservableAccessError: error type {ObservableOccurrenceError, ObservableValueError}; Error types may be leafs in the type hierarchy: Omission : error type; 4

5 Outline Error types Error propagation specification Component error behavior specification Fault occurrence & Repair Compositional error models 5

6 Propagated Types of Errors Incoming feature Types of incoming Errors Types of incoming Errors Bidirectional feature Types of outgoing Errors System Outgoing feature Types of outgoing Errors Errors may be propagated along explicitly modeled component interaction relationships expressed by associating error types with features and platform resource categories indicating outgoing and incoming error types Errors may be observable without an explicitly modeled component relationship Expressed by associating observable and observed error types with components Types of incoming Errors Platform Resources Types of outgoing Errors 6

7 Observable Error States & Error Propagation Components have an error behavior state described by its error behavior state machine These error states get mapped into observable error states that are propagated to other components. These observed states represent propagated errors that may affect the error behavior of the recipient component. ErrorFree PowerGlitch PowerLoss NoError LimitedService Dead Error Behavior State Machine p NoService Propagated Errors 7

8 Error Propagation Behavior of Component A component may be the source of a propagated error Represents error propagations due to intrinsic errors Expressed by an error source declaration error source outport1[late]; A component may be the sink of a propagated error Represents masking of a propagated error by the component Expressed by an error sink declaration error sink inport1[late]; OR error mask inport1[late]; A component may pass on a propagated error Represents propagation of an error as the same type or a different Expressed by an error path declaration error path inport1[early] -> outport1[early]; error path inport1[late] -> outport1[omission]; error path processor[deadline] -> out1[novalue]; Propagated Errors Sink of incoming errors Incoming feature Source of outgoing errors Outgoing feature NoError Incoming feature Path of propagated errors Outgoing feature LimitedService NoService 8

9 Error Model Annex Subclause Constructs The Error Propagations statement associates error types with features & resources Allows error types to be named in rules without qualifying their identifier with the name scope (acts as a with and renames). System ControlSystem Annex error_model {** error propagation inport1: in error SWErrors::ObservableStreamError; rwaccess1: in out error SWErrors::ObservableUpdateError; Propagation rules error sink inport1[early]; **}; End ControlSystems; 9

10 Error Propagation Behavior No default error propagation rule This allows us to determine whether an error was intended to be propagated This also means to catch-all otherwise rule Short-hand for explicit any-to-all propagation behavior declaration Passing on an error type Error path any[early] -> all[early]; Actual error types are preserved Error path any[observablevalueerror] -> all[observablevalueerror]; An error type is mapped to another error type Error path any[late] -> all[omission]; Mapping of all incoming error types: special keyword vs. super error type inport1[all] vs. inport1[observablestreamerror] Mapping an Error type with subtypes The outgoing type must be a leaf error type Error path any[observabletimingerror] -> all[omission]; The recipient does not distinguish between subtypes Error path any[observabletimingerror] -> all[observablestreamerror]; 10

11 Error Propagation Behavior - 2 Error propagation rules & ordering Allow overlapping rules Rule ordering determine interpretation order General guidance: from specific to general Feedback to user about override due to overlap Require non-overlapping rules No rule ordering needed No catch-all otherwise rule Explicit specification of all handled error types Checking for coverage Coverage of incoming error types with respect to propagated error type specification Coverage of outgoing error types with respect to propagated error type specification Completeness of propagated error type specification(?) Need for error type to represent unknown error types (predeclared type?) 11

12 Error Propagation Behavior - 3 Error propagation rules & flow specifications Consistency between (complete set of) flow specifications and error propagation paths 12

13 Connecting Component Error Propagation Behaviors Propagation paths are determined by feature connections & deployment bindings Matching of outgoing and incoming error types Take into account error type hierarchy Observations & propagations Along explicit relations (connections, bindings) Ability to define additional relations in base model rather than error model 13

14 Conditional Error Propagation Rules Allows for specification of mitigation strategies Conjunctions on incoming features Inport1[late] vs. Inport1[late] and inport2[early] Unrelated inputs vs. related inputs Need for X OrLess and X OrMore operators? Not operator What does late mean? Early, other error types, or no error? Is NoError the same as ObservableStreamError (representing all incoming error types on an feature? Disjunctions vs. multiple rules Choice not affected by overlapping rule semantics Disjunctions on features Disjunctions on error types Represented by error super type Explicit list for subset of super type Consider set difference: error super type \ { error type1, error type2} 14

15 Conditional Error Propagation rules - 2 Need for ability to test for NoError on a port Inport1[late] vs. Inport1[late] and inport2[noerror] Built-in testable NoError Need to test for UnknownError? (Different name) Myron: Unanticipated errors (all others) assumptions made at higher level may be violated Unknown: open world assumption safety applications have a need for open world Diagnostics: feedback into the design process (root cause of error incomplete hazard analysis) Conditionals and coverage Precedence & hierarchy of propagation rules Example: No power -> no data Generic error model associated with core thread state machine Need to customize generic error models? Extends of error models Customization when error model is applied to component Dependency: depends on Example: processes depend on a database Guards: name mapping for reusability; propagation conditions as part of propagation specification 15

16 Outline Error types Error propagation specification Component error behavior specification Fault occurrence & Repair Compositional error models 16

17 Component Error Behavior Specification Internal to component (aka Error Model Implementation) Realizes error propagation behavior specification of component Associated with type or implementation Represent intrinsic error events Represent component error behavior as state machine State transition and error propagation behavior Represent repair events & actions Question: Different component implementation may have different error propagation behavior. Different error models for different component implementations. Possible need for different error models for different instances. Property mechanism already supports this. Mode-specific property values on the error model associated with a component or system. Mode-specific intrinsic errors and error state machines. Need for mapping from error state in one mode to error state in another mode when mode transition occurs. Operational readiness: helicopters in different states of readiness. Does operational mode relate to composite models while component error models are not mode specific. 17

18 Intrinsic Error Event Specification Error events declared with error types Known by error event name: DivideByZero: error event; Implicit error event type Event type: error event SWErrors::DivideByZero; Event name & type: DivideByZero: error event SWErrors::DivideByZero; Stochastic occurrence property and other properties on event Use of core property mechanism Explicit specification of condition in terms of application data Error triggering conditions As mode transition conditions on component state variables (see Noll example) In a constraint annex: predicates on in/out ports, component state (runtime properties) Implicit constraint on properties (e.g., measurement units on data through ports) Specification of errors in error model separate from specification of what you want them to build. Need to establish consistency between the two specifications Need the ability to explicitly specify the detection of errors Vangelis: need for merging mode, behavior & error state machines 18

19 Error Characteristics to be Reflected Distinguish error event & repair event Errors Internal & propagated: mapping of state to propagation Intentional & unintentional propagation: Explicit documentation of internal/propagated Detected, reported, mitigated, propagated: Mapping into core model events Myron: properties: initiating event, working/non-working state, describe the event (comment/description), severity (4 levels in MIL standard). Modeling of transient error events Specified via property on error event What information should be specified? Reflected in error state machine through appropriate (repair) transition 19

20 Error Characteristics as Properties Error types can have properties: Activation: error type { ErrorKind => Permanent;}; Probability of a property value: Ana had to use transient error states. Activation : error type { Occurrence => lh Poisson; ErrorKind => (Permanent with ph, Transient otherwise);}; 20

21 Error State Machine Examples Transient error states (activation fault, detection end) vs. permanent (working) states Error states with equivalent mode states (in repair) 21

22 Error Behavior State Machine Specification Error Behavior States Handling of permanent/transient error events Transient and working states: specified via property Transient states Must have one enabled outgoing transition (must have transitions with probabilities adding to 1) Working states ErrorFree state and error states (working state with property to indicate the degree of work it is able to do) Error free state: only repair event triggered incoming transitions (consistency checking?) Vangelis: use of state variables? Initial state: always error free? Degraded state is possible as initial state Initial state and activation resumption in initial state vs. last state (handled as property for modes) Multiple error free states? See working states Observable error states Association of outgoing error propagation as mapping rather than self transition 22

23 State Transitions & Error Propagations A two-step process Incoming propagated errors & error events trigger state transition All error events must be handled by state transitions Incoming errors may affect the error behavior state Outgoing error propagation based on resulting error behavior state Pass through of incoming error propagations without affecting error state? Modeler should have the option to specify either way. Need to be precise in semantics of which state the out guard refers to. Discussion about assumptions 23

24 On Guards In Guards Define mapping of outgoing error propagation names to incoming error propagation names Allows error models for interacting components to be defined independently Define a named condition under which an error state transition occurs Condition includes out propagations and error states of connected components Transition specifies an OR condition of error events and named conditions Define masking of incoming error propagations 24

25 On Guards - 2 Out guard Unconditionally pass through incoming error propagations Condition on outgoing error propagation based on own error state, error state and outgoing error propagation of connected components Conditionally mask error states or error propagations of connected components Event guard Mapping of error state into an event in the core model Transition guard Condition on mode transitions 25

26 Interface with Behavior Annex Reference to Vangelis talk on error model repository Error model conditions mapped into events (triggers) vs. behavior annex specification of the fault monitoring functionality Fault detection & propagation behavior can be for hardware as well (e.g., internal to device and propagated through error or event port) Example issue: elevator spec distinguishes transient and permanent errors, while implementation did not. Myron: cannot separate safety analysis from system design. Need to ensure consistency between the two. Abstraction of the implementation. 26

27 Outline Error types Error propagation specification Component error behavior specification Fault occurrence & Repair Compositional error models 27

28 System Composition & Integrated Whole External Controls System Flow Interaction System System System Input Peer Peer Peer Output P&OSS P&OSS P&OSS Properties & Internal Resource Control Internal Control Internal Resource Properties & Composite System State Observable System State External Resources 28

29 Composite Error State Machine Derived (composite) error states System components with error models Represents system state in terms of interacting component states Reliability/availability: in terms of one of the composite system states Conditions include statements like 2 ormore, 2 orless 29

30 Composite Error State Machine Error State machines as Abstraction To achieve tractability Declared separately from component error state machines Tracability to component error state machines & relation to dervied error states Tractability: hierarchical composition. Validate lower level model, and then use 2-out-of-3 model higher level. Myron: m out n systems. Numerical expressions. 30

31 Outline Error types Error propagation specification Component error behavior specification Fault occurrence & Repair Compositional error models 31

32 Error Behavior and Fault Management Fault occurrence and detection Repair/recovery occurrence SysB 1l Mode u Fault state SysA 1 orless -> mask u d S1 1l Fault Mgr Logic 1l-l2 switch u d 2l S2 Failure Detection Heart beat nd ok Ndt Ndp ok nd ok ok Fault propagation Sy21 Fault mgnt spec Recovery behavior 32

33 Coordination Between Error Behavior & System Behavior Objectives: Impact of error state on system behavior Modeling of repair activity: start, completion, repair failure Error States & Modes Mapping of error states into mode transition events Mapping of mode transitions into error behavior transition events Error states & Behavior specifications Objective: modeling of faulty behavior, of repair activity Error states as behavior conditions Working states In error model vs. in system state (mode) 33

34 Repair Events & Behavior Represent repair events Stochastic occurrence property Traceability to repair event trigger in actual system Represent different repair behavior Repair action with duration Repair agent as shared resource Repair parts as consumable resource Traceability to repair action in actual system architecture 34

SAE AADL Error Model Annex: Discussion Items

SAE AADL Error Model Annex: Discussion Items SAE AADL Error Model Annex: Discussion Items Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Peter Feiler phf@sei.cmu.edu April 2012 Sponsored by the U.S. Department of Defense

More information

SAE AADL Error Model Annex: An Overview

SAE AADL Error Model Annex: An Overview SAE AADL Error Model Annex: An Overview Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Peter Feiler phf@sei.cmu.edu Sponsored by the U.S. Department of Defense 2011 by Carnegie

More information

AEROSPACE STANDARD. SAE Architecture Analysis and Design Language (AADL) Annex Volume 3: Annex E: Error Model Annex RATIONALE

AEROSPACE STANDARD. SAE Architecture Analysis and Design Language (AADL) Annex Volume 3: Annex E: Error Model Annex RATIONALE AEROSPACE STANDARD Issued AS5506/3 2011-04 Draft SAE Architecture Analysis and Design Language (AADL) Annex Volume 3: Annex E: Error Model Annex RATIONALE The purpose of the Error Model Annex in this document

More information

CIS 890: High-Assurance Systems

CIS 890: High-Assurance Systems CIS 890: High-Assurance Systems Hazard Analysis Lecture: Error Modeling Annex Version 2 - Introduction Copyright 2016, John Hatcliff, Hariharan Thiagarajan. The syllabus and all lectures for this course

More information

Analytical Architecture Fault Models

Analytical Architecture Fault Models Analytical Architecture Fault Models Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Peter H. Feiler Dec 4, 2012 Copyright 2012 Carnegie Mellon University and IEEE This material

More information

Pattern-Based Analysis of an Embedded Real-Time System Architecture

Pattern-Based Analysis of an Embedded Real-Time System Architecture Pattern-Based Analysis of an Embedded Real-Time System Architecture Peter Feiler Software Engineering Institute phf@sei.cmu.edu 412-268-7790 Outline Introduction to SAE AADL Standard The case study Towards

More information

AEROSPACE STANDARD. SAE Architecture Analysis and Design Language (AADL) Annex Volume 3: Annex E: Error Model Annex RATIONALE

AEROSPACE STANDARD. SAE Architecture Analysis and Design Language (AADL) Annex Volume 3: Annex E: Error Model Annex RATIONALE AEROSPACE STANDARD Draft AS5506/3 2013-01-23 Draft SAE Architecture Analysis and Design Language (AADL) Annex Volume 3: Annex E: Error Model Annex RATIONALE The purpose of the Error Model Annex in this

More information

A System Dependability Modeling Framework Using AADL and GSPNs

A System Dependability Modeling Framework Using AADL and GSPNs A System Dependability Modeling Framework Using AADL and GSPNs Ana-Elena Rugina, Karama Kanoun, and Mohamed Kaâniche LAAS-CNRS, University of Toulouse 7 avenue Colonel Roche 31077 Toulouse Cedex 4, France

More information

AADL Fault Modeling and Analysis Within an ARP4761 Safety Assessment

AADL Fault Modeling and Analysis Within an ARP4761 Safety Assessment AADL Fault Modeling and Analysis Within an ARP4761 Safety Assessment Julien Delange Peter Feiler David P. Gluch John Hudak October 2014 TECHNICAL REPORT CMU/SEI-2014-TR-020 Software Solutions Division

More information

Motivation State Machines

Motivation State Machines Motivation State Machines Generating test cases for complex behaviour Textbook Reading: Chapter 7 We are interested in testing the behaviour of object-oriented software systems Behaviour: Interactions

More information

Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models

Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models Peter Feiler Software Engineering Institute phf@sei.cmu.edu 412-268-7790 2004 by Carnegie Mellon University

More information

Dependability Modeling Based on AADL Description (Architecture Analysis and Design Language)

Dependability Modeling Based on AADL Description (Architecture Analysis and Design Language) Dependability Modeling Based on AADL Description (Architecture Analysis and Design Language) Ana Rugina, Karama Kanoun and Mohamed Kaâniche {rugina, kanoun, kaaniche}@laas.fr European Integrated Project

More information

AADL Graphical Editor Design

AADL Graphical Editor Design AADL Graphical Editor Design Peter Feiler Software Engineering Institute phf@sei.cmu.edu Introduction An AADL specification is a set of component type and implementation declarations. They are organized

More information

Classes and Objects. Object Orientated Analysis and Design. Benjamin Kenwright

Classes and Objects. Object Orientated Analysis and Design. Benjamin Kenwright Classes and Objects Object Orientated Analysis and Design Benjamin Kenwright Outline Review Previous Weeks Object Model, Complexity,.. What do we mean by Classes and Objects? Summary/Discussion Review

More information

Test and Evaluation of Autonomous Systems in a Model Based Engineering Context

Test and Evaluation of Autonomous Systems in a Model Based Engineering Context Test and Evaluation of Autonomous Systems in a Model Based Engineering Context Raytheon Michael Nolan USAF AFRL Aaron Fifarek Jonathan Hoffman 3 March 2016 Copyright 2016. Unpublished Work. Raytheon Company.

More information

Weiss Chapter 1 terminology (parenthesized numbers are page numbers)

Weiss Chapter 1 terminology (parenthesized numbers are page numbers) Weiss Chapter 1 terminology (parenthesized numbers are page numbers) assignment operators In Java, used to alter the value of a variable. These operators include =, +=, -=, *=, and /=. (9) autoincrement

More information

OSATE Analysis Support

OSATE Analysis Support OSATE Analysis Support Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Julien Delange/Peter Feiler 07/08/2013 Overview of OSATE2 Eclipse-based AADL editor Support for AADLv2.1,

More information

AADL v2.1 errata AADL meeting Sept 2014

AADL v2.1 errata AADL meeting Sept 2014 AADL v2.1 errata AADL meeting Sept 2014 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 V2.1 Errata Additional applies to allowances Inconsistency in reference/applies to

More information

Software architecture in ASPICE and Even-André Karlsson

Software architecture in ASPICE and Even-André Karlsson Software architecture in ASPICE and 26262 Even-André Karlsson Agenda Overall comparison (3 min) Why is the architecture documentation difficult? (2 min) ASPICE requirements (8 min) 26262 requirements (12

More information

Component Design. Systems Engineering BSc Course. Budapest University of Technology and Economics Department of Measurement and Information Systems

Component Design. Systems Engineering BSc Course. Budapest University of Technology and Economics Department of Measurement and Information Systems Component Design Systems Engineering BSc Course Budapest University of Technology and Economics Department of Measurement and Information Systems Traceability Platform-based systems design Verification

More information

Error Model Meta Model and Plug-in

Error Model Meta Model and Plug-in Error Model Meta Model and Plug-in Peter Feiler phf@sei.cmu.edu May 28, 2007 The error model plug-in implements the Error Model Annex language extension. It provides all the front-end components, i.e.,

More information

door Sasa Berberovic

door Sasa Berberovic door Sasa Berberovic Overview Reusable Components Subsystems Reusable Components Reuse Mechanisms The Role of Testing in Reuse Reusing Test Suites Test Design Patterns Abstract Class Test Generic Class

More information

0. Overview of this standard Design entities and configurations... 5

0. Overview of this standard Design entities and configurations... 5 Contents 0. Overview of this standard... 1 0.1 Intent and scope of this standard... 1 0.2 Structure and terminology of this standard... 1 0.2.1 Syntactic description... 2 0.2.2 Semantic description...

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecturer: Raman Ramsin Lecture 10: Analysis Packages 1 Analysis Workflow: Packages The analysis workflow consists of the following activities: Architectural analysis Analyze a use

More information

Myron Hecht, Alex Lam, Chris Vogl, Presented to 2011 UML/AADL Workshop Las Vegas, NV. April, 2011

Myron Hecht, Alex Lam, Chris Vogl, Presented to 2011 UML/AADL Workshop Las Vegas, NV. April, 2011 A Tool Set for Integrated Software and Hardware Dependability Analysis Using the Architecture Analysis and Design Language (AADL) and Error Model Annex Myron Hecht, Alex Lam, Chris Vogl, Presented to 2011

More information

Modeling the Implementation of Stated-Based System Architectures

Modeling the Implementation of Stated-Based System Architectures Modeling the Implementation of Stated-Based System Architectures Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Peter H Feiler June 2009 Are Everywhere What is a state-based

More information

State-Based Testing Part B Error Identification. Generating test cases for complex behaviour

State-Based Testing Part B Error Identification. Generating test cases for complex behaviour State-Based Testing Part B Error Identification Generating test cases for complex behaviour Reference: Robert V. Binder Testing Object-Oriented Systems: Models, Patterns, and Tools Addison-Wesley, 2000,

More information

Interactions A link message

Interactions A link message Interactions An interaction is a behavior that is composed of a set of messages exchanged among a set of objects within a context to accomplish a purpose. A message specifies the communication between

More information

Polymorphism. Object Orientated Programming in Java. Benjamin Kenwright

Polymorphism. Object Orientated Programming in Java. Benjamin Kenwright Polymorphism Object Orientated Programming in Java Benjamin Kenwright Quizzes/Labs Every single person should have done Quiz 00 Introduction Quiz 01 - Java Basics Every single person should have at least

More information

Chapter 39: Concepts of Time-Triggered Communication. Wenbo Qiao

Chapter 39: Concepts of Time-Triggered Communication. Wenbo Qiao Chapter 39: Concepts of Time-Triggered Communication Wenbo Qiao Outline Time and Event Triggered Communication Fundamental Services of a Time-Triggered Communication Protocol Clock Synchronization Periodic

More information

Chapter 8 Fault Tolerance

Chapter 8 Fault Tolerance DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 8 Fault Tolerance 1 Fault Tolerance Basic Concepts Being fault tolerant is strongly related to

More information

An Information Model for High-Integrity Real Time Systems

An Information Model for High-Integrity Real Time Systems An Information Model for High-Integrity Real Time Systems Alek Radjenovic, Richard Paige, Philippa Conmy, Malcolm Wallace, and John McDermid High-Integrity Systems Group, Department of Computer Science,

More information

Object Orientated Analysis and Design. Benjamin Kenwright

Object Orientated Analysis and Design. Benjamin Kenwright Notation Part 2 Object Orientated Analysis and Design Benjamin Kenwright Outline Review What do we mean by Notation and UML? Types of UML View Continue UML Diagram Types Conclusion and Discussion Summary

More information

Failure Models. Fault Tolerance. Failure Masking by Redundancy. Agreement in Faulty Systems

Failure Models. Fault Tolerance. Failure Masking by Redundancy. Agreement in Faulty Systems Fault Tolerance Fault cause of an error that might lead to failure; could be transient, intermittent, or permanent Fault tolerance a system can provide its services even in the presence of faults Requirements

More information

Part I: Preliminaries 24

Part I: Preliminaries 24 Contents Preface......................................... 15 Acknowledgements................................... 22 Part I: Preliminaries 24 1. Basics of Software Testing 25 1.1. Humans, errors, and testing.............................

More information

Methods and Tools for Embedded Distributed System Timing and Safety Analysis. Steve Vestal Honeywell Labs

Methods and Tools for Embedded Distributed System Timing and Safety Analysis. Steve Vestal Honeywell Labs Methods and Tools for Embedded Distributed System Timing and Safety Analysis Steve Vestal Honeywell Labs Steve.Vestal@Honeywell.com 5 April 2006 Outline Preliminary Comments Timing and Resource Utilization

More information

visualstate Reference Guide

visualstate Reference Guide COPYRIGHT NOTICE Copyright 2000 2014 IAR Systems AB. No part of this document may be reproduced without the prior written consent of IAR Systems. The software described in this document is furnished under

More information

Diagnosis in the Time-Triggered Architecture

Diagnosis in the Time-Triggered Architecture TU Wien 1 Diagnosis in the Time-Triggered Architecture H. Kopetz June 2010 Embedded Systems 2 An Embedded System is a Cyber-Physical System (CPS) that consists of two subsystems: A physical subsystem the

More information

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram UML Fundamental NetFusion Tech. Co., Ltd. Jack Lee 2008/4/7 1 Use-case diagram Class diagram Sequence diagram OutLine Communication diagram State machine Activity diagram 2 1 What is UML? Unified Modeling

More information

Dependability tree 1

Dependability tree 1 Dependability tree 1 Means for achieving dependability A combined use of methods can be applied as means for achieving dependability. These means can be classified into: 1. Fault Prevention techniques

More information

Issues in Programming Language Design for Embedded RT Systems

Issues in Programming Language Design for Embedded RT Systems CSE 237B Fall 2009 Issues in Programming Language Design for Embedded RT Systems Reliability and Fault Tolerance Exceptions and Exception Handling Rajesh Gupta University of California, San Diego ES Characteristics

More information

Consolidation of Interacting BPEL Process Models with Fault Handlers

Consolidation of Interacting BPEL Process Models with Fault Handlers Consolidation of Interacting BPEL Process Models with Fault Handlers Sebastian Wagner, Oliver Kopp, and Frank Leymann Institute of Architecture of Application Systems, University of Stuttgart, Germany

More information

Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms?

Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? CIS 8690 Enterprise Architectures Duane Truex, 2013 Cognitive Map of 8090

More information

What s Next. INF 117 Project in Software Engineering. Lecture Notes -Spring Quarter, Michele Rousseau Set 6 System Architecture, UML

What s Next. INF 117 Project in Software Engineering. Lecture Notes -Spring Quarter, Michele Rousseau Set 6 System Architecture, UML What s Next INF 117 Project in Software Engineering Lecture Notes -Spring Quarter, 2008 Michele Rousseau Set 6 System Architecture, UML Set 6 2 Announcements kreqs should be complete Except minor changes

More information

Why testing and analysis. Software Testing. A framework for software testing. Outline. Software Qualities. Dependability Properties

Why testing and analysis. Software Testing. A framework for software testing. Outline. Software Qualities. Dependability Properties Why testing and analysis Software Testing Adapted from FSE 98 Tutorial by Michal Young and Mauro Pezze Software is never correct no matter what developing testing technique is used All software must be

More information

Oracle PLSQL. Course Summary. Duration. Objectives

Oracle PLSQL. Course Summary. Duration. Objectives Oracle PLSQL Course Summary Use conditional compilation to customize the functionality in a PL/SQL application without removing any source code Design PL/SQL packages to group related constructs Create

More information

Lecture 13 Introduction to Software Architecture

Lecture 13 Introduction to Software Architecture Lecture 13 Introduction to Software Architecture Software Systems Design and Implementation ITCS/ITIS 6112/8112 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at

More information

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered Topics covered Chapter 6 Architectural Design Architectural design decisions Architectural views Architectural patterns Application architectures Lecture 1 1 2 Software architecture The design process

More information

VLSI Test Technology and Reliability (ET4076)

VLSI Test Technology and Reliability (ET4076) VLSI Test Technology and Reliability (ET4076) Lecture 4(part 2) Testability Measurements (Chapter 6) Said Hamdioui Computer Engineering Lab Delft University of Technology 2009-2010 1 Previous lecture What

More information

Analysis and Design Language (AADL) for Quantitative System Reliability and Availability Modeling

Analysis and Design Language (AADL) for Quantitative System Reliability and Availability Modeling Application of the Architectural Analysis and Design Language (AADL) for Quantitative System Reliability and Availability Modeling Chris Vogl, Myron Hecht, and Alex Lam Presented to System and Software

More information

Automatic Detection and Repair of Errors in Data Structures

Automatic Detection and Repair of Errors in Data Structures Automatic Detection and Repair of Errors in Data Structures April 28, 2005 1 Scope Approach 2 Model Construction Consistency Constraints 3 Structure Definition Language Constraints 4 Motivation Scope Approach

More information

Part 5. Verification and Validation

Part 5. Verification and Validation Software Engineering Part 5. Verification and Validation - Verification and Validation - Software Testing Ver. 1.7 This lecture note is based on materials from Ian Sommerville 2006. Anyone can use this

More information

Integration Testing Qualidade de Software 2

Integration Testing Qualidade de Software 2 Integration Testing Integration Testing Software systems are built with components that must interoperate Primary purpose: To reveal component interoperability faults so that testing at system scope may

More information

Software Architecture. Lecture 4

Software Architecture. Lecture 4 Software Architecture Lecture 4 Last time We discussed tactics to achieve architecture qualities We briefly surveyed architectural styles 23-Jan-08 http://www.users.abo.fi/lpetre/sa08/ 2 Today We check

More information

Lecture 1. Chapter 6 Architectural design

Lecture 1. Chapter 6 Architectural design Chapter 6 Architectural Design Lecture 1 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process

More information

Distributed Systems COMP 212. Lecture 19 Othon Michail

Distributed Systems COMP 212. Lecture 19 Othon Michail Distributed Systems COMP 212 Lecture 19 Othon Michail Fault Tolerance 2/31 What is a Distributed System? 3/31 Distributed vs Single-machine Systems A key difference: partial failures One component fails

More information

Software Testing. Integration Testing. Beat Fluri. software evolution & architecture lab

Software Testing. Integration Testing. Beat Fluri. software evolution & architecture lab Software Testing Integration Testing Beat Fluri software evolution & architecture lab V-Model Specification Implementation User needs Delivery System Spec System Integration Test Subsystem Design/Spec

More information

The Basic (Flat) Relational Model. Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

The Basic (Flat) Relational Model. Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley The Basic (Flat) Relational Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3 Outline The Relational Data Model and Relational Database Constraints Relational

More information

Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects,

Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Classes, Class Diagrams Values and Attributes Operations

More information

Chapter 6 Architectural Design. Chapter 6 Architectural design

Chapter 6 Architectural Design. Chapter 6 Architectural design Chapter 6 Architectural Design 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process for identifying

More information

Enterprise Architect Training Courses

Enterprise Architect Training Courses On-site training from as little as 135 per delegate per day! Enterprise Architect Training Courses Tassc trainers are expert practitioners in Enterprise Architect with over 10 years experience in object

More information

Recommended Practice for Software Requirements Specifications (IEEE)

Recommended Practice for Software Requirements Specifications (IEEE) Recommended Practice for Software Requirements Specifications (IEEE) Author: John Doe Revision: 29/Dec/11 Abstract: The content and qualities of a good software requirements specification (SRS) are described

More information

COMPASS. COMPASS Tutorial. Correctness, Modeling, and Performance of Aerospace Systems. Version 3.0

COMPASS. COMPASS Tutorial. Correctness, Modeling, and Performance of Aerospace Systems. Version 3.0 COMPASS Correctness, Modeling, and Performance of Aerospace Systems COMPASS Tutorial Version 3.0 Prepared by Fondazione Bruno Kessler RWTH Aachen University Contents 1 Introduction 3 2 Terminology 4 3

More information

TSW Reliability and Fault Tolerance

TSW Reliability and Fault Tolerance TSW Reliability and Fault Tolerance Alexandre David 1.2.05 Credits: some slides by Alan Burns & Andy Wellings. Aims Understand the factors which affect the reliability of a system. Introduce how software

More information

A System Performance in Presence of Faults Modeling Framework Using AADL and GSPNs

A System Performance in Presence of Faults Modeling Framework Using AADL and GSPNs A System Performance in Presence of Faults Modeling Framework Using AADL and GSPNs Belhassen MAZIGH 1 and Kais BEN FADHEL 1 Department of Computer Science, Faculty of Science of Monastir, Avenue of the

More information

Process and data flow modeling

Process and data flow modeling Process and data flow modeling Vince Molnár Informatikai Rendszertervezés BMEVIMIAC01 Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology

More information

Functional Safety and Safety Standards: Challenges and Comparison of Solutions AA309

Functional Safety and Safety Standards: Challenges and Comparison of Solutions AA309 June 25th, 2007 Functional Safety and Safety Standards: Challenges and Comparison of Solutions AA309 Christopher Temple Automotive Systems Technology Manager Overview Functional Safety Basics Functional

More information

The basic operations defined on a symbol table include: free to remove all entries and free the storage of a symbol table

The basic operations defined on a symbol table include: free to remove all entries and free the storage of a symbol table SYMBOL TABLE: A symbol table is a data structure used by a language translator such as a compiler or interpreter, where each identifier in a program's source code is associated with information relating

More information

Model-based Architectural Verification & Validation

Model-based Architectural Verification & Validation Model-based Architectural Verification & Validation Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Peter H Feiler Feb. 2009 2006 Carnegie Mellon University Outline Architecture-Centric

More information

Fault tolerance and Reliability

Fault tolerance and Reliability Fault tolerance and Reliability Reliability measures Fault tolerance in a switching system Modeling of fault tolerance and reliability Rka -k2002 Telecommunication Switching Technology 14-1 Summary of

More information

Fault Tolerance Part I. CS403/534 Distributed Systems Erkay Savas Sabanci University

Fault Tolerance Part I. CS403/534 Distributed Systems Erkay Savas Sabanci University Fault Tolerance Part I CS403/534 Distributed Systems Erkay Savas Sabanci University 1 Overview Basic concepts Process resilience Reliable client-server communication Reliable group communication Distributed

More information

Fault Propagation and Transformation: A Safety Analysis. Malcolm Wallace

Fault Propagation and Transformation: A Safety Analysis. Malcolm Wallace Fault Propagation and Transformation: A Safety Analysis Malcolm Wallace Software Safety Safety is not the same as correctness. Correctness = theorem-proving, model-checking, abstract interpretation, etc.

More information

C++ Important Questions with Answers

C++ Important Questions with Answers 1. Name the operators that cannot be overloaded. sizeof,.,.*,.->, ::,? 2. What is inheritance? Inheritance is property such that a parent (or super) class passes the characteristics of itself to children

More information

Hierarchical Composition and Abstraction In Architecture Models

Hierarchical Composition and Abstraction In Architecture Models Hierarchical Composition and Abstraction In Architecture Models Pam Binns and Steve Vestal Honeywell Labs {pam.binns, steve.vestal}@honeywell.com Supported by the Air Force Office of Scientific Research

More information

Design Pattern: Composite

Design Pattern: Composite Design Pattern: Composite Intent Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. Motivation

More information

Chapter 8: Enhanced ER Model

Chapter 8: Enhanced ER Model Chapter 8: Enhanced ER Model Subclasses, Superclasses, and Inheritance Specialization and Generalization Constraints and Characteristics of Specialization and Generalization Hierarchies Modeling of UNION

More information

Checking General Safety Criteria on UML Statecharts

Checking General Safety Criteria on UML Statecharts Checking General Safety Criteria on UML Statecharts Zsigmond Pap, István Majzik 1 and András Pataricza Dept. of Measurement and Information Systems Budapest University of Technology and Economics H-1521

More information

CORBA in the Time-Triggered Architecture

CORBA in the Time-Triggered Architecture 1 CORBA in the Time-Triggered Architecture H. Kopetz TU Wien July 2003 Outline 2 Hard Real-Time Computing Event and State Messages The Time Triggered Architecture The Marriage of CORBA with the TTA Conclusion

More information

Contents. References 43

Contents. References 43 Contents 1 Atomicity Decomposition Part 1 - Overview and Background 1 1.1 Introduction................................... 1 1.2 Overview of Atomicity Decomposition Diagram in Event-B........ 1 1.3 Event-B

More information

Concept as a Generalization of Class and Principles of the Concept-Oriented Programming

Concept as a Generalization of Class and Principles of the Concept-Oriented Programming Computer Science Journal of Moldova, vol.13, no.3(39), 2005 Concept as a Generalization of Class and Principles of the Concept-Oriented Programming Alexandr Savinov Abstract In the paper we describe a

More information

Verifiable Hierarchical Protocols with Network Invariants on Parametric Systems

Verifiable Hierarchical Protocols with Network Invariants on Parametric Systems Verifiable Hierarchical Protocols with Network Invariants on Parametric Systems Opeoluwa Matthews, Jesse Bingham, Daniel Sorin http://people.duke.edu/~om26/ FMCAD 2016 - Mountain View, CA Problem Statement

More information

Mei Nagappan. How the programmer wrote it. How the project leader understood it. How the customer explained it. How the project leader understood it

Mei Nagappan. How the programmer wrote it. How the project leader understood it. How the customer explained it. How the project leader understood it Material and some slide content from: - Software Architecture: Foundations, Theory, and Practice - Elisa Baniassad - Reid Holmes How the customer explained it How the project leader understood it How the

More information

Sample Question Paper. Software Testing (ETIT 414)

Sample Question Paper. Software Testing (ETIT 414) Sample Question Paper Software Testing (ETIT 414) Q 1 i) What is functional testing? This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type

More information

Introduction. Purpose. Intended Audience. Conventions. Close

Introduction. Purpose. Intended Audience. Conventions. Close Introduction Introduction Verilog-XL is a simulator that allows you to test the logic of a design. The process of logic simulation in Verilog-XL is as follows: 1. Describe the design to Verilog-XL. 2.

More information

ARINC653 annex: examples

ARINC653 annex: examples ARINC653 annex: examples Julien Delange Laurent Pautet Peter Feiler 10/11/09 Better understanding of ARINC653 systems Help to understand ARINC653 architectures

More information

Toward Monitoring Fault-Tolerant Embedded Systems

Toward Monitoring Fault-Tolerant Embedded Systems Toward Monitoring Fault-Tolerant Embedded Systems Alwyn E. Goodloe National Institute of Aerospace Lee Pike Galois, Inc Characterizing the Systems The systems we focus on must be ultra-reliable, and so

More information

State Machine Diagrams

State Machine Diagrams State Machine Diagrams Introduction A state machine diagram, models the dynamic aspects of the system by showing the flow of control from state to state for a particular class. 2 Introduction Whereas an

More information

MPLS OAM Technology White Paper

MPLS OAM Technology White Paper MPLS OAM Technology White Paper Issue 01 Date 2012-10-30 HUAWEI TECHNOLOGIES CO., LTD. 2012. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means without

More information

Software Architecture

Software Architecture Software Architecture Lecture 6 Event Systems Rob Pettit George Mason University SWE 443 Software Architecture Event Systems 1 previously data flow and call-return styles data flow batch sequential dataflow

More information

Chapter 6 Architectural Design

Chapter 6 Architectural Design Chapter 6 Architectural Design Chapter 6 Architectural Design Slide 1 Topics covered The WHAT and WHY of architectural design Architectural design decisions Architectural views/perspectives Architectural

More information

Flow Latency Analysis with the Architecture Analysis and Design Language (AADL)

Flow Latency Analysis with the Architecture Analysis and Design Language (AADL) Flow Latency Analysis with the Architecture Analysis and Design Language (AADL) Peter Feiler Jőrgen Hansson December 2007 TECHNICAL NOTE CMU/SEI-2007-TN-010 Performance-Critical Systems Initiative Unlimited

More information

Software Testing CS 408. Lecture 11: Review 2/20/18

Software Testing CS 408. Lecture 11: Review 2/20/18 Software Testing CS 408 Lecture 11: Review 2/20/18 Lecture 1: Basics 2 Two Views Verification: Prove the absence, and conjecture the presence, of bugs Ex: types: Not all ill-typed programs are wrong But,

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration

More information

Safety and Reliability of Embedded Systems. (Sicherheit und Zuverlässigkeit eingebetteter Systeme) Safety and Reliability Analysis Models: Overview

Safety and Reliability of Embedded Systems. (Sicherheit und Zuverlässigkeit eingebetteter Systeme) Safety and Reliability Analysis Models: Overview (Sicherheit und Zuverlässigkeit eingebetteter Systeme) Safety and Reliability Analysis Models: Overview Content Classification Hazard and Operability Study (HAZOP) Preliminary Hazard Analysis (PHA) Event

More information

Aerospace Software Engineering

Aerospace Software Engineering 16.35 Aerospace Software Engineering Reliability, Availability, and Maintainability Software Fault Tolerance Prof. Kristina Lundqvist Dept. of Aero/Astro, MIT Definitions Software reliability The probability

More information

Software Reuse and Component-Based Software Engineering

Software Reuse and Component-Based Software Engineering Software Reuse and Component-Based Software Engineering Minsoo Ryu Hanyang University msryu@hanyang.ac.kr Contents Software Reuse Components CBSE (Component-Based Software Engineering) Domain Engineering

More information

void fun() C::C() // ctor try try try : member( ) catch (const E& e) { catch (const E& e) { catch (const E& e) {

void fun() C::C() // ctor try try try : member( ) catch (const E& e) { catch (const E& e) { catch (const E& e) { TDDD38 APiC++ Exception Handling 134 Exception handling provides a way to transfer control and information from a point in the execution to an exception handler a handler can be invoked by a throw expression

More information

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1 Verification vs validation Verification: "Are we building the product right?. The software should

More information

02 - Distributed Systems

02 - Distributed Systems 02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/60 Definition Distributed Systems Distributed System is

More information

AADL Requirements Annex Review

AADL Requirements Annex Review Dominique Blouin Lab-STICC Université de Bretagne-Occidentale Université de Bretagne-Sud Bretagne, France 1 AADL Standards Meeting, April 23 th, 2013 Agenda Comments from Annex Document Review Motivations

More information