Length: 3 Days
Print Friendly, PDF & Email

Software Safety Training

Software Safety Training is a 3-day course where participants learn the nature of software hazards, root causes, and the methods by which these hazards may be prevented or discovered.

Participants also learn the administrative methods and documentation needed to establish and manage a software safety program; have better understanding of providing evidence for a safety case or proof.

Advanced Software Safety Architecture Workshop by Tonex

Software safety is ultimately about preventing a system from reaching dangerous states.

In software, the principle clearinghouse of state change is memory. So the first line of defense preventing a program from reaching a dangerous state is controlling what can access its memory and how that memory can be accessed.

Software safety as predictability is another important aspect. Experts in this field contend that enhanced software safety has a lot to do with attitude. Software engineers have historically been bad at safety because software engineers are not used to the idea that software can injure.

Yet, besides the potential for injury, the total cost of poor software quality in the U.S. is estimated at $2.08 trillion.

Many feel the most effective way to enforce software safety and security is to use a static code analysis tool. In fact, MISRA recommends that you use a static code analysis tool to ensure the highest degree of compliance.

By using a static code analysis tool, you’re able to identify software safety and security vulnerabilities, errors and bugs. This enables you to fix these potential weaknesses before they become dangerous and damaging.

It’s generally agreed that to achieve an acceptable level of safety for software used in critical applications, software system safety engineering must be given primary emphasis early in the requirements definition and system conceptual design process.

The next step is for safety-critical software receive continuous management emphasis and engineering analysis throughout the development and operational lifecycles of the system.

Additionally, software with safety-critical functionality must be thoroughly verified with objective analysis.

Functional Hazard Analyses (FHA) are often conducted early on – in parallel with or as part of system engineering Functional Analyses – to determine the safety-critical functions (SCF) of the systems for further analyses and verification.

The different tools of Software safety include:

● Functional Analysis (FA), Preliminary Hazard Analysis (PHA), Preliminary Risk Analysis (PRA)
● Root Cause Analysis (RCA) / Software Failure Modes and Effects Analysis (FMEA)
● Analysis of the Effects of Software Defects (AESD) at the functional or code level
● Critical code review

Due to the importance of effective software safety, standards have been developed for organizations to follow in order to protect the public

Software Safety Training Course by Tonex

Software Safety Training is a 3-day bootcamp course style covering all aspects of Software Safety focusing on philosophies and methods in software safety and its primary objectives: to design, code, test, and support software with the appropriate Level‐of‐Rigor (LOR) to instill a confidence, or the assurance of safe software.

The course also covers defining the necessary safety requirements for the design, code, test, verification, and validation of software that specifically target and mitigate the software “causes” of the defined hazards and mishaps of the system.

Software system safety is a subset of system safety and system engineering and is synonymous with the software engineering aspects of Functional Safety. Workshops are arranged to practice Software Failure Modes and Effects Analysis (FMEA) Software Fault Tree Analysis (FTA), Software Sneak Analysis and Petri Nets to analyze sneak conditions, latent software, or integrated conditions that may cause an unwanted event to occur or may inhibit a desired event and is not caused by software failure.

Learning Objectives

Software Safety Training helps participants learn the following:

  • The nature of software hazards, root causes, and the methods by which these hazards may be prevented or discovered.
  • The administrative methods and documentation needed to establish and manage a software safety program; have better understanding of providing evidence for a safety case or proof.
  • Software hazard analysis techniques that helps them identify hazards (the critical thinking part)
  • Risk assessment in terms of severity, probability and control
  • Risk mitigation – the problem solving/ solutions/safe designing

Who Should Attend?

Software engineers, project managers, technical admin, safety engineers, system engineers, testing and V&V engineers, analysts and anyone else who is interested to acquire skills in software safety.

Course Content

Introduction to Software Safety

  • Software Engineering and Software System Safety
  • Introduction to the “Systems” Approach
  • The Software Development Life Cycle
  • Principles of system safety in the design, development, use, and maintenance of software systems
  • Integration with safety-critical hardware systems in an operational environment.
  • The Need for Software System Safety (SwSS)
  • Software System Safety Directives, Documents, Policies and Regulations
  • Safety Requirements and Critical Functionalities
  • Hazards and Design Safeguards for Mitigation
  • Safety Critical Functions

System Safety Program Plan 

  • Overview of Software Safety Standards
  • MIL STD 882-E
  • Joint Software Systems Safety Engineering Handbook, 2018
  • IEEE, IEC and ISO Standards
  • AIAA Standards
  • IEEE 1584 Compliant Software for Hazard Analysis
  • MISRA-C and MISRA C++ Software Safety Guidelines
  • Safety verification of Ada programs using software fault trees
  • Software Safety Program Plan
  • Preliminary Hazard List
  • Software Hazard Analysis
  • Safety Critical Functions List
  • Software Safety Checklist
  • Formal Mathematical Models
  • Software Safety Reliability/Maintenance
  • Safety Requirements Criteria Analysis
  • Safety Requirements Verification Report
  • Safety Assessment Report

Introduction to Risk Management and System Safety

  • A Discussion of Risk in Software Safety
  • Types of Risk
  • Areas of Program Risk
  • System Safety Engineering
  • Safety Risk Management

Software Safety Implementation Process and Tasks       

  • Software Safety Process
  • Software Safety Analyses and Tools
  • Software Safety Planning
  • Hazard Identification
  • Tracking
  • Risk Assessment
  • Risk Mitigation
  • Risk Reduction
  • Failure modes, including hardware, software, human and system are addressed in the design of the software
  • Failure Mode Effect Analysis (FMEA)
  • Failure mode, effects and Criticality Analysis (FMECA)
  • Fault Tree Analysis (FTA)
  • Petri net modeling and software safety analysis
  • Software sneak condition analysis
  • Analyzing unwanted event
  • Sneak conditions and improper operation, loss of system availability, program delays, or even death or injury to personnel
  • Methodologies for embedded military applications
  • Sound software engineering practices
  • Safety issues and safety attributes
  • Software with safety critical functionality

