Dynamic User Interface Generation via Server Messages
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing user interface technologies in client/server environments require recompilation of client applications for new user interfaces, leading to inefficiencies and a static, precompiled user experience, which limits flexibility and performance.
Innovation Solution
Implementing a system where user interfaces are dynamically generated based on messages received from a server, using a protocol interpreter and generator to bind and populate user interface components with data, allowing for device and operating environment independence, and shifting resource burdens from clients to servers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If user interfaces are precompiled in client applications, then the user interface can be displayed consistently, but the client application must be recompiled for new user interfaces, reducing flexibility and performance
Solution Approach 1:
The patent implements dynamic user interface generation where the client application receives messages from a server containing user interface component definitions and data, then dynamically generates and displays the user interface without recompilation. This allows the user interface to adapt to different scenarios and services while maintaining consistent performance characteristics.
Solution Approach 2:
Instead of recompiling the entire client application, the system generates user interface components by copying and instantiating standard UI component templates based on messages received from the server. This allows new interfaces to be created without modifying or recompiling the core client application code.
2Productivity
If user interfaces are dynamically generated from server messages, then flexibility and performance improve, but the system complexity increases with protocol interpreters and generators
Solution Approach 1:
The client application incorporates a universal protocol interpreter and generator that can handle multiple service types and scenarios through a single standardized interface. This multi-functional design allows the same protocol handling mechanism to support various user interface generation needs without requiring separate specialized components for each service type.
Solution Approach 2:
The patent introduces a protocol interpreter as an intermediary layer between the server and the user interface generation process. This intermediary component standardizes the communication protocol and abstracts the complexity from the user interface generation logic, allowing the UI components to focus on rendering rather than protocol handling.
3Adaptability or versatility
If client applications handle all user interface generation locally, then device independence is achieved, but resource burdens shift from servers to clients
Solution Approach 1:
The system segments the user interface generation process into two parts: server-side message generation containing user interface definitions and data, and client-side interpretation and rendering. This segmentation allows each component to focus on its strengths while distributing the overall processing burden appropriately.
Solution Approach 2:
The patent changes the parameters of user interface generation from local compilation to message-based instantiation. By transforming the generation process into a parameter-driven approach where messages define the interface structure and data, the system achieves device independence while reducing the computational burden on clients compared to full recompilation.
Data Source
AI summary
Methods and apparatus, including computer program products, to present user interfaces in an application based on messages received at the application. An application may execute in a virtual machine (e.g., in an ADOBE FLASH PLAYER) and receive a message characterizing a user interface component. Thereafter, one or more elements of the application may be bound with the user interface component, the elements of the application may be populated with the information for the user interface component, and the user interface component may be presented, to a user, with at least a portion of the information for the user interface component.


