Offline Debugging via Data Snapshot Transfer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Debugging software code remotely is resource-intensive and often requires maintaining an open network connection, which can hinder the remote system's performance, and may not accurately replicate the data environment necessary for identifying and fixing bugs that depend on specific data conditions.

Innovation Solution

Implementing an offline debugging mechanism where a local computer system copies a data snapshot from a remote system, allowing debugging to occur without an open connection, using marked sections of the code to identify key data elements and executing the code with a data proxy to replicate the remote system's data environment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a network connection is maintained between local and remote systems during debugging, then debugging can be performed on remote software, but resource usage on the remote system increases significantly

Engineering Contradiction:
Improvedebugging capabilityVSAvoidresource usage
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by copying data from the remote system to the local system before debugging begins. This allows the debugging process to proceed using local resources only, eliminating the need to maintain a network connection during debugging while still having access to the necessary remote system data.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the data needed for debugging from the remote system and transfers it to the local system. This separation allows the debugging operations to be performed locally without consuming remote system resources, while the remote system can continue its normal operations independently.

Inventive Principle:
Principle #2Taking out (Extraction)

2Use of energy by moving object

If debugging is performed entirely on the local system without a network connection, then remote resources are not consumed, but the data environment may not accurately reflect the remote system's actual data conditions

Engineering Contradiction:
Improveresource usageVSAvoiddata accuracy
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The patent performs preliminary data copying from the remote system to the local system before debugging starts. This ensures that the local system has an accurate snapshot of the remote system's data environment, allowing bugs that are data-dependent to be reliably reproduced and fixed without maintaining a network connection during debugging.

Inventive Principle:
Principle #10Preliminary action

3Loss of information

If a network connection is maintained during debugging, then real-time data access is possible, but the remote system's performance and ability to run other applications is hindered

Engineering Contradiction:
Improvedata accessVSAvoidsystem performance
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent copies necessary data from the remote system to the local system before debugging begins. This preliminary data transfer enables complete local debugging without maintaining a network connection, allowing the remote system to maintain full productivity and run other applications without interference while the local system performs debugging operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the debugging process into a preliminary data collection phase (when the network connection is briefly used) and an execution phase (performed entirely locally). This segmentation allows the resource-intensive data access to occur only when necessary, while the actual debugging runs locally without impacting remote system performance.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9720803B2Methods and apparatus for debugging of remote systems
Publication Date: 2017.08.01 MICRO FOCUS LLC
  • US9720803B2 patent drawing
  • US9720803B2 patent drawing
  • US9720803B2 patent drawing

AI summary

Methods and apparatus for debugging of remote systems are disclosed. An example apparatus includes an activator to establish a connection between a first computer system and a second computer system, a data fetcher to transfer values of a first set of data elements from the second computer system to the first computer system via the connection, an executor to execute a first software code on the first computer system using the transferred values of the first set of data elements after the connection is closed, and a debugger to debug the first software code on the first computer system after the executor executes the first software code on the first computer system.