Model-Based Safety-Critical Software Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional approaches to verifying the correctness and efficiency of operational application code for safety-critical systems, such as those in cars, trains, and medical devices, are inefficient and difficult, leading to potential safety risks due to increased complexity and size.

Innovation Solution

A model-based automated design process using domain-specific ontologies and formal verification methods to generate requirements-based tests and automate software design, reducing errors and development time by employing semantic nets, coverage analysis, and automated theorem proving.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional verification approaches are used for safety-critical software, then development flexibility is maintained, but verification efficiency and correctness are insufficient

Engineering Contradiction:
Improvesoftware verification correctnessVSAvoidverification efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by performing formal verification and generating test cases before actual software development. The model-based approach creates a verified specification model that guides subsequent coding, ensuring correctness is established early rather than verifying after development. This prevents errors from propagating through the development process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a formal specification model as an intermediary between requirements and implementation. This model serves as a bridge that captures system behavior formally, allowing automated verification and test case generation. The specification model mediates between high-level requirements and low-level code, enabling rigorous verification without direct manual checking of implementation details.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If manual verification methods are used, then flexibility in approach is maintained, but time and labor costs increase

Engineering Contradiction:
Improveverification flexibilityVSAvoiddevelopment time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements self-service by enabling automated verification where the formal specification model automatically generates test cases and verifies implementation correctness. The system serves itself by using the specification model to guide its own verification process, reducing reliance on manual reviewer time while maintaining thoroughness. Tools automatically check consistency between requirements, design, and implementation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces manual mechanical verification processes with automated computational methods. Formal verification tools and automated test case generators substitute for human reviewers, using mathematical logic and algorithmic approaches to verify correctness. This substitution maintains flexibility through configurable verification rules while dramatically reducing time investment.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Measurement precision

If comprehensive verification is performed manually, then coverage can be improved, but complexity of the verification process increases

Engineering Contradiction:
Improveverification coverageVSAvoidverification process complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the verification process into distinct automated stages: requirements validation, specification model verification, design model verification, and implementation verification. Each stage has specific verification objectives and generates artifacts for the next stage. This segmentation achieves comprehensive coverage while managing complexity through structured, incremental verification rather than attempting to verify everything simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses parameter changes by transforming verification from a qualitative manual process to a quantitative automated process. Formal methods introduce precise mathematical parameters and logical constraints that can be automatically evaluated. Test case generation uses configurable parameters to systematically vary input conditions, achieving thorough coverage through algorithmic exploration rather than manual judgment.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10346140B2System and method for model based technology and process for safety-critical software development
Publication Date: 2019.07.09 GENERAL ELECTRIC CO
  • US10346140B2 patent drawing
  • US10346140B2 patent drawing
  • US10346140B2 patent drawing

AI summary

A method for model-based design of safety-critical software is disclosed. The method includes receiving natural-language software requirements, developing a specification model by implementing either semantic modeling or graphical modeling, applying formal requirements analysis to the specification model, auto generating requirements based and robustness test cases from the specification model, developing a design model based on the specification model, applying test cases to the design model, auto-generating source code using the design model, verifying the source code using both test cases and static analysis technology, and compiling executable object code from the verified source code. If a result of the analysis of the software specification or design models is not satisfactory then adjusting the specification or design model to correct any inconsistency, and repeating applying the analysis and test cases. A system for implementing the model-based design and a non-transitory computer readable medium are disclosed.