Central Registry for Component Instance Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In component-based software development, replacing an original component instance with a new one requires manual modifications across dependent components, leading to time-consuming and error-prone processes, especially when many components are involved.

Innovation Solution

A central registry is implemented to map names to instances of application components, allowing components to reference names instead of specific instances, enabling automatic notification and updating of dependent components when instance changes occur, thereby decoupling dependency chains from creation order and facilitating indirect binding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual modification is used to replace component instances, then direct component access is maintained, but time consumption and error probability increase significantly

Engineering Contradiction:
Improveerror probabilityVSAvoidtime consumption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent introduces a central registry as an intermediary layer between components and component instances. Instead of components directly accessing instances (which requires manual modification when instances change), the registry stores mappings between component names and instance references. When an instance is replaced, the registry automatically updates the mapping, eliminating the need to modify dependent components and thereby reducing both time consumption and error probability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If direct component instance references are used, then access speed is fast, but system flexibility and maintainability decrease

Engineering Contradiction:
Improvesystem flexibilityVSAvoidaccess speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The central registry acts as a mediator that maintains name-to-instance mappings. Components access instances through the registry using name lookups, which provides flexibility to replace instances without modifying component code. The registry optimizes access by caching instance references and using efficient lookup mechanisms, thereby maintaining fast access speeds while enabling system flexibility and ease of maintenance.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If component replacement is performed without a registry, then system complexity remains low, but the number of manual modifications required increases

Engineering Contradiction:
Improveease of component replacementVSAvoidsystem complexity
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The central registry serves as a simple intermediary data structure that stores name-to-instance mappings. It provides ease of component replacement through automatic update propagation - when an instance is replaced, the registry automatically notifies and updates all dependent components. The registry's implementation is straightforward, using basic data structures like hash maps or dictionaries, thereby minimizing the added system complexity while dramatically improving ease of component replacement.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11726774B2Application programming interface for a registry
Publication Date: 2023.08.15 CISCO TECHNOLOGY INC
  • US11726774B2 patent drawing
  • US11726774B2 patent drawing
  • US11726774B2 patent drawing

AI summary

The disclosed embodiments relate to a system that facilitates developing applications in a component-based software development environment. This system provides an execution environment comprising instances of application components and a registry that maps names to instances of application components. Upon receiving a call to register a mapping between a name and an instance of an application component, the system updates the registry to include an entry for the mapping. Moreover, upon receiving a call to be notified about registry changes for a name, the system updates the registry to send a notification to a caller when a registry change occurs for the name.