Data Driven Forms Local Caching Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Web site authors face challenges in providing a consistent user experience across diverse devices, particularly due to unreliable network connections and bandwidth issues on mobile devices, which complicates the presentation of data-driven forms.

Innovation Solution

A computing system that caches data from a web server and renders multiple views, allowing for low-latency display of data-driven forms without requiring native applications or complete data downloads, by asynchronously loading additional data when the cache is full.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is loaded from a database for presentation in data driven forms, then the data can be updated regularly and presented to users, but network bandwidth is consumed and latency increases especially on mobile devices

Engineering Contradiction:
Improvedata update reliabilityVSAvoidnetwork latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by caching data locally on the user device before it is needed for presentation. The cache stores data elements that can be retrieved asynchronously, allowing the form to be populated without waiting for network requests during user interaction. This preliminary caching resolves the contradiction by preparing data in advance, reducing both perceived latency and network dependency.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If a stand-alone application is released for mobile devices, then the user experience can be optimized for the device, but the device must download all relied-upon data to function

Engineering Contradiction:
Improveuser experience qualityVSAvoiddata download volume
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The invention extracts only the necessary data elements from the complete dataset and stores them in a cache on the user device. Instead of requiring all data to be downloaded, the system identifies and retrieves only those data elements needed for the current form presentation. This selective extraction reduces the quantity of data downloaded while maintaining optimized user experience through local data availability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system implements partial action by loading a subset of data into the cache rather than all available data. The cache stores sufficient data elements to populate the form without requiring complete data synchronization. This partial loading approach reduces network bandwidth consumption while providing responsive form functionality.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If data is cached on the user device, then network communication is reduced and latency decreases, but the cache may become full requiring additional data management

Engineering Contradiction:
Improveform rendering speedVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements self-service cache management where the cache automatically handles data retention and eviction without requiring complex external management. The cache stores data elements with identifiers that enable automatic matching with form data requirements. When the cache is full, the system asynchronously retrieves additional data elements without manual intervention, allowing the form rendering to proceed at high speed while the cache manages itself.

Inventive Principle:
Principle #25Self-service

4Adaptability or versatility

If multiple views are rendered from cached data, then data can be presented in different formats without additional network requests, but the cache must store sufficient data for all views

Engineering Contradiction:
Improveview presentation flexibilityVSAvoidcached data volume
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system segments data into discrete data elements that can be independently cached and retrieved. Each data element is identified by a unique identifier and can be individually stored in the cache. This segmentation allows the system to assemble different views from the same cached elements without requiring complete datasets for each view, reducing the total cached data volume while maintaining view presentation flexibility.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP2807549B1Presenting data driven forms
Publication Date: 2020.04.01 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2807549B1 patent drawingFigure 1
  • EP2807549B1 patent drawingFigure 2
  • EP2807549B1 patent drawingFigure 3A~3C

AI summary

Concepts and technologies are described herein for presenting data driven forms. In accordance with the concepts and technologies disclosed herein, a user device obtains a resource referencing or presenting data driven forms and obtains data displayed or used by the resource. The user device stores the data in a cache accessible by the user device. The user device can render multiple views containing data from the cache. The user device can display one of the views and hide the other views from display. If the user device detects input for viewing other views, the user device can present one of the previously hidden views. The user device also can manage the cache and download additional data, if the cache empties or is not full.