Software Configuration Hierarchy for Usage-Based Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional software configuration techniques fail to account for higher-level usage and behavior, leading to suboptimal configuration and inefficient resource utilization in software systems, as they typically focus on individual components rather than the overall usage and interaction within the system.

Innovation Solution

A hierarchy of entities representing software system functionality and usage is created, allowing for usage-based optimization by tracking and managing the configuration, implementation, and execution of components, with nodes and edges indicating relationships and metadata specifying requirements, enabling users to configure tasks and components efficiently based on intended use.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If conventional techniques are used to configure individual components or features within the software system, then the configuration process is simple and straightforward, but the software system fails to behave or operate in a manner that is expected or intended by the user

Engineering Contradiction:
Improveconfiguration process simplicityVSAvoidsoftware system behavior alignment
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent introduces a hierarchical dimension to software configuration, organizing components into multiple levels (system level, module level, component level). This dimensional change allows configuration to proceed from high-level system behavior down to individual components, ensuring that the overall system behavior aligns with user expectations while maintaining manageable configuration steps at each level.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Solution Approach 2:

The patent performs preliminary configuration actions by establishing system-level behavior and requirements before configuring individual components. The hierarchical approach allows the system to pre-def ine the intended behavior and usage patterns at higher levels, which then guides the configuration of lower-level components, ensuring that final system behavior matches user expectations.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If a workflow is created identifying a module in the software system that provides functionality related to the task, then the task can be performed, but additional processor, memory, storage, network, and/or other computational resources are consumed in configuring, initializing, and/or executing other objects or components in the same module that are not needed to perform the task

Engineering Contradiction:
Improvetask execution capabilityVSAvoidcomputational resource consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent extracts and configures only the specific components and objects within a module that are necessary to perform the designated task. By analyzing the task requirements and selectively configuring only the needed elements rather than the entire module, the system achieves task execution capability while minimizing computational resource consumption for configuration, initialization, and execution of unnecessary components.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies local quality by configuring different parts of the module with different levels of detail and resource allocation based on their specific needs for task execution. Instead of uniformly configuring all components in a module, the system identifies and configures only those components with the specific quality and resources needed for the task, leaving other components in a minimal or unconfigured state.

Inventive Principle:
Principle #3Local quality

3Device complexity

If individual components or features are configured within the software system, then the configuration process is manageable and straightforward, but the configuration fails to account for higher-level usage or behavior associated with the software system

Engineering Contradiction:
Improveconfiguration management complexityVSAvoidhigher-level usage context
Core Design Contradiction:
Device complexityVSLoss of information

Solution Approach 1:

The patent segments the configuration process into distinct hierarchical levels (system level, module level, component level), allowing each level to be managed independently with appropriate complexity. This segmentation enables straightforward configuration at each level while systematically capturing and preserving higher-level usage context and behavior requirements that would otherwise be lost in flat, component-by-component configuration approaches.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240345835A1Usage-Based Optimization Of Software Configurations
Publication Date: 2024.10.17 ORACLE INT CORP
  • US20240345835A1 patent drawing
  • US20240345835A1 patent drawing
  • US20240345835A1 patent drawing

AI summary

Techniques for configuring a software system include generating a hierarchy of entities representing usage of the software system by a set of users, wherein the hierarchy includes a first set of nodes representing a set of tasks, a second set of nodes representing a set of components that implement the tasks, and a set of edges between the first set of nodes and the second set of nodes. The techniques also include updating the hierarchy based on a first set of configurations for the tasks, wherein the updated hierarchy indicates one or more tasks that have been enabled for the users. The techniques further include determining, based on the updated hierarchy, one or more components that implement the task(s). Finally, the techniques include generating, based on the hierarchy, one or more runbooks that execute the task(s) using the component(s).