Appliance Image Software Update via State Separation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software deployment and updates of complex server applications are time-consuming and prone to failure due to complex interactions between hardware and software configurations, and existing update methods do not start from a known state, increasing the risk of failure or undesired behavior.

Innovation Solution

Separate state data from the existing software stack, store it separately, and replace the existing software stack with an updated image, configuring the new stack with the injected state data to form a reliable and efficient update process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional software deployment methods are used, then software applications can be installed and configured, but the process is time-consuming and involves complex user input

Engineering Contradiction:
Improvesoftware deployment speedVSAvoiddeployment time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-configuring the complete software stack including operating system, application software, and all dependencies in an appliance image before deployment. This eliminates the need for time-consuming on-site installation and configuration steps, allowing the software to be deployed simply by copying the pre-configured image to the target system.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by creating appliance images that are replicated and copied to target systems. The appliance image contains a complete, self-contained software stack that can be copied across multiple systems without requiring reconfiguration, significantly speeding up deployment while maintaining consistency across the software environment.

Inventive Principle:
Principle #26Copying

2Reliability

If traditional software update methods are used, then existing software can be updated, but the update does not start from a known state increasing the risk of failure

Engineering Contradiction:
Improveupdate reliabilityVSAvoidupdate process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies extraction by separating the software stack into a self-contained appliance image that can be extracted and replaced as a complete unit. This isolation allows the software to be updated by replacing the entire appliance image rather than modifying existing installations, ensuring updates always start from a known, tested state and reducing update failures.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses parameter changes by versioning appliance images with specific configuration parameters and state information. Each appliance image is built with defined parameters representing a known good state, allowing reliable updates by switching to a new versioned image rather than incrementally modifying the existing software stack.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If pre-built appliance images are used, then deployment time is reduced, but updating still requires numerous operations and does not start from a known state

Engineering Contradiction:
Improvedeployment efficiencyVSAvoidupdate operation simplicity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent applies universality by designing the appliance image format to serve multiple functions: initial deployment, software updates, and system restoration. The same appliance image structure and replacement mechanism used for initial deployment is also used for updates, providing a universal process that is simple and consistent regardless of whether it's the first installation or an update operation.

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

Data Source

PatentUS8429639B2Image-based software update
Publication Date: 2013.04.23 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8429639B2 patent drawing
  • US8429639B2 patent drawing
  • US8429639B2 patent drawing

AI summary

State data can be separated from an existing software stack stored in one or more computer storage units in a computer system. The existing software stack can include operating system software and application software, and the state data can represent one or more states of the existing software stack. An image can be stored in one or more computer storage units in the computer system, and the stored image can form an updated software stack including operating system and application software. In addition, the updated software stack can be configured using the state data.