User Interface Event Replication for Accurate Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Reproducing user interface interactions for troubleshooting is error-prone and inefficient, leading to unsuitable incident handling times and increased resource consumption due to differences between user and support personnel interactions, and the lack of effective tools for analyzing program traces and dumps.

Innovation Solution

A system for recording and replaying user interface events, allowing precise recreation of interactions by capturing UI elements and data entry, enabling replay under original user credentials and setting debugger breakpoints for accurate debugging.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If support personnel manually reproduce user interface interactions to troubleshoot issues, then they can attempt to identify the problem, but the reproduction is error-prone and time-consuming due to complex interactions and personalized UI elements

Engineering Contradiction:
Improveaccuracy of issue reproductionVSAvoidincident handling time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary action by automatically recording user interface interactions, application states, and system events during the user's actual usage. This pre-captured data is then replayed during troubleshooting, eliminating the need for support personnel to manually reproduce complex interactions and significantly reducing incident handling time while ensuring accurate reproduction of the original issue.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If support personnel attempt to recreate user interface interactions manually, then they can troubleshoot the issue, but differences between user and support interactions lead to different application behavior

Engineering Contradiction:
Improveease of reproducing interactionsVSAvoidconsistency of application behavior
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system creates an exact copy of the user's interface interactions, application state, and system events through automated recording. This copy includes precise data about user actions, UI element states, and application context. During replay, this copied data is used to reconstruct the exact same interaction sequence, ensuring consistent application behavior regardless of which support personnel performs the reproduction.

Inventive Principle:
Principle #26Copying

3Difficulty of detecting and measuring

If debugging tools are used to analyze line-by-line execution, then code analysis is possible, but it is difficult to determine which code lines should be analyzed without precise reproduction of user interface interactions

Engineering Contradiction:
Improvedifficulty of identifying relevant code linesVSAvoiddebugging efficiency
Core Design Contradiction:
Difficulty of detecting and measuringVSProductivity

Solution Approach 1:

The system introduces an intermediary mechanism that automatically correlates user interface interactions with the corresponding application code execution. The recording captures not only UI events but also the underlying application state and code paths. This intermediary mapping allows debugging tools to automatically identify and focus on the specific code lines relevant to the reported issue, eliminating the need for manual code navigation and significantly improving debugging efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20200356461A1Replication of user interface events
Publication Date: 2020.11.12 SAP SE
  • US20200356461A1 patent drawing
  • US20200356461A1 patent drawing
  • US20200356461A1 patent drawing

AI summary

A system and method include detection of a set of sequential interactions with a user interface, storage of a recording comprising data associated with a set of sequential calls to a user interface entry point application programming interface of a server application caused by the set of sequential user interface interactions, association of the recording with an incident identifier, reception of a request to analyze an incident associated with the incident identifier, and, in response to the request, initiation of playback of the recording, wherein playback of the recording comprises reading of the data of the recording and, based on the read data, issuing the set of sequential calls to the user interface entry point application programming interface of the server application.