Update Readiness Assistant for Distributed Software Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software updates in software-defined data centers often fail due to unmet prerequisite requirements, leading to undesirable or inoperable states, causing downtime and unreliability, and existing update assistants are limited in managing updates across multiple software products and versions.

Innovation Solution

The introduction of an Update Readiness Assistant (URA) framework that manages pre- and post-update requirements by verifying compatibility, resource availability, and custom checks for various software products, ensuring successful updates through automated remediation measures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If software updates are performed without comprehensive pre-update verification, then update speed and simplicity are improved, but update reliability and system stability deteriorate due to unmet prerequisites causing failures

Engineering Contradiction:
Improveupdate speedVSAvoidupdate reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements pre-update verification that checks prerequisites (software version compatibility, resource availability, configuration requirements) before the update process begins. This preliminary action identifies and reports potential failures ahead of time, allowing administrators to resolve issues before updates are executed, thus maintaining both speed and reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system provides feedback mechanisms that report verification results, compatibility issues, and prerequisite fulfillment status to administrators. This feedback loop enables informed decision-making about whether to proceed with updates, preventing failures while maintaining efficient update processes through targeted verification rather than exhaustive checking.

Inventive Principle:
Principle #23Feedback

2Reliability

If comprehensive pre-update verification and automated remediation are implemented, then update reliability is improved, but system complexity and resource requirements worsen

Engineering Contradiction:
Improveupdate completion successVSAvoidverification system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements automated remediation capabilities that attempt to self-correct common update prerequisites issues without administrator intervention. The system automatically performs actions such as installing missing dependencies, adjusting configurations, or scheduling updates for optimal times, reducing the need for complex manual verification processes while maintaining high reliability.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If multiple custom verification checks are added for different software products, then measurement precision of update readiness is improved, but device complexity and maintenance burden worsen

Engineering Contradiction:
Improveupdate readiness assessment accuracyVSAvoidverification framework complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent creates a universal verification framework that can adapt to multiple software products and update types through a common architecture. The system uses standardized verification templates and configurable checklists that can be customized for different products without requiring separate verification systems, thereby maintaining measurement precision while reducing overall complexity through reuse and standardization.

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

Data Source

PatentUS11907706B2System and method of analyzing update readiness for distributed software systems
Publication Date: 2024.02.20 VMWARE INC
  • US11907706B2 patent drawing
  • US11907706B2 patent drawing
  • US11907706B2 patent drawing

AI summary

The disclosure provides for analyzing upgrade and migration readiness. Embodiments include receiving an indication to upgrade a software product and a selected upgrade path identifying a target-upgrade version. Embodiments include accessing an array of pre-upgrade procedures comprising code for identifying one or more conditions that must be met before the software product can be upgraded based on the accessed array being associated with the software product. Embodiments include executing one or more of the pre-upgrade procedures in advance of upgrading the software product. Embodiments include accessing one or more autonomous remediation scripts from the repository based on identification of one or more failed pre-upgrade procedures. Embodiments include executing the one or more autonomous remediation scripts to cure the one or more failed pre-upgrade procedures and initiating an upgrade of the software product based on identifying that the array of pre-upgrade procedures successfully completed execution.