Software Error Path Switching for Automatic Diagnostics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software systems face challenges in continuously ensuring availability due to software errors, particularly Heisenbugs and intermediate-type errors, which are difficult to reproduce and fix, leading to significant downtime and inefficient error correction processes.

Innovation Solution

Implementing a software system with components for automatic error tracking, diagnosis, and path-switching, where error information is recorded in a database, diagnostic features are automatically enabled based on error conditions, and execution code paths can be switched to alternate paths to circumvent errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If manual error tracking and diagnosis methods are used, then error detection capability is maintained, but error resolution time increases significantly and system downtime increases

Engineering Contradiction:
Improveerror resolution timeVSAvoidautomatic error diagnosis
Core Design Contradiction:
Loss of timeVSExtent of automation

Solution Approach 1:

The system implements self-service through automatic error tracking and diagnosis mechanisms. The error tracking component continuously monitors the software system and automatically detects errors without human intervention. The system automatically generates diagnostic information and determines error causes, eliminating the need for manual analysis and significantly reducing error resolution time.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary action by pre-configuring multiple diagnostic features and error tracking mechanisms before errors occur. When an error happens, the system can immediately activate the appropriate diagnostic features and begin tracking, eliminating the delay of setting up diagnostics after error detection. This preliminary preparation of diagnostic capabilities accelerates the overall error resolution process.

Inventive Principle:
Principle #10Preliminary action

2Loss of information

If diagnostic features are manually enabled for error tracking, then error information can be collected, but system complexity and manual intervention requirements increase

Engineering Contradiction:
Improveerror diagnostic informationVSAvoiddiagnostic feature management
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The system implements feedback through automatic determination of which diagnostic features to enable. The error tracking component continuously monitors system state and automatically activates diagnostic features based on the specific error conditions detected. This feedback loop eliminates manual intervention for diagnostic feature management while ensuring appropriate diagnostic information is collected for each error type.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs self-service by automatically managing diagnostic feature activation. Instead of requiring operators to manually enable diagnostic features, the system autonomously determines which features are needed based on error conditions and activates them automatically. This reduces both system complexity from the user perspective and ensures consistent diagnostic information collection.

Inventive Principle:
Principle #25Self-service

3Reliability

If software errors are not quickly resolved, then system availability decreases, but implementing complex automatic correction mechanisms increases system complexity

Engineering Contradiction:
Improvesystem availabilityVSAvoidautomatic error correction system
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system applies segmentation by dividing the error correction process into distinct modular components: error detection, error tracking, diagnostic feature activation, error analysis, and correction implementation. Each component operates independently and can be managed separately, reducing overall system complexity while maintaining high reliability. This modular architecture allows the system to achieve automatic correction capabilities without requiring a monolithic complex system.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7373554B2Techniques for automatic software error diagnostics and correction
Publication Date: 2008.05.13 ORACLE INT CORP
  • US7373554B2 patent drawing
  • US7373554B2 patent drawing
  • US7373554B2 patent drawing

AI summary

Techniques are provided for automatically circumventing errors encountered by a software system. The software system automatically determines that the code path executed to perform a particular operation contains a software error. Upon determining that path-switching conditions are satisfied, the software system automatically switches the execution code path for the particular operation from the current code path to a different code path, where the different code path is selected from a predetermined plurality of code paths that can execute the particular operation.