Multi-User Document Editing via Segmented Objects and Granular Locking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current document sharing systems lack the ability for multiple users to simultaneously edit a document associated with a database while maintaining fine-grained control over modifications, leading to inefficient serial editing and inconsistencies in document presentation.

Innovation Solution

A multi-user document editing system that allows simultaneous editing by representing documents as discrete objects, enabling granular locking and check-out mechanisms, and using a model-view-controller design pattern with a first-in-first-out queue to manage modification requests, ensuring real-time updates and parallel editing capabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If document locking mechanisms are implemented to prevent simultaneous editing, then document consistency is maintained, but user productivity and editing efficiency deteriorate due to serial editing requirements

Engineering Contradiction:
Improvedocument consistencyVSAvoiduser productivity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the document into discrete objects at multiple hierarchical levels (document, section, paragraph, line, character). This segmentation allows different users to lock and edit different segments simultaneously without conflicting with each other, thereby maintaining document consistency while enabling parallel editing and improving user productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements fine-grained locking where users can lock specific discrete objects or portions of the document rather than the entire document. This local quality approach allows other users to edit different portions simultaneously, resolving the contradiction between maintaining consistency through locking and preserving productivity through parallel access.

Inventive Principle:
Principle #3Local quality

2Productivity

If documents are broken into sub-documents to enable simultaneous editing, then user productivity improves through parallel editing, but document consistency deteriorates due to disjointed layout and formatting

Engineering Contradiction:
Improveparallel editing capabilityVSAvoiddocument consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a multi-level hierarchical structure where discrete objects are nested within sections, which are nested within documents. This nesting allows users to work on different levels simultaneously (e.g., one user edits a paragraph while another edits the section structure), maintaining both parallel editing capability and document consistency through the hierarchical framework.

Inventive Principle:
Principle #7Nested doll (Nesting)

Solution Approach 2:

The discrete objects in the patent serve multiple functions: they are the basic units for editing, locking, and hierarchical organization. This multi-functionality allows the same segmented structure to support both parallel editing operations and consistent document assembly, resolving the contradiction between productivity and consistency.

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

3Manufacturing precision

If fine-grained locking mechanisms are implemented, then editing precision and control improve, but system complexity increases due to granular lock management

Engineering Contradiction:
Improveediting precisionVSAvoidsystem complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent implements dynamic lock management where locks can be acquired and released at different hierarchical levels based on user needs. The system automatically manages lock escalation and de-escalation, providing fine-grained editing precision while reducing the perceived complexity for users through automated lock management mechanisms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces a server as an intermediary that manages the complex lock hierarchy and discrete object relationships. The server handles lock conflicts, coordinates between users, and maintains the hierarchical structure, thereby providing fine-grained control precision while shielding users from the underlying system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Stability of the object's composition

If presentation data is intermixed with content data, then document integration is improved, but resource intensity increases when updating formatting due to large numbers of records being updated

Engineering Contradiction:
Improvedocument integrationVSAvoidresource intensity
Core Design Contradiction:
Stability of the object's compositionVSUse of energy by moving object

Solution Approach 1:

The patent segments presentation data and content data into separate discrete objects within the hierarchical structure. This segmentation allows formatting updates to be applied only to specific presentation objects rather than forcing updates across all content records, maintaining document integration while reducing resource intensity during formatting operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by allowing different discrete objects to have different presentation properties independently. When formatting needs to be updated, only the specific presentation objects requiring changes are updated rather than all records, thereby maintaining integrated document structure while reducing the computational resources required for formatting updates.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8239760B2Multi-user document editing system and method
Publication Date: 2012.08.07 SAP SE
  • US8239760B2 patent drawing
  • US8239760B2 patent drawing
  • US8239760B2 patent drawing

AI summary

A multi-user document editing system and method. Embodiments of the invention utilize a model-view-controller design pattern to successfully control changes in parallel to underlying backend database information presentation related information. Granularity of protection and check in/check out on family, spread, presentation layer and presentation object. In addition, enables automatic update of changes to all users editing or viewing the information. Changes to the backend database may also include changes to the family hierarchy with real-time update of publication WYSIWYG pages for example. Enables rollback of changes. Instead of waiting constantly for other users to finish editing information before other edits can be made, the typical serial editing methodology is transformed by embodiments of the invention into a parallel methodology that greatly increases throughput and lowers the costs associated with large publications.