Dynamic Conditional Breakpoints for Program Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing debugging techniques lack flexibility and control, particularly in interrupting program execution based on dynamic conditions in the time or frequency domain, limiting the effectiveness of testing and debugging processes.

Innovation Solution

Implementing a dynamic conditional breakpoint system that allows for interruption of program execution based on dynamic conditions in the time or frequency domain, enabling comparison of baseline and execution parameters to trigger actions such as pausing or continuing execution, and providing increased flexibility and control during testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional breakpoints (instruction or static conditional) are used to interrupt program execution, then execution can be stopped at specific points, but the flexibility and control to interrupt based on dynamic conditions in time or frequency domain are insufficient

Engineering Contradiction:
Improveflexibility to interrupt based on dynamic conditionsVSAvoidcontrol over interruption timing
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent implements dynamic conditional breakpoints that evaluate conditions during program execution rather than using static pre-defined breakpoints. The system continuously monitors program parameters and interrupts execution when dynamic conditions are met, allowing flexible adaptation to changing program states in time or frequency domain without requiring manual reconfiguration of breakpoint locations

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the approach from fixed breakpoint addresses to dynamic parameter-based interruption. By monitoring program parameters and comparing them against dynamically evaluated conditions, the system enables interruption based on parameter values and relationships that change during execution, providing both flexibility and precise control

Inventive Principle:
Principle #35Parameter changes

2Reliability

If more comprehensive debugging controls are implemented to allow dynamic condition monitoring, then debugging effectiveness improves, but system complexity increases

Engineering Contradiction:
Improvedebugging effectivenessVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The debugging system performs self-service by automatically monitoring program parameters, evaluating dynamic conditions, and determining when to interrupt execution without requiring continuous manual intervention. The system manages its own debugging state, condition evaluation, and interruption timing, improving reliability while keeping the user interface simple

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback mechanisms where program execution state is continuously monitored and fed back to the condition evaluation logic. This automatic feedback loop enables the system to make real-time decisions about interruption based on current program state, enhancing debugging effectiveness without proportionally increasing system complexity

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10235274B1Performing an action during program execution based on a dynamic condition
Publication Date: 2019.03.19 MATHWORKS INC
  • US10235274B1 patent drawing
  • US10235274B1 patent drawing
  • US10235274B1 patent drawing

AI summary

A device may determine one or more conditional parameters associated with determining whether a condition is satisfied during execution of a program. The one or more conditional parameters may vary over time. The device may execute the program to generate one or more execution parameters corresponding to the one or more conditional parameters. The device may compare the one or more execution parameters and the one or more conditional parameters. The device may determine that the condition is satisfied based on comparing the one or more execution parameters and the one or more conditional parameters. The device may perform an action, in association with the program, based on determining that the condition is satisfied.