Software Safety Tutorial (Status Update)



Similar documents
Controlling Risks Risk Assessment

Software quality engineering. Quality assurance. Testing

Failure Analysis Methods What, Why and How. MEEG 466 Special Topics in Design Jim Glancey Spring, 2006

University of Paderborn Software Engineering Group II-25. Dr. Holger Giese. University of Paderborn Software Engineering Group. External facilities

LSST Hazard Analysis Plan

Controlling Risks Safety Lifecycle

Estimating Software Reliability In the Absence of Data

4. Critical success factors/objectives of the activity/proposal/project being risk assessed

Implementation of ANSI/AAMI/IEC Medical Device Software Lifecycle Processes.

Incident Investigation Procedure

Safety Management Systems (SMS) guidance for organisations

Certification Authorities Software Team (CAST) Position Paper CAST-9

Applying 4+1 View Architecture with UML 2. White Paper

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

ASSESSMENT OF THE ISO STANDARD, ROAD VEHICLES FUNCTIONAL SAFETY

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

Functional Safety with ISO Principles and Practice Dr. Christof Ebert, Dr. Arnulf Braatz Vector Consulting Services

Safety Driven Design with UML and STPA M. Rejzek, S. Krauss, Ch. Hilbes. Fourth STAMP Workshop, March 23-26, 2015, MIT Boston

A System-safety process for by-wire automotive systems

USING INSTRUMENTED SYSTEMS FOR OVERPRESSURE PROTECTION. Dr. Angela E. Summers, PE. SIS-TECH Solutions, LLC Houston, TX

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Developing software which should never compromise the overall safety of a system

An Introduction to Fault Tree Analysis (FTA)

Occupational safety risk management in Australian mining

Software Reliability and Safety CSE 8317 Spring 2015

Software Safety Basics

Accident Investigations -- ISRI Safety Council

Verifying Semantic of System Composition for an Aspect-Oriented Approach

Accident Investigation

Object Oriented Design

A Methodology for Safety Critical Software Systems Planning

Managing Design Changes using Safety-Guided Design for a Safety Critical Automotive System

The use of statistical problem solving methods for Risk Assessment

Fault Tree Analysis (FTA) and Event Tree Analysis (ETA)

THEORIES OF ACCIDENT CAUSATION

3.4.4 Description of risk management plan Unofficial Translation Only the Thai version of the text is legally binding.

3.0 Risk Assessment and Analysis Techniques and Tools

HazLog: Tool support for hazard management

Designing an Effective Risk Matrix

Noorul Islam College of Engineering M. Sc. Software Engineering (5 yrs) IX Semester XCS592- Software Project Management

Safety Risk Impact Analysis of an ATC Runway Incursion Alert System. Sybert Stroeve, Henk Blom, Bert Bakker

Assurance Cases and Test Design Analysis

SFTA, SFMECA AND STPA APPLIED TO BRAZILIAN SPACE SOFTWARE

Karunya University Dept. of Information Technology

FMEA and FTA Analysis

Instructions for the Incident/Accident Investigation Form (SORM-703)

Safety Integrity Levels

Design by Contract beyond class modelling

Tomáš Müller IT Architekt 21/04/2010 ČVUT FEL: SOA & Enterprise Service Bus IBM Corporation

A System-Safety Process For By-Wire Automotive Systems

Aviation Safety Policy. Aviation Safety (AVS) Safety Management System Requirements

Risk Management Tools

Identifying and Understanding Relevant System Safety Standards for use in the Automotive Industry

Wealth Protection. 1.How do you define wealth? 1. Wealth Protection: Why. Wealth Protection. 1.How do you define wealth? 06/07/57

IEC Overview Report

Dallas IIA Chapter / ISACA N. Texas Chapter. January 7, 2010

RISK MANAGEMENT FOR INFRASTRUCTURE

Medical Device Software Standards for Safety and Regulatory Compliance

CHAPTER 8 CONCLUSION AND FUTURE ENHANCEMENTS

Criteria for Flight Project Critical Milestone Reviews

FERC Engineering Guidelines Risk-Informed Decision Making

Best Practice In A Change Management System

Space project management

Dr. Brian Murray March 4, 2011

Malay A. Dalal Madhav Erraguntla Perakath Benjamin. Knowledge Based Systems, Inc. (KBSI) College Station, TX 77840, U.S.A.

BUSINESS ARCHITECTURE MEETS STRATEGIC PLANNING. 9/16/2014 Austin, TX

Safety and Hazard Analysis

How to Upgrade SPICE-Compliant Processes for Functional Safety

