Server-Managed Shared State Scope for Cross-Device Sync

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for synchronizing application states across multiple devices and applications are inefficient, as they require periodic synchronization, which can lead to unpredictable results and inconsistent user experiences.

Innovation Solution

A method where a server manages shared state scopes, allowing multiple client devices to access and update state information, which is then synchronized without the need for periodic updates, using a data store that defines the type and lifecycle of state information, enabling seamless synchronization across devices and applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If periodic synchronization is used to maintain application state across multiple devices, then application state consistency can be maintained, but the synchronization timing becomes unpredictable and results may be inconsistent

Engineering Contradiction:
Improveapplication state consistencyVSAvoidsynchronization timing unpredictability
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements periodic synchronization cycles where client devices automatically synchronize their application state with the server at regular intervals. This resolves the contradiction by establishing predictable synchronization timing while maintaining consistent application state across devices, eliminating the unpredictability of ad-hoc synchronization approaches

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system employs feedback mechanisms where client devices report their current state to the server, which then determines whether synchronization is needed. This feedback loop ensures that synchronization occurs reliably when state changes are detected, maintaining consistency while optimizing timing based on actual state changes rather than fixed intervals

Inventive Principle:
Principle #23Feedback

2Productivity

If multiple client devices access and update shared state information simultaneously, then real-time collaboration is enabled, but synchronization conflicts may occur

Engineering Contradiction:
Improvereal-time collaboration capabilityVSAvoidsynchronization conflict resolution
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The server acts as an intermediary between multiple client devices, receiving state updates from any client and distributing the synchronized state to all other clients. This mediator approach enables real-time collaboration while preventing synchronization conflicts by ensuring all clients receive consistent state information from the central server

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system creates and distributes copies of the application state to multiple client devices. Each client receives a copy of the state data from the server, allowing simultaneous access and modification while the server maintains the authoritative version. This copying mechanism enables real-time collaboration without direct client-to-client conflicts

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10313436B2Maintaining state synchronization of an application between computing devices as well as maintaining state synchronization of common information between different applications without requiring periodic synchronization
Publication Date: 2019.06.04 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10313436B2 patent drawing
  • US10313436B2 patent drawing
  • US10313436B2 patent drawing

AI summary

A method, system and computer program product for maintaining state synchronization of an application between computing devices and maintaining state synchronization of common information between different applications. A server receives a request from a client device to access a shared state scope. A shared state scope is a data store that physically resides on the server, where the data store stores state information. The state information stored in these scopes can be shared among multiple instances of an application residing on multiple client devices. Furthermore, the state information may include common information that is shared among different applications. Upon the server providing access to the requested scope, the server receives an update to the state information stored within the requested scope from the requesting client device. The server then notifies other client devices regarding the update to the state information that have access to the shared state scope.