Undo Reference Invalidation in Collaborative CAx Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing CAx systems are not well-suited for collaborative design and editing, leading to data loss or corruption due to editing conflicts in synchronous collaborative applications, where undoing operations can result in syntactic or semantic conflicts as users may unknowingly perform operations on shared design models simultaneously.

Innovation Solution

A computer-implemented method that stores a shared model of an engineering object on a CAx client, receives operations from users, and before performing them, stores information to restore the feature to its previous state, determines if reversing an operation would create an invalid reference due to conflicting operations on other clients, and either reverses the operation or performs a resolution operation to prevent reference invalidation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a single-user CAx system permits undoing and redoing operations with one command history, then the ease of operation is improved, but the reliability deteriorates in collaborative environments where multiple users perform operations simultaneously

Engineering Contradiction:
Improveease of undo operationVSAvoiddata integrity in collaborative environment
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the command history into user-specific command stacks, where each user maintains their own separate command history. This allows each user to have their own undo/redo operations without interfering with other users' operations, resolving the conflict between ease of operation and reliability in collaborative environments

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a server as an intermediary that manages and coordinates command histories across multiple clients. The server mediates between users by tracking operations and preventing conflicts, allowing individual users to enjoy simple undo operations while maintaining overall data integrity through centralized coordination

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If users perform operations on shared design models simultaneously without coordination, then the productivity is improved, but the loss of information increases due to editing conflicts and data corruption

Engineering Contradiction:
Improvecollaborative editing speedVSAvoiddata loss from editing conflicts
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent implements a feedback mechanism where the system continuously monitors operations across all users and provides real-time information about potential conflicts. When a user attempts an operation that would create a conflict, the system notifies them and can automatically adjust the operation, allowing high-speed collaboration while preventing information loss through continuous feedback loops

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by pre-coordinating operations before they are executed. The system checks for potential conflicts before allowing operations to proceed and resolves them in advance, enabling users to work simultaneously at high speed without risking data corruption from uncoordinated edits

Inventive Principle:
Principle #10Preliminary action

3Ease of repair

If a user executes an undo command to reverse their last operation, then the ease of repair is improved, but the object-affected harmful factors increase due to syntactic or semantic conflicts with other users' operations

Engineering Contradiction:
Improveease of undo operationVSAvoidsyntactic and semantic conflicts
Core Design Contradiction:
Ease of repairVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary anti-action by detecting potential syntactic and semantic conflicts before they occur during undo operations. The system analyzes the intended undo operation against the current state of the model and other users' operations, and preemptively prevents or adjusts the undo to avoid creating harmful conflicts, thus maintaining ease of repair while eliminating harmful effects

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS10261756B2Method for preventing reference invalidation when reversing operations in synchronous collaborative applications
Publication Date: 2019.04.16 BRIGHAM YOUNG UNIV
  • US10261756B2 patent drawing
  • US10261756B2 patent drawing
  • US10261756B2 patent drawing

AI summary

A computer-implemented method for preventing reference invalidation when reversing operations in synchronous collaborative applications may include (i) storing, on a client, a shared model of an engineering object including one or more features, (ii) receiving, from a user, an operation to be performed on the feature, (iii) before performing the operation, storing, in a command stack on the client, information sufficient to restore the feature to a state prior to performing the operation, (iv) receiving, from the user, a request to reverse the operation, (v) determining whether reversing the operation will create an invalid reference due to a conflicting operation having been performed on the feature at a second client, and (vi) in response to determining whether reversing the operation will create an invalid reference, reversing the operation or performing a resolution operation to prevent the reference invalidation. A system corresponding to the above method is also disclosed.