Debugger Method Restart via Bookmark Navigation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software engineers face inefficiencies during debugging sessions due to cluttered user interfaces and the need for multiple actions to perform frequently needed debugging operations, leading to longer and less productive sessions.

Innovation Solution

A debugger system that allows users to restart execution of invocable operations with a single user interface interaction, resuming execution at the first line of the operation without adding new windows or panels, thus maintaining a clutter-free interface and supporting various programming languages and environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple windows or panels are opened to revisit code parts during debugging, then debugging functionality is enhanced, but the user interface becomes cluttered and distracting

Engineering Contradiction:
Improvedebugging functionalityVSAvoiduser interface clutter
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent uses bookmarks to create references to specific code locations without opening additional windows or panels. These bookmarks act as copies or references that can be activated to jump to the desired code position, maintaining interface simplicity while providing debugging versatility.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces a temporal dimension to code navigation by allowing users to set breakpoints at future code locations and jump directly to them. This enables revisiting code parts without spatial proliferation of windows, solving the contradiction by operating in a different dimensional space (time-based navigation rather than space-based windows).

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Measurement precision

If multiple actions are required to perform debugging operations, then precise control is achieved, but debugging session length increases and productivity decreases

Engineering Contradiction:
Improvedebugging control precisionVSAvoiddebugging efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent allows users to pre-configure breakpoints with specific conditions and actions before executing code. This preliminary setup enables automatic triggering at precise moments without requiring multiple manual actions during debugging, thus maintaining control precision while improving efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The bookmark feature serves multiple debugging functions simultaneously: it acts as a navigation marker, a breakpoint trigger, and a code location reference. This multi-functionality reduces the number of separate actions needed while maintaining precise control over debugging operations.

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

Data Source

PatentUS9792198B2Debugger with method restart capability
Publication Date: 2017.10.17 ORACLE INT CORP
  • US9792198B2 patent drawing
  • US9792198B2 patent drawing
  • US9792198B2 patent drawing

AI summary

Methods and apparatus for debuggers supporting method restart are described. A method comprises implementing a user interface (UI) enabling a user to submit a request, via a single interaction within a debugging session, to restart execution of an invocable operation of a program. The method further comprises, in response to a request to restart an invocable operation, designating, as the source code line whose corresponding executable code is to be executed next, the first line of source code of the particular invocable operation that corresponds to an executable operation. The method includes indicating that execution of the program is to be resumed at the first line, and resuming execution of the program at the first line.