Safety-Critical Systems 6 Quality Management and Certification T 79.5303.

Slides:



Advertisements
Similar presentations
Operation & Maintenance Engineering Detailed activity description
Advertisements

Medical Device Software Development
Verification and Validation
System Integration Verification and Validation
Safety Critical Systems T Safeware - Design for safety hardware and software Ilkka Herttua.
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
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 Certification Chapter 14, Storey. 2 Topics  What is certification?  Various forms of certification  The process of system certification (the planning.
1 Solution proposal Exam 19. Mai 2000 No help tools allowed.
Soft. Eng. II, Spr. 02Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 6 Title : The Software Quality Reading: I. Sommerville, Chap: 24.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
Chapter 24 - Quality Management 1Chapter 24 Quality management.
 QUALITY ASSURANCE:  QA is defined as a procedure or set of procedures intended to ensure that a product or service under development (before work is.
Introduction to Software Testing
Software Testing & Strategies
Quality Risk Management ICH Q9 Annex I: Methods & Tools
Testing safety-critical software systems
Verification and Validation
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
JENN SHAFNER BRIAN KROUSE CLINT KEHRES. Pre ISO 9000  The BS 5750 standard required factories to document manufacturing procedures.  BS 5750 was known.
Software Project Management
CS 4310: Software Engineering
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management 1.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
Extreme Programming Software Development Written by Sanjay Kumar.
Introduction to Software Quality Assurance (SQA)
Safety Critical Systems
Managing Software Quality
ISO Tor Stålhane IDI / NTNU. What is ISO ISO 9001 was developed for the production industry but has a rather general structure ISO describes.
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
Safety-Critical Systems 6 Certification
This chapter is extracted from Sommerville’s slides. Text book chapter
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
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.
Safety Critical Systems 5 Testing T Safety Critical Systems.
Safety-Critical Systems 5 Testing and V&V T
Software Testing and Quality Assurance Software Quality Assurance 1.
1 Chapter 3 1.Quality Management, 2.Software Cost Estimation 3.Process Improvement.
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
Safety Critical Systems T Safeware - Design for safety hardware and software Ilkka Herttua.
1 Lecture 12: Chapter 16 Software Quality Assurance Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Failure Modes and Effects Analysis (FMEA)
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.
Process Safety Management Soft Skills Programme Nexus Alliance Ltd.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini XVII. Verification and Validation.
Medical Device Software Development
Software Quality Assurance
Quality Management chapter 27.
Chapter 18 Maintaining Information Systems
Software Requirements
Lecture 09:Software Testing
Verification and Validation Unit Testing
Chapter 13 Quality Management
PSS verification and validation
Presentation transcript:

Safety-Critical Systems 6 Quality Management and Certification T

Quality Management Systematic actions to gain quality,which is essential in the life cycle of a safety system. Quality Assurance: - concentrates that manufacture prosess and work are performed correctly. Quality Control: - ensures that product is correct.

ISO 9000 Quality Management System International Organisation for Standardisation (ISO) created the Quality Management System (QMS) basis already in ISO 9001:1987 Model for quality assurance in design, development, production, installation and servicing. ISO 9002:1987 Model for quality assurance in production, installation and servicing. ISO 9003:1987 Model for quality assurance in final inspection and test covered only the final inspection of finished product.

ISO 9001 ISO 9000:2000 combines the three standards 9001, 9002, and 9003 into one, now called Design and development procedures are required only if a company does in fact engage in the creation of new products. New version has a goal to improve effectiveness via process performance metrics — numerical measurement of the effectiveness of tasks and activities.

ISO 9001 A company or organization that has been independently audited and certified to be in conformance with ISO 9001 may publicly state that it is "ISO 9001 certified" or "ISO 9001 registered." Certification to an ISO 9000 standard does not guarantee the compliance (and therefore the quality) of end products and services; rather, it certifies that consistent business processes are being applied. ISO 9001 is not enough and more strict systems are needed. These are described on norms, which have to be followed according to get system certificated.

ISO 9001 System The requirements in ISO 9001 include: a set of procedures that cover all key processes in the business monitoring manufacturing processes to ensure manufactures are producing quality produce keeping proper records checking outgoing product for defects, with appropriate corrective action where necessary regularly reviewing individual processes and the quality system itself for effectiveness.

Certification Process to indicate conformance with a standard – checked by an authorised body. National Safety Authority, Minister of Transportation International institutes and certified /notified bodies in EU Follow given guidelines, like DO-178B, IEC or CENELEC norms.

Example in Avionic system DO-178B Certification DO-178B provides the aviation community with guidelines for developing software for airborne systems and equipment that complies with accepted airworthiness requirements. Five software levels (A through E), Level A is the most stringent.

DO-178B Certification The number of objectives to be satisfied. In the standard, "with independence" refers to a separation of responsibilities where the person(s) who verify an objective must not be the developers of the item in question. In some cases, an automated tool may be equivalent to independence.

Safety-Critical Systems Summary

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

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

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

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) II Design - Fault Tolerance

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

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

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) 5.10 (incompleteness within specification) 7.15 (reliability model) 9.17 (reuse of software) 11.2 Textual specification Z-language 12.7 Dynamic testing Please your home assignments by 26 April 2007 to References: OFFIS, I-Logix, KnowGravity