Safety Issues in Automotive Software

Switching Basics and Intermediate Routing CCNA 3 Labs and Study Guide Allan Johnson

A Quality Requirements Safety Model for Embedded and Real Time Software Product Quality

Testing Low Power Designs with Power-Aware Test Manage Manufacturing Test Power Issues with DFTMAX and TetraMAX

Safety in Management John Thomas and Nancy Leveson. All rights reserved.

Investigating the Temporal Behavior of Defect Detection in Software Inspection and Inspection-Based Testing

Software-based medical devices from defibrillators

pm4dev, 2016 management for development series Project Scope Management PROJECT MANAGEMENT FOR DEVELOPMENT ORGANIZATIONS

Human-Automation Interaction Design and Evaluation Tools. Michael Feary, PhD

Design of automatic testing tool for railway signalling systems software safety assessment

Timing Analysis of Real-Time Software

Overview of IEC Design of electrical / electronic / programmable electronic safety-related systems

Risk Assessment and Management. Allen L. Burgenson Manager, Regulatory Affairs Lonza Walkersville Inc.

Process Models and Metrics

BPMN Business Process Modeling Notation

Road safety a work-environment issue

Model-based Quality Assurance of Automotive Software

SOFTWARE SAFETY STANDARD

2015 HSC Information and Digital Technology Networking and hardware Marking Guidelines

SECRETARY OF THE NAVY SAFETY EXCELLENCE AWARDS

SOFTWARE-IMPLEMENTED SAFETY LOGIC Angela E. Summers, Ph.D., P.E., President, SIS-TECH Solutions, LP

Aerospace Software Engineering

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Course Overview Lean Six Sigma Green Belt

How To Write Software

Transcription:

Status Update 1 Software Safety Tutorial (Status Update) Jeff Tian, tian@engr.smu.edu CSE, SMU, Dallas, TX 75275 Topics Project Overview Software Safety Overview Project Tasks/Schedule/Progress

Status Update 2 What Is Software Safety? Software safety: The property of being accidentfree for (embedded) software systems. Accident: failures with severe consequences Hazard: condition for accident Specialized techniques Software safety engineering (SSE): Goal: to ensure software safety via hazard identification/analysis techniques hazard resolution alternatives hazard elimination/reduction/control (tracking/mitigation/control NASA) safety and risk assessment safety and process improvement Qualitative focus, systematic approach

Status Update 3 Project Overview Sponsor: Dennis Frailey (David Struble), Raytheon. Motivation: DoD commitment to safety (personnel/system/property/environment) DoD goal: 0 mishaps (accidents above) DoD guidance: MIL-STD-882D (2000) Goal: Software safety should become a core competency for real-time software engineers. Project team: Jeff Tian (SMU): Basics of SSE D.T. Huynh and Eric Wong (UTD): related research and extensions

Status Update 4 Overall Approach Basics about software safety (Tian): Basic definitions and concepts Hazard identification/analysis techniques, primarily fault-/event-tree analyses Design for safety via hazard elimination/reduction/control Leveson s SSP (software safety program) and STAMP (sys. theoretic accident modeling and processes) Formal verification of safety New applications and development Tailoring to meet project sponsor goals: Include DoD MIL-STD-882D (Tian) Testing for safety (Wong) Formal methods for safety (Huynh)

Status Update 5 Comparison: Lutz/NASA Software safety: 7 directions: 1 integration of informal/formal methods 2 safe reuse 3 testing/evaluation of SCS 4 runtime monitoring 5 education 6 certification and standards 7 collaboration with related fields Coverage in our SST: 1/3/5: existing research/course 6: focus on DoD MIL-STD-882D 2/4/7: existing expertise

Status Update 6 Basic Definitions Accident or mishap: unplanned (series of) events leading to unacceptable loss - death, injury, illness - equip./property/environment damage excess energy/dangerous substance computers relatively safe but computer control accidents Hazard: a set of conditions leading to accidents under certain environmental conditions e.g.: guard gates at rail-crossing safety focus: control factors (vs. env. factors beyond control) analysis and resolution SSE

Status Update 7 Basic Definitions Risk: function of 3 elements likelihood(hazard) likelihood(hazard accident) worst possible loss due to accident (compare to expected loss) (System) safety engineering: ensuring acceptable risk scientific/management/engineering reducing risk factors context for software safety hazard identification, assessment, analysis, and resolution

