Safety-Critical Systems 6 Certification

Slides:



Advertisements
Similar presentations
Operation & Maintenance Engineering Detailed activity description
Advertisements

Medical Device Software Development
Safety Critical Systems T Safeware - Design for safety hardware and software Ilkka Herttua.
EECE499 Computers and Nuclear Energy Electrical and Computer Eng Howard University Dr. Charles Kim Fall 2013 Webpage:
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development.
Software Quality Assurance (SQA). Recap SQA goal, attributes and metrics SQA plan Formal Technical Review (FTR) Statistical SQA – Six Sigma – Identifying.
Safety-Critical Systems 2 T Risk analysis and design for safety Ilkka Herttua.
Safety-Critical Systems 2 Requirement Engineering T Spring 2008 Ilkka Herttua.
Developing safety critical systems
1 Solution proposal Exam 19. Mai 2000 No help tools allowed.
Unit 251 Implementation and Integration Implementation Unit Testing Integration Integration Approaches.
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
Developing Dependable Systems CIS 376 Bruce R. Maxim UM-Dearborn.
CSC 402, Fall Requirements Analysis for Special Properties Systems Engineering (def?) –why? increasing complexity –ICBM’s (then TMI, Therac, Challenger...)
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
Introduction to Software Testing
Testing safety-critical software systems
Software System Integration
Software Dependability CIS 376 Bruce R. Maxim UM-Dearborn.
Safety-Critical Systems 6 Quality Management and Certification T
Romaric GUILLERM Hamid DEMMOU LAAS-CNRS Nabil SADOU SUPELEC/IETR.
Extreme Programming Software Development Written by Sanjay Kumar.
Safety Critical Systems
Managing Software Quality
Maintaining Information Systems Modern Systems Analysis and Design.
CLEANROOM SOFTWARE ENGINEERING.
Safety-Critical Systems 3 Hardware/Software T Ilkka Herttua.
Safety-Critical Systems 6 Safety and Quality Management and Certification T
CSE 303 – Software Design and Architecture
Views from different perspectives
 CS 5380 Software Engineering Chapter 8 Testing.
HCI in Software Process Material from Authors of Human Computer Interaction Alan Dix, et al.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Software Measurement & Metrics
Jump to first page (c) 1999, A. Lakhotia 1 Software engineering? Arun Lakhotia University of Louisiana at Lafayette Po Box Lafayette, LA 70504, USA.
FAULT TREE ANALYSIS (FTA). QUANTITATIVE RISK ANALYSIS Some of the commonly used quantitative risk assessment methods are; 1.Fault tree analysis (FTA)
Approaching a Problem Where do we start? How do we proceed?
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
BE-SECBS FISA 2003 November 13th 2003 page 1 DSR/SAMS/BASP IRSN BE SECBS – IRSN assessment Context application of IRSN methodology to the reference case.
Software Reliability in Nuclear Systems Arsen Papisyan Anthony Gwyn.
Safety-Critical Systems T Ilkka Herttua. Safety Context Diagram HUMANPROCESS SYSTEM - Hardware - Software - Operating Rules.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development 3.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
Safety Critical Systems 5 Testing T Safety Critical Systems.
Safety-Critical Systems 5 Testing and V&V T
Quality Assurance.
CprE 458/558: Real-Time Systems
Safety-Critical Systems 7 Summary T V - Lifecycle model System Acceptance System Integration & Test Module Integration & Test Requirements Analysis.
Software Safety Case Why, what and how… Jon Arvid Børretzen.
Idaho RISE System Reliability and Designing to Reduce Failure ENGR Sept 2005.
Over View of CENELC Standards for Signalling Applications
Ensure that the right functions are performed Ensure that the these functions are performed right and are reliable.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
Safety Critical Systems T Safeware - Design for safety hardware and software Ilkka Herttua.
Smart Home Technologies
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
Safety-Critical Systems 3 T Designing Safety Software Ilkka Herttua.
About Us! Rob StockhamBA IEng MIEE General Manager Moore Industries-Europe, Inc MemberIEE Honorary Secretary ISA England Institute of Directors DirectorThe.
Dillon: CSE470: ANALYSIS1 Requirements l Specify functionality »model objects and resources »model behavior l Specify data interfaces »type, quantity,
ON “SOFTWARE ENGINEERING” SUBJECT TOPIC “RISK ANALYSIS AND MANAGEMENT” MASTER OF COMPUTER APPLICATION (5th Semester) Presented by: ANOOP GANGWAR SRMSCET,
Advanced Software Engineering Dr. Cheng
Medical Device Software Development
Chapter 18 Maintaining Information Systems
Software Requirements
Introduction to Software Testing
Software System Integration
Chapter 10 – Software Testing
Human Computer Interaction Lecture 14 HCI in Software Process
Presentation transcript:

