Cross-Component Reference Synchronization in Object-Oriented Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Loosely coupled object-oriented programming systems fail to manage consistency between components, leading to inconsistencies and system failures when referenced objects are deleted or updated, as they do not check for such issues in a timely manner.

Innovation Solution

A system that supports cross-component references by maintaining aggregate signatures and timestamps within cross-component references to determine synchronization between referencing and referenced objects, performing synchronization operations as needed, and using identifiers and pathnames to ensure consistent access and manipulation of objects.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If loose coupling is implemented to enable concurrent modification of components, then productivity and adaptability are improved, but consistency management between components deteriorates

Engineering Contradiction:
Improveconcurrent modification capabilityVSAvoidconsistency between components
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where the system automatically detects inconsistencies in cross-component references and triggers synchronization operations. When a component is modified, the system monitors for consistency violations and initiates corrective synchronization to restore consistency, enabling both concurrent development and reliable consistency management.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by validating cross-component references during the import and modification processes. Before allowing component modifications that could create inconsistencies, the system checks for potential consistency violations and prevents or corrects them in advance, ensuring consistency is maintained proactively rather than reactively.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If cross-component references are maintained without validation, then ease of operation is improved, but harmful factors increase due to undetected inconsistencies

Engineering Contradiction:
Improvereference management simplicityVSAvoidsystem failures from inconsistencies
Core Design Contradiction:
Ease of operationVSObject-generated harmful factors

Solution Approach 1:

The patent implements self-service by enabling the system to automatically detect, report, and synchronize inconsistent cross-component references without requiring manual intervention. The system monitors its own consistency state and performs corrective synchronization operations autonomously, maintaining simplicity while eliminating harmful inconsistencies.

Inventive Principle:
Principle #25Self-service

3Reliability

If manual consistency checking is implemented, then reliability is improved, but device complexity and loss of time increase

Engineering Contradiction:
Improveconsistency validationVSAvoidconsistency management mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements self-service by enabling the system to automatically detect, report, and synchronize inconsistent cross-component references without requiring manual intervention. The system monitors its own consistency state and performs corrective synchronization operations autonomously, maintaining simplicity while eliminating harmful inconsistencies.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7401340B2Supporting cross-component references in an object-oriented programming system
Publication Date: 2008.07.15 ORACLE INT CORP
  • US7401340B2 patent drawing
  • US7401340B2 patent drawing
  • US7401340B2 patent drawing

AI summary

One embodiment of the present invention provides a system that supports cross-component references in an object-oriented programming system. During operation, the system makes a first attempt to obtain a name for a referenced object through a cross-component reference between a referencing object and the referenced object. This first attempt involves attempting to obtain the name for the referenced object from the referenced object, which involves attempting access the referenced object through an identifier for the referenced object within the cross-component reference. If this first attempt fails, the system makes a second attempt to obtain the name for the referenced object, which involves obtaining a pathname for the referenced object from the cross-component reference.