Server-Side UI Delta Rendering for Bandwidth Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing client/server systems face inefficiencies in synchronizing user interfaces (UI) between clients and servers, particularly in updating UIs across multiple platforms and managing changes over low-bandwidth networks, with current methods being either inefficient or requiring excessive network usage and synchronization.

Innovation Solution

A method involving converting UI descriptions into UI object definitions stored in documents, preferably using XML, and transmitting these documents to clients for rendering, allowing only server-side updates without the need for client-side changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the server application sends the entire graphical image for the UI to the client application, then the client can display complete UI updates, but network bandwidth consumption increases significantly

Engineering Contradiction:
ImproveUI update completenessVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments the UI update process into two distinct phases: (1) the server performs complete UI rendering and generates a delta set representing only changed portions, and (2) the client receives and applies this compressed delta information. This segmentation allows the heavy rendering computation to occur on the server while minimizing network transmission to only essential change data, resolving the contradiction between complete UI updates and bandwidth consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts only the essential change information (delta set) from the complete UI image and transmits this extracted subset to the client. By taking out only the necessary update portions rather than transmitting the entire graphical image, the solution maintains UI update completeness while dramatically reducing network bandwidth consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If the client application replicates the same rendering logic as the server application, then UI rendering efficiency improves, but synchronization complexity between server and client increases

Engineering Contradiction:
ImproveUI rendering efficiencyVSAvoidsynchronization complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a selective copying approach where the client receives a delta set (a simplified copy of change information) from the server and applies it to its local UI state. Rather than copying the entire rendering logic or complete UI images, the client only receives and applies essential change deltas, maintaining rendering efficiency while minimizing synchronization complexity.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If the server application updates its software version, then new features and improvements are deployed, but the client application must also be updated to maintain compatibility

Engineering Contradiction:
Improveserver functionalityVSAvoidversion synchronization
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by having the server generate and transmit a delta set that encodes all necessary UI update information before the client needs to render the updated interface. This preliminary preparation of update data on the server side allows the client to simply apply received deltas without needing to understand or synchronize complex version changes, reducing client-side complexity while maintaining adaptability to server updates.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7519739B2Synchronizing a client user interface with a server backend
Publication Date: 2009.04.14 CLOUD SOFTWARE GRP SWITZERLAND GMBH
  • US7519739B2 patent drawing
  • US7519739B2 patent drawing
  • US7519739B2 patent drawing

AI summary

In a server system coupled to at least one client system, a method for synchronizing a user interface (UI) presentation to be displayed to a user of the client system to a UI description maintained by the server system, the method comprising the steps of: converting the UI description into one or more UI object definitions; storing each UI object definition in a document; and, transmitting the document to the client system; the client system adapted to convert the UI object definitions to UI objects to generate the UI presentation.