Safety-Critical Systems 6 Certification

Quality Management Quality and systematic actions to gain it, are essential for producing a safety system. Quality = Product or service satisfies needs Standards - ISO 9001

Certification Prosess to indicate conformance with a standard – checked by an authorised body. National Safety Authority, Goverment International institutes, certified bodies Follow given guidelines, like IEC 1508 or CENELEC norms

Safety-Critical Systems Summary

V - Lifecycle model Knowledge Base * Requirements Analysis Requirements Model Knowledge Base * Requirements Analysis Test Scenarios Test Scenarios System Acceptance Requirements Document Functional / Architechural - Model Systems Analysis & Design System Integration & Test Specification Document Software Design Module Integration & Test * Configuration controlled Knowledge that is increasing in Understanding until Completion of the System: Requirements Documentation Requirements Traceability Model Data/Parameters Test Definition/Vectors Software Implementation & Unit Test

I - Requirements Requirements are stakeholders (customer) demands – what they want the system to do. Not defining how !!! => specification Safety requirements are defining what the system must do and must not do in order to ensure safety. Both positive and negative functionality.  

I - Requirement Engineering Right Requirements Ways to refine Requirements - complete – linking to hazards (possible dangerous events) - correct – testing & modelling - consistent – semi/formal language - unambiguous – text in real English  

I - Semi-formal Requirements Requirements should be inambigious, complete, consistent and correct. Natural language has the intepretation possibility. More accurate description needed. Using pure mathematic notation – not always suitable for communication with domain expert. Formalised Methods are used to tackle the requirement engineering. (Structured text, formalised English).

I - Hazard formalisation

I – Multiple Hazards

I - Hazard example

I - Hazard Analysis A Hazard is situation in which there is actual or potential danger to people or to environment. Analytical techniques: - Failure modes and effects analysis (FMEA) - Failure modes, effects and criticality analysis (FMECA) - Hazard and operability studies (HAZOP) - Event tree analysis (ETA) - Fault tree analysis (FTA)

Fault Tree Analysis 1 The diagram shows a heater controller for a tank of toxic liquid. The computer controls the heater using a power switch on the basis of information obtained from a temperature sensor. The sensor is connected to the computer via an electronic interface that supplies a binary signal indicating when the liquid is up to its required temperature. The top event of the fault tree is the liquid being heated above its required temperature.  

Fault event not fully traced to its source Basic event, input Fault event resulting from other events OR connection

I - Risk Analysis Risk is a combination of the severity (class) and frequency (probability) of the hazardous event. Risk Analysis is a process of evaluating the probability of hazardous events. The Value of life?? Value of life is estimated between 0.75M –2M GBP. USA numbers higher.

V - Lifecycle model Knowledge Base * Requirements Analysis Requirements Model Knowledge Base * Requirements Analysis Test Scenarios Test Scenarios System Acceptance Requirements Document Functional / Architechural - Model Systems Analysis & Design System Integration & Test Specification Document Software Design Module Integration & Test * Configuration controlled Knowledge that is increasing in Understanding until Completion of the System: Requirements Documentation Requirements Traceability Model Data/Parameters Test Definition/Vectors Software Implementation & Unit Test

