Component Profile Display for Client-Server Code Flow Visualization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Analyzing and understanding complete client-side and server-side code flows in client-server applications is challenging and time-consuming due to the lack of convenient tools that aggregate and present relevant information, especially when accessing third-party server calls and database queries, which are often inaccessible.

Innovation Solution

A system and method for displaying a component profile within a graphical user interface that scans client-server applications to generate client component maps and web service maps, combining them into a component profile that visually links client-side components to server-side web services and database queries, enabling developers to view complete client-to-server code flows with a single click.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If developers manually review code from client to server to understand complete code flow, then understanding of application logic is achieved, but time consumption and complexity increase significantly

Engineering Contradiction:
Improvecompleteness of code flow understandingVSAvoidtime to analyze code flow
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The system creates a visual copy or representation of the actual code flow through component profiles and call graphs. Instead of manually tracing through client-side code, web service calls, and server-side code, developers can view a generated visual map that replicates the complete execution path, significantly reducing analysis time while maintaining completeness

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces an intermediary tool (the code analysis system) that sits between the developer and the complex client-server codebase. This intermediary automatically generates component profiles and call graphs that bridge the gap between client components and server web services, eliminating the need for developers to manually navigate through multiple code layers

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If developers access third-party server calls and database queries directly, then complete code flow visibility is achieved, but accessibility and ease of operation decrease due to inaccessibility of source code

Engineering Contradiction:
Improvevisibility of server-side operationsVSAvoidaccessibility to source code
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The system generates visual copies of server-side operations including third-party web service calls and database queries without requiring direct access to their source code. Component profiles capture and display information about these operations as visual representations, making invisible server-side logic accessible to developers

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The code analysis system acts as an intermediary that can observe and map client-server interactions even when server-side source code is inaccessible. By analyzing web service calls from the client side and generating corresponding call graphs, the system provides visibility into third-party server operations without requiring direct access to their implementation

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If comprehensive code analysis tools are implemented to show complete client-to-server flows, then understanding efficiency improves, but device complexity and system complexity increase

Engineering Contradiction:
Improvedevelopment efficiencyVSAvoidcomplexity of analysis system
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the complex code analysis task into manageable components: client component analysis, web service call identification, server-side function mapping, and visual graph generation. Each component profile focuses on a specific client component and its associated operations, breaking down the overall complexity into discrete, analyzable units

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple analysis results (client component maps, web service maps, call graphs) into unified component profiles that present comprehensive code flow information in a single integrated view. This combining of separate analysis layers reduces the complexity of navigating multiple separate tools or code sections

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10652355B2Component profile display
Publication Date: 2020.05.12 MICRO FOCUS LLC
  • US10652355B2 patent drawing
  • US10652355B2 patent drawing
  • US10652355B2 patent drawing

AI summary

A non-transitory machine-readable storage medium is described in which selection instructions receive a selection of a component in a graphical user interface of an application. Identification instructions associate the component with a component identifier, and query instructions identify, in an analysis database, at least one web service call linked to the component identifier. Profile display instructions cause a component profile to be displayed within the graphical user interface, with the component profile comprising the component identifier and the web service call.