Call Stack Filtering for Duplicate Crash Failure Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In fast-paced software development environments, identifying and distinguishing between duplicate crash failures in software applications is time-consuming and labor-intensive, often requiring manual effort, especially when builds crash due to both new and existing errors.

Innovation Solution

A method utilizing call stack filtering and similarity scoring to automate the identification of duplicate crash failures by comparing filtered call stacks from new and prior builds, classifying crashes based on similarity scores, and providing corrective actions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual error detection and debugging is performed, then accuracy in identifying crash failures is improved, but time consumption and labor intensity increase significantly

Engineering Contradiction:
Improveaccuracy in identifying crash failuresVSAvoidtime consumption for error detection
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent replaces manual mechanical analysis of call stacks with an automated computer-based system that uses algorithms to filter, compare, and identify duplicate crash failures. The system automatically processes call stack data, applies filtering criteria, calculates similarity scores, and generates reports without human intervention, thereby reducing time consumption while maintaining identification accuracy.

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

Solution Approach 2:

The system enables self-service by allowing the software development infrastructure to automatically detect and classify duplicate crash failures without requiring manual analysis. The automated comparison and similarity scoring mechanisms allow the system to serve its own error detection needs, freeing developers from time-consuming manual debugging tasks.

Inventive Principle:
Principle #25Self-service

2Measurement precision

If comprehensive call stack analysis is performed to distinguish duplicate crashes, then detection accuracy is improved, but computational complexity and processing time increase

Engineering Contradiction:
Improvedetection accuracy of duplicate crashesVSAvoidcomputational complexity of analysis system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the call stack analysis process into distinct modular components: filtering module (removing noise and irrelevant entries), comparison module (matching filtered call stacks), and scoring module (calculating similarity metrics). This segmentation reduces computational complexity by breaking down the complex analysis task into manageable, independent stages that can be processed efficiently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system extracts only the essential and relevant portions of call stacks for comparison by applying filtering criteria that remove redundant, noisy, or irrelevant entries. This extraction process reduces the data volume requiring complex analysis while preserving the critical information needed for accurate duplicate detection, thereby lowering computational complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If automated duplicate crash detection is implemented, then productivity in error identification is improved, but system complexity increases

Engineering Contradiction:
Improveefficiency of error identificationVSAvoidcomplexity of automated detection system
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The automated detection system is designed with universal components that can handle multiple types of crash analysis tasks through the same filtering, comparison, and scoring mechanisms. This multi-functionality allows a single system architecture to improve productivity across various error detection scenarios without requiring separate complex systems for each function.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system manages complexity by allowing flexible adjustment of parameters such as filtering criteria thresholds, similarity score cutoffs, and comparison weights. These parameter changes enable the system to adapt to different project requirements and complexity levels without fundamentally altering the core architecture, thereby improving productivity while controlling system complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20250348412A1Software application build testing with duplicate failure detection
Publication Date: 2025.11.13 SAP SE
  • US20250348412A1 patent drawing
  • US20250348412A1 patent drawing
  • US20250348412A1 patent drawing

AI summary

Various examples described herein are directed to systems and methods for debugging a software application. A computing system may access a call stack. The call stack may describe a first plurality of function calls made by a software application prior to a first crash of the software application and an order of the first plurality of function calls. The computing system may filter the call stack to generate a first filtered call stack and determine a similarity score for the first crash and a second crash of the software application. The determining of the similarity score may be based on comparing the first filtered call stack to a second filtered call stack. The second filtered call stack may describe a second plurality of function calls made by the software application prior to the second crash of the software application and an order of the second plurality of function calls.