Shadow Installations for Distributed Software Module Upgrades

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed software systems, upgrading software modules while maintaining minimum downtime is challenging, especially when communication and modifications are required between modules running on separate hosts, as traditional switch upgrade approaches may not effectively comply with the need for high availability and continuous application execution.

Innovation Solution

The method involves installing and deploying shadow software modules on the same host as the software module to be upgraded, allowing for communication and setup during production mode, followed by a controlled switch to the target release, synchronizing system files and data structures, and reestablishing communication with local releases to minimize downtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a new version of software system is directly installed over the old version, then the upgrade is simple and fast, but it leads to huge downtime and interrupts productive mode

Engineering Contradiction:
Improvecontinuous application executionVSAvoiddowntime
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent installs and deploys the shadow application (new version) in advance while the productive system continues to run. All time-consuming installation and deployment activities are completed before the actual switch, so that when the productive system needs to be upgraded, the new version is already ready and only a brief switching operation is needed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a shadow application that is a complete copy of the productive system with the new version. This shadow copy runs in parallel and can be prepared in advance without affecting the productive system. When needed, the shadow application is switched to become the new productive system, minimizing downtime.

Inventive Principle:
Principle #26Copying

2Reliability

If switch upgrade is performed in distributed system environment, then communication between modules can be maintained, but the upgrade procedure becomes more complex and time-consuming

Engineering Contradiction:
Improvecommunication continuityVSAvoidupgrade procedure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the distributed system into shadow components and productive components. The shadow application includes shadow versions of all necessary modules (e.g., shadow ERP system, shadow database, shadow technical system) that can be upgraded independently and in parallel, reducing the complexity of coordinating upgrades across the entire distributed system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a shadow system as an intermediary between the old productive system and the new system. This shadow intermediary handles communication and data transfer during the transition, allowing the upgrade to proceed without directly disrupting communication between distributed modules.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If shadow application is installed while productive system is running, then installation can be completed without interruption, but synchronization and switching require stopping both systems

Engineering Contradiction:
Improveinstallation continuityVSAvoidswitching downtime
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary synchronization of the shadow application with the productive system before the actual switch. Data and configuration are synchronized in advance while both systems can run, so that when the switch occurs, minimal adjustment is needed and downtime is reduced to the brief period required for the actual switching operation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8230416B2System, method and article of manufacture for using shadow installations of software modules during distributed system upgrade
Publication Date: 2012.07.24 SAP SE
  • US8230416B2 patent drawing
  • US8230416B2 patent drawing
  • US8230416B2 patent drawing

AI summary

A method, system and article of manufacture for upgrade of a software module executed in a distributed software computer system using shadow installations of software modules for minimum downtime. A first software module is executed on a first host and a second software module is executed on a second host, the two software modules in communication with each other. Target release of the first software module and a local release of the second software module are installed and deployed on the first host during the execution of the first software module. The first software module is switched to the target release in communication with the local release of the second software module. The communication with the second software module is reestablished after the upgrade.