Parallel Rollout Verification for Software Deployment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software deployment techniques face challenges in thoroughly testing updated versions in live production environments without impacting end users or incurring high resource costs, such as in blue-green deployments.

Innovation Solution

Implementing a system for parallel rollout verification processing, where the updated software version is deployed in a pilot mode alongside the legacy version in the same runtime environment. This allows for processing of live inputs and generation of validation data for comparison with the legacy version's results, enabling pre-rollout verification without disrupting live data transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If blue-green deployment is used to test updated software in production environment, then testing thoroughness is improved, but resource costs increase due to duplicate resources

Engineering Contradiction:
Improvetesting thoroughnessVSAvoidresource costs
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the testing function with the existing production runtime environment by implementing a shadow processing mode. Instead of maintaining separate blue and green environments, the updated software version (second version) runs in parallel within the same runtime environment as the legacy version (first version), sharing common infrastructure resources while maintaining independent processing capabilities.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent uses copying by creating shadow copies of processing requests to validate the updated software version. Real user requests are copied and processed by both the legacy and updated versions simultaneously, allowing validation of the new version against actual production data without requiring separate test data sets or duplicate user traffic.

Inventive Principle:
Principle #26Copying

2Measurement precision

If updated software version is deployed in production environment for testing, then validation accuracy is improved, but end user impact increases due to potential disruptions

Engineering Contradiction:
Improvevalidation accuracyVSAvoidend user impact
Core Design Contradiction:
Measurement precisionVSObject-affected harmful factors

Solution Approach 1:

The patent introduces an intermediary validation layer that sits between the updated software version and the actual user interaction. A shadow processing mode acts as the intermediary, where the updated version processes copies of real requests in the background without directly serving users. This allows validation accuracy using real production data while eliminating direct user impact from potential bugs or performance issues.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies preliminary action by performing validation processing before the updated software version is fully activated. The shadow processing validates the second version against real production requests and communication history in advance, ensuring validation accuracy is achieved through real data while preventing end user impact by keeping the legacy version active until validation is complete.

Inventive Principle:
Principle #10Preliminary action

3Ease of manufacture

If legacy version is deactivated before updating, then deployment simplicity is improved, but risk of deploying faulty updates increases

Engineering Contradiction:
Improvedeployment simplicityVSAvoidrisk of deploying faulty updates
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent applies preliminary action by running the updated software version in a shadow processing mode before full deployment activation. The second version processes copies of real requests and generates validation data that is compared against the legacy version's communication history in advance. This preliminary validation ensures faulty updates are detected before they reach production users, reducing risk while maintaining deployment simplicity through a structured rollout process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback by continuously comparing the validation data generated by the updated version against the communication history from the legacy version. This feedback mechanism allows the system to detect discrepancies or errors in the updated version before full deployment, reducing the risk of deploying faulty updates while maintaining a straightforward deployment process through automated validation.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12299430B2Parallel rollout verification processing for deploying updated software
Publication Date: 2025.05.13 CAPITAL ONE SERVICES LLC
  • US12299430B2 patent drawing
  • US12299430B2 patent drawing
  • US12299430B2 patent drawing

AI summary

In some implementations, a rollout component may deploy, in a pilot mode, an updated version of a software application in a runtime environment executing a legacy version of the software application. The rollout component may process requests in a request queue using the legacy version to generate processing results that are dispatched to a client interface and may process, using the updated version, copies of the requests processed by the legacy version. The rollout component may indicate whether the updated version passes one or more tests based on a comparison between the validation data generated by the updated version and processing results generated by the legacy version. The rollout component may switch the updated version from the pilot mode to a live mode based on the updated version passing the one or more tests.