Collaboration Object Versioning via Part Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing collaboration systems overwrite existing values when changing attributes of objects, leading to a loss of previous versions and lack of versioning capabilities, which is not efficient for managing changes and access control.

Innovation Solution

Implementing a versioning system where collaboration objects are represented as aggregates of parts, allowing specific parts to be changed while keeping others unchanged, with new versions created and stored as sets of identifiers, enabling incremental or full versioning and efficient access to previous versions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If attribute values are overwritten when changing object attributes, then the system operation is simple, but version information is lost and change management capability deteriorates

Engineering Contradiction:
Improvesimplicity of attribute modificationVSAvoidloss of version information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent segments an object into multiple independent parts, where each part represents a specific attribute or component. When modifying an object, only the specific part being changed is updated, while other parts retain their original values. This segmentation enables versioning of individual parts without requiring complete object duplication, thus preserving version information while maintaining operational simplicity.

Inventive Principle:
Principle #1Segmentation

2Reliability

If complete object versioning is implemented, then all previous versions are preserved, but system complexity and storage requirements increase

Engineering Contradiction:
Improveversion preservation capabilityVSAvoidversioning system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the versioning mechanism from the complete object level down to the individual part level. Instead of versioning entire objects, only specific parts that have changed are versioned. This extraction reduces the complexity of the versioning system while maintaining the ability to preserve and retrieve previous versions of modified parts.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies versioning selectively to specific parts of an object rather than uniformly to the entire object. Each part can have its own version history independent of other parts, allowing the system to maintain version information for only those elements that have changed, thereby reducing overall system complexity and storage requirements.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If objects are divided into multiple parts, then granular control over changes is improved, but object structure complexity increases

Engineering Contradiction:
Improvegranular control capabilityVSAvoidobject structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides objects into discrete, independently manageable parts, allowing users to modify, version, and control specific parts without affecting the entire object. This segmentation provides granular control over changes while using a standardized part structure that prevents excessive complexity in object organization.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8805782B2Representing an object as an aggregate of identifiable parts shareable by users of a collaboration system
Publication Date: 2014.08.12 ORACLE INT CORP
  • US8805782B2 patent drawing
  • US8805782B2 patent drawing
  • US8805782B2 patent drawing

AI summary

A computer that is programmed with collaboration software receives a change to be made to an object that can be of any type among several predetermined types such as message, document, contact, discussion and meeting. The object is represented as an aggregate of identifiable parts shareable by users, including at least a content part, a lock part, and an access-control part. Each version of the object is represented by a set of identifiers of these parts. In response to receipt of information identifying the change, the computer automatically identifies a specific part to be changed from among multiple parts of the object. Thereafter, the computer automatically creates a new instance of the specific part which contains the change as per the received information. The computer automatically stores a new version of the object as a new set that includes a new identifier of the new instance of the specific part.