Generic CIM Client API Interface for Efficient Association Traversal

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Common Information Model (CIM) client applications lack an automated method to determine the most efficient algorithm for finding relationships between instances of two classes, leading to inefficient scaling and redundant operations due to varying implementation efficiencies and instance ratios.

Innovation Solution

A new generic CIM client API interface that allows providers to specify the most efficient algorithm through qualifiers, enabling the client to automatically select the best method among enumerating instances from one class, the other class, or both, and local matching, thereby optimizing the number of CIM agent calls.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If the client uses the standard CIM associators method to find all relationships between instances of class A and class B, then the implementation is simple and follows the standard interface, but the algorithm efficiency varies and may scale poorly as O(a*b) where a and b are the number of instances of classes A and B respectively

Engineering Contradiction:
Improveease of implementationVSAvoidalgorithm efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent introduces a new parameter/qualifier called 'RecommendedClientAlgorithm' that can be set to different values (EnumerateA, EnumerateB, or EnumerateBoth) to change the enumeration strategy. This allows the system to adapt the algorithm based on the specific data distribution and instance counts, resolving the contradiction between simple implementation and efficient performance by providing multiple configurable approaches rather than a single fixed method

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent makes the enumeration algorithm dynamic by allowing the client to select different enumeration strategies based on runtime conditions such as instance counts and memory availability. The algorithm can switch between enumerating from class A, class B, or both classes, making the system adaptable to different scenarios rather than static, thus improving efficiency without sacrificing implementation simplicity

Inventive Principle:
Principle #15Dynamics

2Productivity

If the provider implements additional matching logic to improve efficiency, then the algorithm may become more efficient for certain data distributions, but the client has no information about the implementation efficiency and cannot select the optimal algorithm

Engineering Contradiction:
Improvealgorithm efficiencyVSAvoidinformation about implementation efficiency
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent implements a feedback mechanism where the provider sets the 'RecommendedClientAlgorithm' qualifier based on their implementation characteristics and the data distribution. This qualifier provides feedback to the client about which enumeration strategy will be most efficient, allowing the client to make informed decisions. The feedback loop resolves the information asymmetry by enabling the provider to communicate implementation efficiency information to the client without exposing internal implementation details

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The 'RecommendedClientAlgorithm' qualifier acts as an intermediary that bridges the gap between the provider's implementation knowledge and the client's algorithm selection. Rather than requiring direct communication between provider developers and clients, or exposing internal implementation details, the qualifier serves as a standardized interface that conveys efficiency information, resolving the contradiction between having specialized knowledge and maintaining standard interface simplicity

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If the client enumerates instances from the class with fewer instances, then the number of CIM agent calls may be reduced, but the client cannot determine which class has fewer instances without additional information

Engineering Contradiction:
Improvenumber of CIM agent callsVSAvoidcomplexity of determining optimal enumeration strategy
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent enables the provider to perform self-service by automatically analyzing their own implementation characteristics and data distributions, then encoding this knowledge in the 'RecommendedClientAlgorithm' qualifier. This eliminates the need for the client to manually analyze instance counts or implement complex decision logic, as the provider has already performed the optimization analysis and communicated the result through the qualifier, resolving the contradiction between reducing agent calls and avoiding client-side complexity

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7499992B1Association traversal translation for common information model
Publication Date: 2009.03.03 SAP SE
  • US7499992B1 patent drawing
  • US7499992B1 patent drawing
  • US7499992B1 patent drawing

AI summary

One example of this invention defines a new interface to the CIM client API that is more generic than the current standard CIM client API that clients can use for the case where they want to find all relationships between instances of A and B. The method would implement several different ways to retrieve the relationships between A and B. CIM has a concept of a qualifier, which is a tag that can be applied to supply any additional information. The provider could define in the qualifier for each association class which algorithm they think is most efficient, and the implementation of the new interface would use whichever algorithm the qualifier says will be most efficient.