Automated Software Component Restart Sequencing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing distributed software applications is challenging due to complex dependencies between software components, requiring systems administrators with intimate knowledge to sequence restarts and upgrades, which is inefficient and prone to errors, especially as dependencies change over time.

Innovation Solution

A computer-implemented method that identifies metadata describing dependencies and temporal limitations of software components to determine a sequence for changing the operational state of distributed software applications, allowing for automated and efficient management of these changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual sequencing of software component restarts is performed by systems administrators, then the operational state changes can be controlled, but the process is time-consuming and inefficient

Engineering Contradiction:
Improvecontrol of operational state changesVSAvoidspeed of operational state changes
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs self-service by automatically generating and executing restart sequences without human intervention. The component manager autonomously analyzes dependencies, determines the correct restart order, and executes the sequence, eliminating the need for manual administrator involvement while maintaining reliability through automated dependency validation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary action by pre-analyzing component dependencies and pre-determining the restart sequence before execution. The dependency graph is built and analyzed in advance, allowing the system to have the restart plan ready before any actual restart operations begin, thus enabling rapid execution without manual sequencing during the actual restart process.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If systems administrators manually sequence software component restarts, then errors can be avoided through expert knowledge, but the process requires intimate knowledge and is prone to human error

Engineering Contradiction:
Improveaccuracy of restart sequencingVSAvoidsimplicity of management process
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system performs self-service by autonomously analyzing component dependencies and generating restart sequences without requiring administrator expertise. The component manager automatically builds the dependency graph, identifies critical paths, and determines the correct restart order, eliminating the need for administrators to have intimate knowledge of the application's internal dependencies.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The component manager acts as an intermediary between the distributed software application and the restart process. It automatically analyzes the application's component structure, determines dependencies, and generates the restart sequence, shielding administrators from the complexity of dependency analysis while ensuring accurate sequencing through automated logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If manual processes are used to change operational states of software components, then flexibility in handling complex dependencies is achieved, but downtime is increased due to manual intervention

Engineering Contradiction:
Improveability to handle complex dependenciesVSAvoiddowntime during operational state changes
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary action by pre-analyzing the entire component dependency structure and pre-determining the optimal restart sequence before execution. The dependency graph is constructed and analyzed in advance, allowing the system to have a complete restart plan ready, which enables rapid execution without manual intervention during the actual restart process, thus minimizing downtime.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback by continuously monitoring component states and adjusting the restart sequence execution based on real-time status. The component manager tracks the progress of each component restart and uses this feedback to ensure proper sequencing and handle any unexpected conditions, maintaining adaptability while executing the automated process efficiently.

Inventive Principle:
Principle #23Feedback

4Productivity

If automated sequencing is implemented, then efficiency and speed are improved, but complexity in determining the sequence increases

Engineering Contradiction:
Improvespeed of operational state changesVSAvoidcomplexity of sequencing logic
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The component manager acts as an intermediary that handles the complexity of sequencing logic internally. It automatically builds and analyzes the dependency graph, identifies critical paths, and generates the restart sequence without exposing this complexity to administrators. The automated sequencing logic is encapsulated within the component manager, allowing efficient execution while hiding the underlying complexity from users.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs self-service by autonomously analyzing component dependencies and generating restart sequences without human intervention. The component manager automatically constructs the dependency graph, performs topological sorting or critical path analysis, and executes the determined sequence, eliminating the need for administrators to understand or manually manage the complex sequencing logic.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8370802B2Specifying an order for changing an operational state of software application components
Publication Date: 2013.02.05 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8370802B2 patent drawing
  • US8370802B2 patent drawing
  • US8370802B2 patent drawing

AI summary

Managing a distributed software application is provided. Metadata describing a set of dependencies of a set of software components is identified in the distributed software application from data associated with the set of software components. Then, a sequence for changing an operational state of the set of software components of the distributed software application is identified from the metadata to form an identified sequence. Thereafter, the operational state of the set of software components is changed using the identified sequence.