Error Assignment Model for Software Execution Paths

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large-scale software systems, identifying the responsible party for fixing errors from complex error messages is challenging due to the difficulty in determining which sequence of execution paths caused the error, leading to incorrect assignment of error resolution tasks.

Innovation Solution

An online system applies an assignment model to token sequences in error messages, trained on previously generated error messages and their corresponding responsible parties, to accurately determine the responsible party by analyzing sequences of execution paths represented by programming identifiers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If error messages include detailed execution paths, then completeness of error information is improved, but difficulty in determining responsible party increases

Engineering Contradiction:
Improvecompleteness of error informationVSAvoiddifficulty in determining responsible party
Core Design Contradiction:
Loss of informationVSDifficulty of detecting and measuring

Solution Approach 1:

The patent introduces an intermediary system comprising error message parsing module, execution path analysis module, and responsible party determination module. This intermediary processing layer transforms the raw error messages with detailed execution paths into structured information that automatically identifies the responsible party, thereby maintaining information completeness while reducing the difficulty of determination.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the manual mechanical process of analyzing execution paths and determining responsible parties with an automated computer-based system. The system uses algorithms to parse error messages, trace execution paths, and identify responsible parties automatically, substituting human analysis with computational processing that handles the complexity efficiently.

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

2Measurement precision

If manual analysis of execution paths is used, then accuracy of responsibility determination can be high, but time consumption and productivity are reduced

Engineering Contradiction:
Improveaccuracy of responsibility determinationVSAvoiderror resolution efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system implements self-service by enabling automatic determination of responsible parties without requiring manual intervention. The error message processing system autonomously parses execution paths, analyzes the sequence of function calls, identifies the originating module, and assigns responsibility automatically, making the system serve itself in terms of responsibility attribution.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent ensures continuous automated processing of error messages through a streamlined pipeline where error messages are continuously parsed, execution paths are continuously analyzed, and responsible parties are continuously identified. This continuous automated action eliminates interruptions and maintains high productivity while preserving accuracy through consistent algorithmic application.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If complex error messages are generated, then diagnostic information is improved, but ease of operation for error assignment is reduced

Engineering Contradiction:
Improvediagnostic information qualityVSAvoidease of error assignment
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent extracts the essential information needed for responsibility determination from complex error messages. The system separates the diagnostic execution path information from the responsibility assignment task, extracting only the relevant function call sequences and module identifiers needed to identify the responsible party, thereby simplifying the assignment process while retaining diagnostic quality.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the complex error message processing into distinct functional modules: error message reception, parsing, execution path extraction, responsible party identification, and assignment. This segmentation allows each module to handle specific aspects of the complex information, making the overall process more manageable and easier to operate while preserving the completeness of diagnostic information.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10409667B2Error assignment for computer programs
Publication Date: 2019.09.10 SALESFORCE INC
  • US10409667B2 patent drawing
  • US10409667B2 patent drawing
  • US10409667B2 patent drawing

AI summary

An online system identifies an assignment for a computer program error indicated in an error message by applying an assignment model to token sequences identified in the error message. The error message includes a sequence of execution paths of the computer program. Each execution path indicates a function call active in computer memory when the error was generated. In other words, the error message allows tracking of the sequence of nested paths up to the point where the error was generated. In one example, the error message is a stack trace message that reports active stack frames in computer memory during the execution of the program.