Middle Tier Debug Manager for Distributed Software

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional debug processes are inadequate for debugging distributed software applications running in parallel on multiple computers and/or threads, as they do not effectively manage connections and authentication across different devices.

Innovation Solution

A debug process is implemented using a middle tier instance that manages connections between a debug user interface and debug engines on different computing devices, employing authentication, connection data, and security tokens to establish and confirm connections, allowing for remote debugging of distributed applications across multiple devices and threads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional debug processes are used for distributed applications, then the debugging can be performed on the same computer, but the system cannot effectively manage connections and authentication across different devices

Engineering Contradiction:
ImproveAbility to debug distributed applications across multiple devicesVSAvoidConnection management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a middle tier instance as an intermediary component that manages connections between debug user interfaces and debug engines across different computing devices. This middle tier handles authentication, connection establishment, and coordination, thereby enabling distributed debugging while centralizing the complexity of connection management rather than distributing it across multiple devices.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a middle tier instance is introduced to manage distributed debugging connections, then remote debugging across multiple devices is enabled, but the connection establishment process becomes more complex with authentication and security token verification

Engineering Contradiction:
ImproveRemote debugging capabilityVSAvoidConnection establishment ease
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent implements preliminary authentication and security token generation before actual debugging operations. The middle tier instance pre-establishes secure connections, verifies credentials, and generates security tokens in advance. This preliminary action ensures that when debugging sessions are initiated, the complex authentication and connection management have already been handled, making the actual debugging operation easier and more straightforward.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10691581B1Distributed software debugging system
Publication Date: 2020.06.23 SAS INSTITUTE INC
  • US10691581B1 patent drawing
  • US10691581B1 patent drawing
  • US10691581B1 patent drawing

AI summary

A connection request is received from a debug UI by a middle tier instance through a first predefined computer port. A connection data request is received from the debug UI by the middle tier instance. Connection data for a debug engine is sent from the middle tier instance to the debug UI and provided to the debug engine from the debug UI. The connection data includes a second predefined computer port of the first computing device. An initial packet is received by the middle tier instance from the debug engine through the second predefined computer port. A unique engine identifier is defined for the debug engine by the middle tier instance and an engine connection confirmation is sent from the middle tier instance to the debug UI indicating that a connection with the debug engine has been established and including the unique engine identifier for the debug engine.