Refined Bug Context Detection via Static Dynamic Merge

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current bug detection systems often identify only partial bug contexts, which are insufficient to determine the root cause of software bugs, leading to inefficiencies in bug correction.

Innovation Solution

The implementation of a bug detector circuitry that determines refined bug contexts by merging static and dynamic bug contexts, using node classification, location identification, static analysis, dynamic analysis, and context refinement to provide a larger, more accurate context for bug identification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If current bug detection systems identify only partial bug contexts, then the detection process is simpler and faster, but the identified context is insufficient to determine the root cause of software bugs

Engineering Contradiction:
Improvebug context accuracyVSAvoiddetection system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent merges static analysis and dynamic analysis to create a comprehensive bug context. Static analysis provides structural information about the code, while dynamic analysis provides runtime behavior information. By combining these two analysis approaches, the system achieves more accurate bug context identification without requiring a single overly complex detection mechanism.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent segments the bug detection process into multiple independent components: static analysis module, dynamic analysis module, context merging module, and root cause determination module. Each segment handles a specific aspect of analysis, allowing the system to achieve high measurement precision through coordinated simple components rather than a single complex detector.

Inventive Principle:
Principle #1Segmentation

2Reliability

If a larger portion of relevant code is provided for bug analysis, then bug correction accuracy improves, but the time and computational resources required increase

Engineering Contradiction:
Improvebug correction accuracyVSAvoidbug identification time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary static analysis before dynamic analysis to pre-identify potential bug locations and relevant code sections. This preliminary action filters the code base to focus dynamic analysis only on suspicious areas, thereby providing comprehensive bug context without analyzing the entire code base, thus reducing overall analysis time while maintaining high correction accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies partial action by selectively analyzing only the portions of code that are relevant to the bug, rather than analyzing the entire code base. The system identifies and focuses on minimal sufficient context that contains the bug, avoiding unnecessary analysis of unrelated code sections, thus achieving high reliability with reduced time investment.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If static analysis and dynamic analysis are both performed to merge comprehensive bug contexts, then bug detection accuracy improves, but the computational complexity and resource consumption increase

Engineering Contradiction:
Improvebug context completenessVSAvoidcomputational resource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent performs preliminary static analysis to identify suspicious code sections before executing resource-intensive dynamic analysis. This preliminary filtering ensures that dynamic analysis is applied only to relevant portions of the code, thereby achieving complete bug context with reduced computational resource consumption compared to analyzing the entire code base dynamically.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the computational workload into two distinct phases: a low-resource static analysis phase that prepares and filters code, and a higher-resource dynamic analysis phase that focuses only on pre-identified suspicious sections. This segmentation allows comprehensive bug context gathering while managing computational resource consumption through phased processing.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11782813B2Methods and apparatus to determine refined context for software bug detection and correction
Publication Date: 2023.10.10 INTEL CORP
  • US11782813B2 patent drawing
  • US11782813B2 patent drawing
  • US11782813B2 patent drawing

AI summary

Methods, apparatus, systems, and articles of manufacture are disclosed to determine refined context for bug detection. At least one non-transitory machine-readable medium includes instructions that, when executed, cause at least one processor to at least classify a node on a graph, the graph to represent a computer program, the node to contain partial bug context corresponding to the computer program; identify a location of a software bug in the computer program, the location based on the node; determine a static bug context of the software bug using the location of the software bug; determine a dynamic bug context of the software bug using the location of the software bug; and determine a refined bug context based on a merge of the static bug context and the dynamic bug context.