Automated Roll-Forward for Software Package Version Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computer networks, when software packages experience failures or errors, administrators face challenges in quickly identifying and rectifying issues, often requiring manual analysis and deployment of new software versions, which can lead to prolonged downtime and inefficiencies.

Innovation Solution

A method involving a roll-forward process using a set of APIs within a version control system to detect failures, extract and clone previous software package versions, import changes, commit them to generate a new version, and deploy it automatically, thereby minimizing downtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual analysis and deployment of new software versions is performed, then software failures can be rectified, but downtime is prolonged and operational efficiency decreases

Engineering Contradiction:
Improvesoftware stabilityVSAvoiddowntime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by automatically detecting software failures and initiating the roll-forward process without waiting for manual intervention. The version control system pre-identifies stable previous versions and automatically retrieves them, enabling immediate rectification of failures and minimizing downtime.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system enables self-service by automating the entire software failure rectification process. The version control system automatically detects failures, identifies suitable previous versions, retrieves them, and deploys them without requiring administrator intervention, thereby significantly reducing downtime and improving operational efficiency.

Inventive Principle:
Principle #25Self-service

2Ease of operation

If manual analysis and deployment processes are used, then software changes can be made, but operational efficiency and productivity are reduced

Engineering Contradiction:
Improvesoftware update processVSAvoidsoftware deployment efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system enables self-service by automating the entire software failure rectification process. The version control system automatically detects failures, identifies suitable previous versions, retrieves them, and deploys them without requiring administrator intervention, thereby significantly reducing downtime and improving operational efficiency.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system replaces manual mechanical operations with automated computational processes. Instead of administrators manually analyzing failures and deploying updates, the version control system uses automated detection algorithms and API-driven processes to identify, retrieve, and deploy stable software versions, dramatically improving deployment efficiency.

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

3Extent of automation

If a roll-forward process with multiple API operations is implemented, then automated generation of new software versions is achieved, but device complexity increases

Engineering Contradiction:
Improveautomated version generationVSAvoidversion control system complexity
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The system merges multiple discrete operations into a unified roll-forward process. By combining failure detection, version identification, data extraction, repository cloning, change import, and deployment into a single automated workflow, the system achieves high automation while managing complexity through integration rather than separate manual steps.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The version control system performs multiple functions through a single unified process. The same system detects failures, identifies stable versions, extracts software data, clones repositories, imports changes, and deploys updates, eliminating the need for separate specialized tools and reducing overall system complexity despite the multi-step process.

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

Data Source

PatentUS11157269B2Computer-based systems configured for automated roll-forward of software package versions and methods of use thereof
Publication Date: 2021.10.26 CAPITAL ONE SERVICES LLC
  • US11157269B2 patent drawing
  • US11157269B2 patent drawing
  • US11157269B2 patent drawing

AI summary

In order to facilitate automatic roll-forward updates, embodiments include detecting a failure in a software package. In response to the failure, data indicative of a current version of a software package is extracted from a release directory. In response to the application data, a base repository with a version history of the application is cloned. In response to the cloning, a prior set of changes from the base repository in the temporary directory, where the prior set of changes form an old application version of the application, is imported. In response to the import of the prior set of changes, the current version is overwritten with the prior set of changes to generate a new version. The new version is pushed directly to the base repository and a deployment API causes the new version to replace the current version.