Middleware-Independent Object Model Abstraction via Categorical Generator

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional middleware development platforms require sophisticated knowledge of interface description languages (IDL) and specific language mappings, leading to inefficient development and difficulties in switching between different middleware systems, as middleware-specific information clutters the generated stubs and skeletons, hindering productivity and flexibility.

Innovation Solution

A categorical-based generator that abstracts an object model specified in IDL, preserving application semantics while being middleware-independent, and generates an implementation for a specific middleware platform, concealing middleware-related information and allowing seamless switching between platforms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional middleware development platforms are used with IDL and language mappings, then middleware-specific functionality is achieved, but development complexity and difficulty increase due to sophisticated knowledge requirements

Engineering Contradiction:
Improvemiddleware functionalityVSAvoiddevelopment complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary layer (the generator system) that translates between IDL object models and middleware-specific code. This intermediary automatically handles the complexity of IDL specifications and language mappings, shielding developers from direct engagement with complex middleware details while preserving full middleware functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the development process into distinct phases: IDL object model definition, automatic code generation, and implementation. By separating the high-level object model specification from the low-level middleware implementation details, the system reduces development complexity while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

2Reliability

If middleware-specific information is included in generated stubs and skeletons, then complete middleware functionality is provided, but productivity decreases due to cluttered code and knowledge requirements

Engineering Contradiction:
Improvemiddleware functionalityVSAvoiddevelopment productivity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts middleware-specific information from the visible code structure into automatic generation artifacts. The generator system pulls out complex middleware details (marshalling, unmarshalling, interface definitions) and handles them automatically, leaving developers with cleaner, more productive code while preserving complete middleware functionality in the generated components.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If developers use conventional IDL-based middleware systems, then standardized object communication is achieved, but flexibility to switch between middleware systems is reduced

Engineering Contradiction:
Improveobject communication standardizationVSAvoidmiddleware platform flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal IDL object model that can be mapped to multiple different middleware systems. The generator system provides multi-functionality by supporting generation for various middleware platforms from a single IDL specification, enabling developers to switch between middleware systems without changing their core object model definitions.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Manufacturing precision

If detailed middleware interface specifications are required, then precise object interactions are defined, but development time increases due to sophisticated knowledge requirements

Engineering Contradiction:
Improveinterface definition precisionVSAvoiddevelopment time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent performs preliminary action by automatically generating complete, precise interface implementations from IDL specifications before actual development work begins. The generator system pre-processes the IDL definitions and produces ready-to-use stubs and skeletons, eliminating the need for developers to manually create detailed interface specifications and reducing development time while maintaining precision.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7546309B1Methods and apparatus for creating middleware independent software
Publication Date: 2009.06.09 EMC IP HLDG CO LLC
  • US7546309B1 patent drawing
  • US7546309B1 patent drawing
  • US7546309B1 patent drawing

AI summary

A system abstracts an object model by receiving an object model specification defining application semantics for an application to access, via invocations, objects identified in the object model specification. The system applies a categorical-based generator that applies at least one morphism to the object model specification to generate an abstraction interface object model that preserves application semantics defined within the object model specification and is independent of a middleware object access mechanism. The system also generates an implementation of the abstraction interface object model for a particular middleware object access mechanism used to access data within objects corresponding to the object model specification.