Status Update 8 Safety Analysis & Resolution Hazard analysis: Fault trees: (static) logical conditions Event trees: dynamic sequences Combined and other analyses Generally qualitative Related: accident analysis and risk assessment Hazard resolution (pre-accident) Negate/block/mitigate/etc. Hazard elimination/reduction/control Damage reduction (post-accident)

Status Update 9 Hazard Analysis: FTA Fault tree idea: Top event (accident) Intermediate events/conditions Basic or primary events/conditions Logical connections Form a tree structure Elements of a fault tree: Nodes: conditions and sub-conditions terminal vs. no terminal Logical relations among sub-conditions AND, OR, NOT Other types/extensions possible

Status Update10 Hazard Analysis: FTA Example Collision AND Fail to Stop Other object OR Driver error ABS did not engage ABS engaged but fail to stop OR Breakpad woreout Software problem Other problems Example FTA for an automobile accident

Status Update11 Hazard Analysis: FTA FTA construction: Starts with top event/accident Decomposition of events or conditions Stop when further development not required or not possible (atomic) Focus on controllable events/elements Using FTA: Hazard identification logical composition (vs. temporal composition in ETA) Hazard resolution (more later) component replacement etc. focused safety verification negate logical relation

Status Update12 Hazard Analysis: ETA ETA: Why? FTA: focus on static analysis (static) logical conditions Dynamic aspect of accidents Timing and temporal relations Real-time control systems Search space/strategy concerns: Contrast ETA with FTA: FTA: backward search ETA: forward search May yield different path/info. ETA provide additional info.

Status Update13 Hazard Analysis: ETA Example ABS worked No collision Break in time ABS did not work Collision Obstacle appears Cruising Did not break in time Collision No obstacle No collision Example ETA for an automobile accident Compare/contrast with FTA a few slides back.

Status Update14 Hazard Analysis: ETA Event trees: Temporal/cause-effect diagram (Primary) event and consequences Stages and (simple) propagation not exact time interval logical stages and decisions Event tree analysis (ETA): Recreate accident sequence/scenario Critical path analysis Used in hazard resolution (more later) esp. in hazard reduction/control e.g. creating barriers isolation and containment

Status Update15 Design for Safety Eliminate identified hazard sources in material/component/software/etc. Reduce hazard likelihood/severity via: Creating hazard barriers, Minimizing failure probability, etc. Control hazard (after detection) via: Isolation and containment, Fail-safe design, etc. Reduce damage (post-accident, as compared to pre-accident for the above)

Status Update16 Hazard Elimination Hazard sources identification elimination (Some specific faults prevented or removed.) Traditional QA (but with hazard focus): Fault prevention activities: education/process/technology/etc formal specification & verification Fault removal activities: rigorous testing/inspection/analyses Safe design: More specialized techniques: Substitution, simplification, decoupling. Human error elimination. Hazardous material/conditions.

Status Update17 Hazard Reduction Hazard identification reduction (Some specific system failures prevented or tolerated.) Traditional QA (but with hazard focus): Fault tolerance Other redundancy Safe design: More specialized techniques: Creating hazard barriers Safety margins and safety constraints Locking devices Reducing hazard likelihood Minimizing failure probability Mostly passive or reactive

Status Update18 Hazard Control Hazard detection control Key: failure severity reduction. Post-failure actions. Failure-accident link weakened. Traditional QA: not much, but good design principles may help. Safe design: More specialized techniques: Isolation and containment Fail-safe design & hazard scope Protection system More active than passive Similar techniques to hazard reduction, but focus on post-failure severity vs. pre-failure hazard likelihood.

Status Update19 Accident Analysis & Damage Control Accident analysis: Accident scenario recreation/analysis possible accidents and damage areas Generally simpler than hazard analysis Based on good domain knowledge (not much software specifics involved) Damage reduction or damage control Post-accident vs. pre-accident hazard resolution Accident severity reduced Escape route Safe abandonment of material/product/etc. Device for limiting damages

Status Update20 Software Safety Program (SSP) Leveson s approach (Leveson, 1995) Software safety program (SSP) Process and technology integration Limited goals Formal verification/inspection based But restricted to safety risks Based on hazard analyses results Safety analysis and hazard resolution Safety verification: few things carried over In overall development process: Safety as part of the requirement Safety constraints at different levels/phases Verification/refinement activities Distribution over the whole process

Status Update21 Tasks/Schedule/Progress Major tasks: 1 state-of-the-art survey 2 literature/research survey 3 tutorial 4 annotated bibliography Schedule (6 months in summary table): 3 months: interim review 6/9/12 months: draft/semi-/final tutorial Progress to date: Basis/extensions for all tasks identified Personnel/responsibility specified draft in 3 months