Deterministic Software Root-Cause Reporting with Causal Event IDs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software systems struggle to accurately and efficiently connect negative outcomes to their root cause conditions, leading to significant troubleshooting challenges due to the complexity of data flows, varying cause-and-effect relationships, and the intractable number of possible failure modes, resulting in prolonged downtime and resource wastage.

Innovation Solution

A causal event database is implemented with unique causal IDs to track and link parent and child events, using Boolean operations to propagate these IDs, allowing users to quickly identify root causes through graphical interfaces.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional error tracking methods are used in software systems, then the system can operate with simpler data structures and less overhead, but the ability to accurately identify root causes of errors deteriorates

Engineering Contradiction:
Improveroot cause identification accuracyVSAvoiderror tracking system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The error tracking system is segmented into distinct components: causal IDs that uniquely identify cause-and-effect relationships, parent-child event linking structures, and hierarchical organization of events. This segmentation allows precise root cause identification by breaking down complex error chains into manageable, traceable units without overwhelming system complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Causal IDs serve as intermediary elements that bridge causes and effects in software systems. These identifiers act as mediators that carry diagnostic information through the system, enabling accurate root cause tracking without requiring complex direct analysis of cause-and-effect relationships at every level

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If comprehensive error tracking is implemented to capture all possible failure modes, then the completeness of diagnostic information improves, but the time and resources required for troubleshooting increase

Engineering Contradiction:
Improvediagnostic information completenessVSAvoidtroubleshooting time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-establishing causal ID links between parent and child events as errors occur. This preliminary structuring of diagnostic information allows troubleshooting to begin from an organized state, reducing the time needed to analyze failure modes while maintaining comprehensive diagnostic coverage

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The error tracking system adds a temporal and hierarchical dimension to error data by organizing events in parent-child relationships with causal IDs. This dimensional organization transforms comprehensive but potentially overwhelming error information into a structured hierarchy that can be efficiently navigated, reducing troubleshooting time while preserving diagnostic completeness

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If detailed causal tracking is implemented across all software components, then the reliability of error diagnosis improves, but the computational overhead and system complexity increase

Engineering Contradiction:
Improveerror diagnosis reliabilityVSAvoidcomputational overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system extracts only the essential causal identification information (causal IDs and parent-child links) from complex error data, separating this critical diagnostic information from other error details. This extraction maintains high diagnosis reliability by focusing on key causal relationships while reducing computational overhead by not tracking every possible error attribute

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP3857378B1Method for deterministically reporting cause and effect in software systems
Publication Date: 2025.08.06 SIEMENS HEALTHCARE DIAGNOSTICS INC
  • EP3857378B1 patent drawingFigure 1
  • EP3857378B1 patent drawingFigure 2A
  • EP3857378B1 patent drawingFigure 2B

AI summary

Negative outcomes experienced by a user in a live software system can be automatically, deterministically, and contemporaneously traced back to the root conditions that caused those outcomes, by generating causal event entries in a database for those root conditions as they occur, assigning unique causal IDs to those causal events, and propagating causal IDs alongside the software system state changes that are known to produce negative outcomes and which are effected by those root conditions. By selectively passing causal IDs based on the input and output values of the operation, subsequent causal events and negative outcomes can be linked accurately to causal IDs of parent events, making it simpler to trace negative outcomes for the user back to their root cause events in a software system.