Formation Informatique | Formation Management
Informatique » Développement logiciel » Formation Mobilité, temps réel et embarqué »

Safety Critical and High Availability Systems


Formation Safety

Stage pratique
Eligible au DIF

Réf : HAS

Prix 2012 : Nous consulter
Durée :  3  jours
Prochaines sessions: Nous consulter

Toutes les sessions  

Paris,Lyon
Aix,Nantes
Rennes,Toulouse
Bordeaux,Bruxelles
Strasbourg,Lille
Geneve,Sophia-antipolis
Luxembourg
:
Nous contacter

version pdf imprimer Faire suivre


Les objectifs de cette formation Safety


The primary goal of this course is to give the participant the skills necessary to design systems and software for real-time and embedded computers in which faults and failures could pose a danger to human life. As part of this, participants gain skills in designing systems for high availability. Indeed, many of these systems must not be stopped under any circumstances.

Participants

For engineers, software architects, project managers and technical consultants who have responsibility for designing and implementing the hardware and software for real-time and embedded systems.

Pre-requisites

Course participants are expected to be familiar with general embedded and real-time software design.

Pedagogic Methods

This is very practical, results-oriented training that provides knowledge and skills that can be applied immediately. Practical guidance is offered on how to address the courses' concerns when designing systems in fields such as medical, automotive, avionics, nuclear and chemical process control.

Program

Definitions and Background

- Hazards and Risks.

- Safety vs. Fault Tolerance.

- Design Issues for Safety.

- Redundancy.

- Approaches to Dependability.

Hands-on work
Automotive Drive-by-Wire.

Preparatory Analyses

- Hazard Analysis: FMEA.

- Fault & Event Tree Analysis.

- Probabilistic Event Tree Analysis.

- Risk Analysis.

- Approaches to Safety: Fault Avoidance, Fault Detection, Fault Tolerance.

Hands-on work
Fault Tree Analysis for Railway Safety. Event Tree and Risk Analysis for Railway Safety.

Safety Design Patterns

- Detection of Sensor Errors.

- Failstop.

- Fault Masking.

- Shutdown Design Patterns.

- Single Channel Patterns.

- Actuation Monitoring Options.

- Dual Channel Patterns.

- Dual Closed-Loop Patterns.

- Heterogeneous Peer-Channel Pattern.

- Dual-Dual Pattern.

Hands-on work
Avionic Computer Software Development.

Design Patterns for Resiliency and Safety

- Monitor-Actuator Pattern.

- The Safety Executive.

- A Cookbook for Safety-Critical Design Functionality.

- BIST: Built-In Self Test Software Design.

Hands-on work
Medical Respiratory Ventilator. Automotive Drive-by-Wire. Airbus A330/340 Fly-by-Wire. Boeing 777 Fly-by-Wire. The Wild Scalar.

Learning from System Failures and Accidents

- Sources of System Accidents.

- Software Factors in Some Famous Accidents.

- Government and International Software Safety Standards.

Case study
Successful Spacecraft.

High Availability: Underlying Principles

- Fault Avoidance vs. Tolerance.

- Replication vs. Functional Redundancy vs. Analytic Redundancy.

- Dynamic vs. Static Redundancy.

Hands-on work
Space Shuttle Software.

Fundamental System-Level Availability Design Patterns

- Static Hardware Fault Tolerance.

- N-Plex Design.

- Dynamic System Fault Tolerance.

- Redundant Pairs.

- Clusters.

- Cluster Failover Strategy Choices.

Hands-on work
MTBF, MTTF Calculations in Triple Modular Redundancy.

Concepts for Backward Error Recovery

- Design Diversity.

- Dynamic System Redundancy.

- Backward Error Recovery.

- Transactions & Checkpointing.


Design Patterns and Techniques for High Availability

- Checkpoint-Rollback.

- Process Pairs.

- Recovery Blocks.

- Limitations of Backward Error Recovery Patterns.

- Forward Error Recovery Design Patterns.

- Technical Issues in High Availability Design.

- Failover Management. Data Replication.

- Dealing with Software Design Faults.


C Language in Critical Systems

- Software Robustness: MISRA-C, LINT, Static Code Analyzers.

- Update on Static Code Analysis.

- The JPL "Power of 10" Coding Rules.

Hands-on work
C-Language Shenanigans.