Parameterized Dashboards for Dynamic Data Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional graphical dashboards are static and require significant manual coding for modifications, making them inflexible to changes in data schema or ontology, and notifications are not well-integrated with widgets, leading to inefficient data updates and large network data transfers in mobile computing environments.

Innovation Solution

Parameterized dashboards that use structured data descriptions, such as JSON, to generate and update graphical displays dynamically, allowing for efficient data-driven rendering of dashboards and notifications on mobile devices, reducing manual effort and network traffic.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional custom-coded dashboards are used, then the dashboard can be displayed, but modification of dashboard attributes requires changing code and distributing new versions, reducing flexibility and adaptability

Engineering Contradiction:
Improvedashboard adaptabilityVSAvoidcode modification complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The dashboard configuration is transformed from static code to dynamic parameterized descriptions that can be modified without recompiling or redistributing the application. The system uses parameterized templates with configurable attributes that allow runtime adjustments to dashboard appearance and behavior.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Dashboard attributes are changed by modifying parameters in structured description files rather than changing source code. The system separates the dashboard definition (parameters) from the rendering logic, allowing independent modification of dashboard characteristics through parameter updates.

Inventive Principle:
Principle #35Parameter changes

2Loss of information

If traditional static notifications are used, then notifications can be displayed, but they are not well connected to graphical widgets within the dashboard, reducing information integration

Engineering Contradiction:
Improvenotification-widget integrationVSAvoidnotification system complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

Notifications and graphical widgets are merged into a unified notification system where notifications can be associated with specific widgets through parameterized descriptions. This integration allows notifications to be contextually linked to the data they represent while maintaining a single coherent system.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If data changes at a remote server in mobile computing, then data updates are needed, but the server must transfer or push data and the mobile device must determine which dashboard and widgets to use, increasing network traffic and processing

Engineering Contradiction:
Improvedata update efficiencyVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The notification description and widget identification information are extracted from the data payload itself. When data changes occur at the server, only the notification description containing widget identifiers and update information is transferred, rather than transferring entire dashboards or redundant data sets.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

A parameterized notification description acts as an intermediary between the server data and the client dashboard rendering. This intermediate representation contains all necessary information to identify which widgets need updating without requiring direct server-to-widget communication or large data transfers.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Ease of manufacture

If graphical widgets and data are combined as in HTML, then rendering is simplified, but it requires repetitive large data transfers over network connections, increasing network traffic

Engineering Contradiction:
Improvedashboard rendering simplicityVSAvoidnetwork data transfer volume
Core Design Contradiction:
Ease of manufactureVSQuantity of substance

Solution Approach 1:

The system segments the dashboard into separate components: the widget structure (rendering template) and the data (notification descriptions). Only the essential notification descriptions containing widget identifiers and update information are transferred over the network, while the rendering logic remains local, reducing network traffic while maintaining rendering capability.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP3611635B1User interfaces and parameterized dashboards
Publication Date: 2021.04.07 PALANTIR TECHNOLOGIES INC
  • EP3611635B1 patent drawingFigure 1
  • EP3611635B1 patent drawingFigure 2
  • EP3611635B1 patent drawingFigure 3

AI summary

A data processing method comprises, using a first computer, in response to detecting a change in a data source: automatically generating a dataset comprising a subset of data from the data source, generating a unique dataset identifier, and associating the dataset identifier with the dataset in digital data storage; generating a display description that comprises: the dataset identifier; and for each particular graphical data display widget among one or more graphical data display widgets, instructions that specify a widget type, an order and one or more widget configuration values for the particular graphical data display widget; transmitting the display description to a second computer. Another method comprises receiving, from a first computer at a second computer, a display description that comprises: a dataset identifier; and a plurality of instructions that specify a widget type, a display order and one or more widget configuration values for each widget among one or more graphical data display widgets; the dataset having been generated using a subset of data from a data source, and associated in digital data storage with a unique dataset identifier, in response to detecting a change in a data source; fetching the dataset based on the dataset identifier; rendering the one or more graphical data display widgets according to each display order, each widget type and the widget configuration values; and displaying the plurality of graphical data display widgets in a display of the second computer. The techniques disclosed herein reduce the amount of manual programming effort, memory, storage and CPU processing required to implement different kinds of dashboards. Parameterized dashboards as described herein permit substituting specific values into a display description template that can rapidly generate application-specific dashboard descriptions and deliver them to mobile devices.