SafetyCritical Systems 6 Quality Management and Certification T

  • Slides: 38
Download presentation
Safety-Critical Systems 6 Quality Management and Certification T 79. 5303

Safety-Critical Systems 6 Quality Management and Certification T 79. 5303

Quality Management • Systematic actions to gain quality, which is essential in the life

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

ISO 9000 Quality Management System • International Organisation for Standardisation (ISO) created the Quality Management System (QMS) basis already in 1987. • 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

ISO 9001 • ISO 9000: 2000 combines the three standards 9001, 9002, and 9003 into one, now called 9001. • 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

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

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

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-178 B, IEC 61508 or CENELEC norms.

Example in Avionic system DO-178 B Certification • DO-178 B provides the aviation community

Example in Avionic system DO-178 B Certification • DO-178 B 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-178 B Certification The number of objectives to be satisfied. In the standard, "with

DO-178 B 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

Safety-Critical Systems Summary

V - Lifecycle model Requirements Model Requirements Document Test Scenarios Knowledge Base * Test

V - Lifecycle model Requirements Model Requirements Document Test Scenarios Knowledge Base * Test Scenarios Requirements Analysis Functional / Architechural - Model Systems Analysis & Design Specification Document Software Design System Acceptance System Integration & Test Module Integration & Test Software Implementation & Unit Test * 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

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 –

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 should be inambigious, complete, consistent and correct. - Natural language

I - Semi-formal 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 - Hazard formalisation

I – Multiple Hazards

I – Multiple Hazards

I - Hazard example

I - Hazard example

I - Hazard Analysis • A Hazard is situation in which there is actual

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

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

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

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. 75 M – 2 M GBP. USA numbers higher.

V - Lifecycle model Requirements Model Requirements Document Test Scenarios Knowledge Base * Test

V - Lifecycle model Requirements Model Requirements Document Test Scenarios Knowledge Base * Test Scenarios Requirements Analysis Functional / Architechural - Model Systems Analysis & Design Specification Document Software Design System Acceptance System Integration & Test Module Integration & Test Software Implementation & Unit Test * 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

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

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

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 Requirements Model Requirements Document Test Scenarios Knowledge Base * Test

V - Lifecycle model Requirements Model Requirements Document Test Scenarios Knowledge Base * Test Scenarios Requirements Analysis Functional / Architechural - Model Systems Analysis & Design Specification Document Software Design System Acceptance System Integration & Test Module Integration & Test Software Implementation & Unit Test * 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

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

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 -

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

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

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

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

Verified software process

V - Lifecycle model Requirements Model Requirements Document Test Scenarios Knowledge Base * Test

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

Testing is a process used to verify or validate system or its components. 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

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 11. 18 Z-language 12. 7 Dynamic testing Please email your home assignments by 26 April 2007 to herttua@uic. asso. fr References: OFFIS, I-Logix, Know. Gravity