Declarative Resource Modeling for Enterprise Software Reuse

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex enterprise resource models create dependencies that make enterprise software difficult to develop and share, particularly in systems like Attribute-Based Access Control (ABAC), where the dependency on a specific resource model limits reusability and sharability.

Innovation Solution

Implementing Declarative Resource Modeling Language (DRML) and design patterns to break the dependency on the underlying resource model, allowing for the creation of reusable enterprise software by simplifying the resource modeling process and converting hard resource model design problems into engineering processes using proven patterns like hierarchical, ownership, containment, and many-to-many relationships.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If enterprise software is built on a complex enterprise resource model, then the software can implement specific enterprise functions, but the dependency on the resource model makes the software difficult to share and reuse

Engineering Contradiction:
Improvereusability of enterprise softwareVSAvoiddependency on specific resource model
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a resource model translation layer that acts as an intermediary between the enterprise resource model and the software application. This translation layer converts resource model-specific operations into standardized operations, allowing the software to function independently of the specific resource model implementation. The translation layer includes a resource model adapter that translates resource model entities and relationships into a canonical representation that the software can consume without direct dependency on the underlying resource model complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the software architecture into distinct layers: the enterprise resource model layer, the translation/adaptation layer, and the application logic layer. By separating the resource model dependency from the core application logic through the translation layer, the software can be reused across different resource models. Each layer operates independently, with the translation layer handling the complexity of resource model variations while the application logic remains agnostic to specific resource model implementations.

Inventive Principle:
Principle #1Segmentation

2Ease of manufacture

If a specific enterprise resource model is used, then the software can be developed with specific enterprise logic, but the development cost increases and sharability decreases

Engineering Contradiction:
Improvedevelopment costVSAvoidsharability of software
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal software architecture that can operate with multiple enterprise resource models through the introduction of a resource model adapter framework. The adapter framework provides a standardized interface that works across different resource models, allowing a single software development to serve multiple enterprise contexts. The universal query interface and entity representation enable the same software logic to function with various resource models without requiring separate development for each model.

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

Solution Approach 2:

The resource model translation layer serves as a mediator that decouples the software from specific resource model implementations. This intermediary layer handles the complexity of resource model-specific operations, allowing the core software to be developed once and reused across different enterprises with different resource models. The translation layer absorbs the variability, making the software more shareable and reducing per-enterprise development costs.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If enterprise software has unbreakable dependency on resource model, then the software can leverage the full power of the resource model, but the software becomes bound to that specific resource model

Engineering Contradiction:
Improvesoftware functionalityVSAvoidportability across resource models
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a translation layer that acts as an intermediary between the resource model and the software application. This layer maintains the full functionality of the resource model by translating resource model-specific operations into standardized operations that the software can consume. The translation layer preserves the unbreakable dependency relationship while making it virtual rather than direct, allowing the software to leverage the full power of the resource model without being bound to its specific implementation details.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent transforms the dependency relationship from a fixed, direct parameter binding to a flexible, translatable parameter mapping. The translation layer dynamically maps resource model parameters and operations to standardized representations, allowing the software to maintain full functionality while adapting to different resource model implementations. This parameter transformation approach enables the software to work with the complete capabilities of any supported resource model without hardcoding dependencies.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12066987B2Software services with declarative resource modeling and resource model patterns
Publication Date: 2024.08.20 DELL PROD LP
  • US12066987B2 patent drawing
  • US12066987B2 patent drawing
  • US12066987B2 patent drawing

AI summary

A system can receive a first command that declares a first relationship between a first pair of computer resources of a group of computer resources, wherein the first relationship is any first one from a group of relationships, wherein a number of relationships in the group of relationships has a defined size. The system can receive a second command that declares a second relationship between a second pair of computer resources of the group of computer resources, wherein the second relationship is any second one from the group of relationships. The system can create a resource model for the group of computer resources based on the first command and the second command. The system can store the resource model in a memory.