Patent ID: 8676919

Claim:
A computer-implemented method for editing a project on a synchronous project server via an asynchronous client, the computer-implemented method comprising: receiving, at the asynchronous client, a first edit to a first project task of the project made by a user of the asynchronous client; receiving, at the asynchronous client, an indication that the user of the asynchronous client has completed editing the first project task; sending, from the asynchronous client to the synchronous project server, the first edit to the first project task via background processing while the user of the asynchronous client continues to interact with the project, wherein the asynchronous client is configured to receive a completion response from the synchronous project server for each edit sent to the synchronous project server after processing at the synchronous project server of each edit is complete; receiving, at the asynchronous client from the synchronous project server, a confirmation response indicating that the synchronous project server received the first edit to the first project task; receiving, at the asynchronous client, a second edit to a second project task of the project made by the user of the asynchronous client while the asynchronous client is waiting for a completion response for the first edit to the first project task indicating that the synchronous project server has processed the first edit to the first project task; sending, from the asynchronous client to the synchronous project server, the second edit to the second project task via background processing, wherein the user of the asynchronous client can continue editing the project without waiting for the synchronous project server to finish processing each edit sent to the synchronous project server; and receiving, at the asynchronous client from the synchronous project server, a completion response for each edit sent to the synchronous project server after processing of each edit by the synchronous project server is complete.