Transparent Data Synchronization Engine for Application Development

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developing application programs that synchronize data across multiple devices is complex and prone to errors, leading to resource inefficiency and data corruption, as existing synchronization schemes are often incompatible and require significant developer effort.

Innovation Solution

A synchronization engine separates data synchronization functionality from application programs, allowing data items to be instantiated with a synchronization data structure that defines compatibility, enabling transparent synchronization operations without additional code within the application program.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If application programs implement their own synchronization schemes, then data synchronization can be achieved, but development complexity and resource consumption increase significantly

Engineering Contradiction:
Improvedata synchronizationVSAvoidapplication development complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a synchronization engine as an intermediary component that handles all synchronization operations centrally. Application programs interact with this engine through standardized interfaces rather than implementing their own synchronization logic. The engine mediates between multiple applications and the data storage system, managing conflict resolution, version control, and synchronization state tracking uniformly across all applications.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The synchronization engine is designed as a universal system that serves multiple application programs simultaneously with a single set of synchronization algorithms and data structures. Rather than each application having dedicated synchronization code, the engine provides multi-functional support for synchronizing various types of data (electronic files, images, audio, video) across different applications using unified mechanisms.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If multiple applications use separate synchronization schemes, then each application can operate independently, but resource efficiency decreases and conflicts increase

Engineering Contradiction:
Improveapplication independenceVSAvoidcomputational resource efficiency
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent merges the synchronization functionality of multiple applications into a single centralized engine. Instead of having separate synchronization processes for each application, the system combines them into one unified engine that manages all synchronization operations. This consolidation eliminates redundant computations, shared memory structures, and communication protocols that would otherwise exist in multiple separate implementations.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The synchronization engine provides universal service to multiple applications through standardized interfaces, allowing each application to maintain its functional independence while sharing the underlying synchronization infrastructure. The engine handles different data types and application requirements through a common framework, achieving resource efficiency without sacrificing application versatility.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If applications implement custom synchronization algorithms, then specific data requirements can be met, but errors and data corruption risks increase

Engineering Contradiction:
Improvedata requirement customizationVSAvoidsynchronization operation reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The synchronization engine acts as a reliable intermediary that implements proven synchronization algorithms and conflict resolution strategies. Rather than relying on individual applications to implement potentially error-prone custom algorithms, the engine provides a tested, unified approach to synchronization that handles edge cases, deadlock prevention, and data integrity protection consistently across all applications.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements preventive measures through the synchronization engine that cushion against potential errors before they occur. This includes validation of synchronization data, pre-checks for conflicts, and structured error handling mechanisms that prevent data corruption. The engine prepares and manages synchronization state information in advance, reducing the risk of operational errors.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS9037751B2Data synchronization transparent to application
Publication Date: 2015.05.19 QUALCOMM INC
  • US9037751B2 patent drawing
  • US9037751B2 patent drawing
  • US9037751B2 patent drawing

AI summary

Synchronization of data accessible by an application program is performed transparent to the application program. After a data item is instantiated by the application program, the synchronization engine performs data synchronization without or with minimal intervention of the application program. The synchronization engine may be part of an operating system. The synchronization engine is preinstalled on a computing device; therefore, application program developers can simply define whether the data items associated with the application programs should be syncable, and if so, to what extent the data items should be syncable. The application program developer is relieved of the task of developing the synchronization engine or other software components associated with data synchronization.