II - Designing for Safety 1 Faults groups: - requirement/specification errors - random component failures - systematic faults in design (software) Approaches to tackle problems - right system architecture (fault-tolerant) - reliability engineering (component, system) - quality management (designing and producing processes)

II - Designing for Safety 2 Hierarchical design - simple modules, encapsulated functionality - separated safety kernel – safety critical functions Maintainability - preventative versa corrective maintenance - scheduled maintenance routines for whole lifecycle - easy to find faults and repair – short MTTR mean time to repair Human error - Proper HMI

II Design - Fault Tolerance Fault tolerance hardware - Achieved mainly by redundancy Redundancy - Adds cost, weight, power consumption, complexity Other means: - Improved maintenance, single system with better materials (higher MTBF)

V - Lifecycle model Knowledge Base * Requirements Analysis Requirements Model Knowledge Base * Requirements Analysis Test Scenarios Test Scenarios System Acceptance Requirements Document Functional / Architechural - Model Systems Analysis & Design System Integration & Test Specification Document Software Design Module Integration & Test * Configuration controlled Knowledge that is increasing in Understanding until Completion of the System: Requirements Documentation Requirements Traceability Model Data/Parameters Test Definition/Vectors Software Implementation & Unit Test

III - Safety-Critical Software 1 Correct Program: Normally iteration is needed to develop a working solution. (writing code, testing and modification). In non-critical environment code is accepted, when tests are passed. Testing is not enough for safety-critical application – Needs an assessment process: dynamic/static testing, simulation, code analysis and formal verification.

III - Safety-Critical Software 2 Dependable Software : Process for development Work discipline Well documented Quality management Validated/verificated

III - Safety-Critical Software 3 Designing Principles Use hardware interlocks before computer/software New software features add complexity, try to keep software simple Plan for avoiding human error – unambigious human-computer interface Removal of hazardous module (Ariane 5 unused code)

III - Safety-Critical Software 4 Designing Principles Add barriers: hard/software locks for critical parts Minimise single point failures: increase safety margins, exploit redundancy and allow recovery. Isolate failures: don‘t let things get worse. Fail-safe: panic shut-downs, watchdog code Avoid common mode failures: Use diversity – different programmers, n-version programming

III - Safety-Critical Software 5 Designing Principles: Fault tolerance: Recovery blocks – if one module fails, execute alternative module. Don‘t relay on run-time systems

III - Safety-Critical Software 6 Reduction of Hazardous Conditions -summary Simplify: Code contains only minimum features and no unnecessary or undocumented features or unused executable code Diversity: Data and control redundancy Multi-version programming: shared specification leads to common-mode failures, but synchronisation code increases complexity

Verified software process

V - Lifecycle model Knowledge Base * Requirements Analysis Requirements Model Knowledge Base * Requirements Analysis Test Scenarios Test Scenarios System Acceptance Requirements Document Functional / Architechural - Model Systems Analysis & Design System Integration & Test Specification Document Software Design Module Integration & Test * Configuration controlled Knowledge that is increasing in Understanding until Completion of the System: Requirements Documentation Requirements Traceability Model Data/Parameters Test Definition/Vectors Software Implementation & Unit Test

Testing Testing is a process used to verify or validate system or its components. Testing is performed during various stage of system development. V-lifecycle diagram. Module testing – evaluation of a small function of the hardware/software. System integration testing – investigates correct interaction of modules. System validation testing – a complete system satisfies its requirements.

Home assignments 1.12 (primary, functional and indirect safety) 2.4 (unavailability) 4.18 (tolerable risk) 5.10 (incompleteness within specification) 7.15 (reliability model) 9.17 (reuse of software) 11.2 Textual specification 11.18 Z-language 12.7 Dynamic testing 12.20 Constructed environment Please email your home assignments by 12 May 2005 to herttua@eurolock.org References: OFFIS, I-Logix, KnowGravity