Software Safety Engineering Process

  • Software Safety Engineering Process Charts
  • Software Safety Engineering Products and Tools
  • Software Safety Planning Management
  • Planning
  • Management
  • Software Safety Program Milestones
  • Tailoring Generic Safety-Critical Requirements
  • Preliminary Hazard Analysis Development
  • Derive System Safety-Critical Software Requirements
  • Preliminary Software Design, Subsystem Hazard Analysis
  • Module Safety-Criticality Analysis
  • Program Structure Analysis
  • Traceability Analysis
  • Detailed Software Design, Subsystem Hazard Analysis

Software Safety Engineering Process Cross DoD 5000 Lifecycle Activities

  • Software Requirements Hazard Analysis
  • Top-level Design Hazard Analysis
  • Preliminary Design Review (PDR)
  • Detailed Design Hazard Analysis
  • Critical Design Review (CDR)
  • Code-level Software Hazard Analysis
  • Software Safety Testing
  • Software/User Interface Analysis
  • Software Change Hazard Analysis
  • Analysis of Alternatives (AoA)
  • Initial Capabilities Document (ICD)
  • Systems Engineering Plan (SEP)
  • Technology Development Strategy (TDS)
  • Test & Evaluation Strategy (TES)
  • Software Safety Plan (SSP)

Software Hazard Analysis Process

  • Software Safety Testing & Risk Assessment
  • Software Safety Test Planning
  • Software Safety Test Analysis
  • Software Standards and Criteria Assessment
  • Software Safety Residual Risk Assessment
  • Safety Assessment Report
  • Safety Assessment
  • Planning and Management
  • Task Implementation
  • Software Risk Assessment and Acceptance

Software Planning Interfaces 

  • Engineering Management
  • Design Engineering
  • Systems Engineering
  • Software System Safety Handbook
  • Software Development
  • Integrated Logistics Support
  • Other Engineering Support

Meetings and Reviews 

  • Program Management Reviews
  • Integrated Product Team Meetings
  • System Requirements Reviews
  • System/Subsystem Design Reviews
  • Preliminary Design Review
  • Critical Design Review
  • Test Readiness Review
  • Functional Configuration Audit
  • Physical Configuration Audit
  • Resource Allocation
  • Safety Personnel
  • Safety Schedules and Milestones
  • Safety Tools and Training
  • Required Hardware and Software

Software Safety Program Plans 

  • Risk Management Plan
  • Quality Assurance Plan
  • Reliability Engineering Plan
  • Software Development Plan
  • Systems Engineering Management Plan
  • Test and Evaluation Master Plan
  • Software Test Plan
  • Software Installation Plan
  • Software Transition Plan

Types of Safety Requirements and Procedures

  • Hardware and Human Interface Requirements
  • Interface Requirements
  • Operations and Support Requirements
  • Safety/Warning Device Requirements
  • Protective Equipment Requirements
  • Procedures and Training Requirements
  • Determination of Safety Critical Computing System Functions
  • Design and Development Process Requirements And Guidelines
  • Configuration Control
  • Software Quality Assurance Program
  • Software Design Verification and Validation
  • System Design Requirements and Guidelines
  • Designed Safe States

Software Safety Requirements Verification   

  • Hierarchy Tree Example
  • Detailed Software Design Analysis
  • Verification Methods
  • Example of a Data Flow Diagram
  • Flow Chart Examples
  • System Hazard Analysis
  • Example of a System Hazard Analysis Interface Analysis
  • Documentation of Interface Hazards and Safety Requirements
  • Documenting Evidence of Hazard Mitigation
  • Software Safety Test Planning
  • Software Safety Testing and Analysis
  • Software Requirements Verification
  • Residual Safety Risk Assessment
  • SSHA & SHA Hazard Record Example
  • Hazard Requirement Verification Document Example
  • Software Safety SOW Paragraphs
  • Hazard Severity
  • Hazard Probability
  • Table HRI Matrix
  • Process Tradeoff Analyses
  • Example of a Software Safety Requirements Verification Matrix
  • Safety critical Function Matrix

Workshop and Case Studies

  • Software Safety Activities
  • Tasks and Methods
  • Requirements Hazard Analysis
  • Architectural Design Hazard Analysis
  • Detailed Design Hazard Analysis
  • Code Hazard Analysis
  • System Safety Analysis Techniques
  • FMEA and FMECA
  • FTA
  • Working with Software Safety Analysis Techniques
  • Software FMEA/FMECA
  • Software HAZOP
  • Software FTA
  • Comparison of Software Safety Analysis Methods
  • Sample System Safety Requirements
  • Sample Software Safety Requirements
  • Software and System Hazard Analysis (SHA)
  • System hazard analysis (SHA)
  • Sample Software Requirements Hazard Analysis
  • Sample Software FMEA and FMECA Analysis
  • Sample Software Fault Tree Analysis (FTA)
  • Software Sneak Analysis
  • MISRA-C and MISRA-C++ Overview

Software Safety Training

Request More Information

Please enter contact information followed by your questions, comments and/or request(s):
  • Please complete the following form and a Tonex Training Specialist will contact you as soon as is possible.

    * Indicates required fields

  • This field is for validation purposes and should be left unchanged.

Request More Information

  • Please complete the following form and a Tonex Training Specialist will contact you as soon as is possible.

    * Indicates required fields

  • This field is for validation purposes and should be left unchanged.