Document Cooperation Apparatus for Simultaneous Edit Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In document cooperation environments, simultaneous editing by multiple users can lead to conflicts between editing commands, requiring operational transformation to maintain a consistent document state, but existing solutions often necessitate complex processing algorithms and additional program engines on client terminals.

Innovation Solution

A document cooperation supporting apparatus that receives and sequentially transmits edit commands from multiple client terminals, performing operational transformations on late-received commands to ensure all clients apply edits in the same state, eliminating the need for additional processing engines by handling transformations centrally.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If operational transformation is performed on all edit commands to resolve conflicts, then document state consistency is improved, but processing complexity and time consumption increase

Engineering Contradiction:
Improvedocument state consistencyVSAvoidprocessing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The server performs operational transformation on edit commands before transmitting them to client terminals. By preparing and resolving conflicts in advance on the server side, the system ensures document state consistency without requiring complex processing on each client terminal, thus improving reliability while reducing client-side processing complexity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The server acts as an intermediary that receives edit commands from multiple client terminals, performs operational transformation to resolve conflicts, and then transmits the transformed commands to the appropriate clients. This centralization of transformation logic eliminates the need for each client to independently handle complex conflict resolution, maintaining document consistency while simplifying client processing requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If edit commands are processed sequentially to resolve conflicts, then document state consistency is improved, but editing response time increases

Engineering Contradiction:
Improvedocument state consistencyVSAvoidediting response time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The server performs operational transformation on edit commands in advance before they are transmitted to client terminals. This preliminary processing resolves conflicts and determines the correct order of operations, allowing client terminals to apply edits quickly without waiting for complex conflict resolution, thus improving document state consistency while minimizing editing response time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system establishes a feedback mechanism where the server receives edit commands from client terminals, processes them through operational transformation, and returns the transformed commands to the appropriate clients. This feedback loop ensures that all clients receive consistent, conflict-resolved commands while maintaining efficient processing through server-side preparation.

Inventive Principle:
Principle #23Feedback

3Productivity

If client terminals perform operational transformation locally, then processing speed is improved, but device requirements and complexity increase

Engineering Contradiction:
Improveprocessing speedVSAvoidprogram engine requirements
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The server serves as an intermediary that performs operational transformation on edit commands before transmitting them to client terminals. This centralizes the complex transformation logic on the server side, eliminating the need for client terminals to have additional processing engines. Client terminals simply receive and apply the pre-transformed commands, maintaining processing efficiency while significantly reducing device requirements and software complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The operational transformation functionality is extracted from the client terminals and relocated to the server. By removing this complex processing requirement from the client side, the system maintains processing speed through server-side transformation while eliminating the need for additional program engines on client devices, thus reducing overall system complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

4Productivity

If all edit commands are transmitted to client terminals simultaneously, then communication efficiency is improved, but conflict resolution capability decreases

Engineering Contradiction:
Improvecommunication efficiencyVSAvoidconflict resolution capability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The server performs operational transformation on edit commands before transmitting them to client terminals. This preliminary processing resolves conflicts and determines the correct order of operations, allowing the server to transmit commands efficiently while maintaining conflict resolution capability. The transformation is prepared in advance, so transmission can occur efficiently without sacrificing the ability to handle conflicts.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The server acts as an intermediary that receives edit commands from multiple client terminals, performs operational transformation to resolve conflicts, and then transmits the transformed commands to the appropriate clients. This centralization of transformation logic allows simultaneous communication with multiple clients while maintaining robust conflict resolution through server-side processing.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11409706B2Document cooperation supporting apparatus for supporting simultaneous edit of document, and operating method thereof
Publication Date: 2022.08.09 THINKFREE INC
  • US11409706B2 patent drawing
  • US11409706B2 patent drawing
  • US11409706B2 patent drawing

AI summary

A document cooperation supporting apparatus for supporting a simultaneous edit of a document according to an exemplary embodiment of the present invention, and an operating method thereof sequentially transmit edit commands to each of the client terminals based on a reception sequence of the edit commands when the simultaneously generated edit commands are received from the plurality of client terminals, and performs an operational transformation on edit commands having later reception sequences to provide a cooperation environment enabling users to simultaneously edit the document.