# US 10,313,436 B2 · Maintaining state synchronization of an application between computing devices as well as maintaining state synchronization of common information between different applications without requiring periodic synchronization

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,313,436 B2
- Document ID: US10313436B2
- Status: Granted
- Kind: B2
- Application number: 15/793,488
- Filed: 2017-10-25
- Published: 2018-02-15
- Granted: 2019-06-04
- Earliest claimed: 2013-05-28
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Curtiss J. Howard; Todd E. Kaplinger; William A. Nagy
- Web page: https://patentgrep.com/patent/US10313436B2

## CPC

- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- H04W 4/20: Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
- H04W 4/50: Service provisioning or reconfiguring
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

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.

## Claims

### Claim 1

A computer program product for maintaining state synchronization of an application between computing devices and maintaining state synchronization of common information between different applications, the computer program product comprising a computer readable storage medium having program code embodied therewith, the program code comprising the programming instructions for:
receiving a request to access a scope out of a plurality of scopes from a first client device, wherein each of said plurality of scopes corresponds to a partition of data, wherein said scope comprises a data store storing state information;
receiving an update to said state information stored within said scope from said first client device; and
notifying a second client device that has access to said scope regarding said update to said state information stored within said scope.

### Claim 2 (depends on 1)

The computer program product as recited in claim 1, wherein said state information is shared among a first instance and a second instance of said application, wherein said first instance of said application resides on said first client device, wherein said second instance of said application resides on said second client device.

### Claim 3 (depends on 2)

The computer program product as recited in claim 2, wherein the program code further comprises the programming instructions for:
providing access to said state information stored within said scope to said first client device; and
receiving said update to said state information for said first instance of said application from said first client device.

### Claim 4 (depends on 1)

The computer program product as recited in claim 1, wherein said state information comprises common information shared between a first application and a second application.

### Claim 5 (depends on 4)

The computer program product as recited in claim 4, wherein the program code further comprises the programming instructions for:
receiving said update to said common information used by said first application residing on said first client device from said first client device.

### Claim 6 (depends on 5)

The computer program product as recited in claim 5, wherein the program code further comprises the programming instructions for:
notifying said second client device regarding said update to said common information to be used by said second application residing on said second client device.

### Claim 7 (depends on 5)

The computer program product as recited in claim 5, wherein the program code further comprises the programming instructions for:
notifying said first client device regarding said update to said common information to be used by said second application residing on said first client device.

### Claim 8 (depends on 1)

The computer program product as recited in claim 1, wherein said data store comprises rules defining a type of state information stored within said data store and defining a lifecycle of said state information.

### Claim 9 (depends on 1)

The computer program product as recited in claim 1, wherein said state information comprises one of the following: user-wide state information, device-wide state information and application-specific state information.

### Claim 10

A system, comprising:
a memory unit for storing a computer program for maintaining state synchronization of an application between computing devices and maintaining state synchronization of common information between different applications; and
a processor coupled to the memory unit, wherein the processor is configured to execute the program instructions of the computer program comprising:
receiving a request to access a scope out of a plurality of scopes from a first client device, wherein each of said plurality of scopes corresponds to a partition of data, wherein said scope comprises a data store storing state information;
receiving an update to said state information stored within said scope from said first client device; and
notifying a second client device that has access to said scope regarding said update to said state information stored within said scope.

### Claim 11 (depends on 10)

The system as recited in claim 10, wherein said state information is shared among a first instance and a second instance of said application, wherein said first instance of said application resides on said first client device, wherein said second instance of said application resides on said second client device.

### Claim 12 (depends on 11)

The system as recited in claim 11, wherein the program instructions of the computer program further comprise:
providing access to said state information stored within said scope to said first client device; and
receiving said update to said state information for said first instance of said application from said first client device.

### Claim 13 (depends on 10)

The system as recited in claim 10, wherein said state information comprises common information shared between a first application and a second application.

### Claim 14 (depends on 13)

The system as recited in claim 13, wherein the program instructions of the computer program further comprise:
receiving said update to said common information used by said first application residing on said first client device from said first client device.

### Claim 15 (depends on 14)

The system as recited in claim 14, wherein the program instructions of the computer program further comprise:
notifying said second client device regarding said update to said common information to be used by said second application residing on said second client device.

### Claim 16 (depends on 14)

The system as recited in claim 14, wherein the program instructions of the computer program further comprise:
notifying said first client device regarding said update to said common information to be used by said second application residing on said first client device.

### Claim 17 (depends on 10)

The system as recited in claim 10, wherein said data store comprises rules defining a type of state information stored within said data store and defining a lifecycle of said state information.

### Claim 18 (depends on 10)

The system as recited in claim 10, wherein said state information comprises one of the following: user-wide state information, device-wide state information and application-specific state information.
