Autonomous Software Agent for Self-Configuring Life Cycle Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software life cycle management is largely manual and time-consuming, prone to errors, and costly, as it requires human intervention for testing, updating, and installing software, with existing tools limited in determining the appropriateness of software updates based on changing needs and capabilities.

Innovation Solution

An autonomous software life cycle management agent that self-describes device needs, searches for matching software, tests in a sandbox, and decides on installation, allowing for self-testing, self-healing, and self-configuration, with the ability to switch to different software products based on updated capabilities and factors like hardware upgrades.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual software life cycle management is used, then human control and decision-making are maintained, but time consumption and costs increase significantly

Engineering Contradiction:
Improvesoftware management accuracyVSAvoidsoftware testing and updating time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The software system performs self-testing, self-healing, and self-configuration through automated agents that independently manage the software life cycle without requiring continuous human intervention, thereby reducing time consumption while maintaining management quality

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Manual mechanical processes of software testing and updating are replaced with automated computer-based systems that use algorithms and machine learning to perform these functions more efficiently and accurately

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If existing update management tools are used, then automated update checking is achieved, but the ability to determine appropriateness of updates based on changing needs is lost

Engineering Contradiction:
Improveupdate management efficiencyVSAvoidsoftware selection flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system continuously monitors changing user needs, device capabilities, and software performance, using this feedback to intelligently determine whether updates or alternative software selections are appropriate, combining automation with adaptability

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system dynamically adjusts selection criteria based on changing parameters such as user needs, device hardware upgrades, and software capabilities, allowing flexible decision-making about which software updates or alternatives to pursue

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If more comprehensive software testing and evaluation is performed, then software selection accuracy improves, but complexity of the management process increases

Engineering Contradiction:
Improvesoftware evaluation accuracyVSAvoidmanagement system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The comprehensive evaluation process is divided into separate modular agents specializing in different aspects such as testing, healing, and configuration, which reduces the apparent complexity while maintaining thorough evaluation capabilities

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10552134B2Method, device, and program storage device for autonomous software life cycle management
Publication Date: 2020.02.04 GE DIGITAL HLDG LLC
  • US10552134B2 patent drawing
  • US10552134B2 patent drawing
  • US10552134B2 patent drawing

AI summary

A method of searching for and installing a software product on a device is provided. One or more capabilities needed by the device to be served by a software product are determined. The one or more capabilities needed by the device are communicated from a software life cycle management agent on the device to a yellow pages agent outside the device, the communicating comprising formulating a request comprising a list of the capabilities encoded in a description language that defines the capabilities semantically. Then locations of one or more software products matching the one or more capabilities needed by the device may be received from the yellow pages agent. One of the one or more software products to install may be selected based on automatically evaluated criteria. Then the selected software product may be downloaded using its received location, and the selected software product may be installed on the device.