Dynamic Request Routing for Legacy and New Software Coexistence

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Legacy and new software systems often lack interoperability, leading to errors, data corruption, and reduced efficiency when communicating with the same backend servers, especially during transitions, which complicates migration and increases costs due to the need for separate servers.

Innovation Solution

A system that dynamically determines whether a request is for legacy or new software in real-time, allowing endpoints to be grouped for processing by both systems, enabling concurrent hosting and reducing the need for mass migration through distributed network architecture and memory storage modules.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate servers are used for legacy and new software systems, then system interoperability and reliability are improved, but device complexity and cost increase

Engineering Contradiction:
Improvesystem interoperabilityVSAvoidserver infrastructure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges legacy and new software systems onto a single server infrastructure, eliminating the need for separate servers. The system dynamically routes requests to appropriate software versions, achieving cost reduction and simplified infrastructure while maintaining interoperability through unified hosting.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The server system is designed to universally host multiple software versions simultaneously. The dynamic request routing mechanism enables a single server to function as both legacy system host and new system host, adapting to different software requirements without dedicated infrastructure for each.

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

2Device complexity

If legacy and new systems share the same server, then device complexity and cost are reduced, but data corruption and communication errors increase

Engineering Contradiction:
Improveserver infrastructureVSAvoiddata integrity
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent segments the server infrastructure into isolated environments for legacy and new software systems. Each software version operates in its own controlled space with dedicated resource allocation, preventing data corruption and communication errors while sharing the physical server hardware.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The dynamic request routing system acts as an intermediary between legacy and new software systems. It manages communication protocols, data formats, and request routing to ensure compatible interactions between systems with different data structures and communication methods, preventing data corruption.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If dynamic request routing is implemented, then productivity and migration speed are improved, but device complexity increases

Engineering Contradiction:
Improvemigration speedVSAvoidsoftware architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic request routing that automatically directs requests to the appropriate software version based on real-time conditions. This dynamic allocation enables rapid user migration from legacy to new systems without manual intervention, significantly improving productivity while the underlying architecture remains manageable through automated decision-making algorithms.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10713037B2Systems and methods for concurrently hosting legacy and new systems
Publication Date: 2020.07.14 WALMART APOLLO LLC
  • US10713037B2 patent drawing
  • US10713037B2 patent drawing
  • US10713037B2 patent drawing

AI summary

Various embodiments include a system including one or more processing modules and one or more non-transitory storage modules storing computing instructions configured to run on the one or more processing modules and perform acts of: grouping one or more endpoints into endpoint groups such that each endpoint group of the endpoint groups can be processed by both a legacy software and a new software; receiving a request from a user, the request comprising the one or more endpoints; upon receiving the request, automatically and dynamically determining in real-time whether the request is a legacy software request for the legacy software or a new software request for the new software; and automatically either: processing the request using the legacy software when the automatically and dynamically determining in real-time determines that the request is the legacy software request; or processing the request using the new software when the automatically and dynamically determining in real-time determines that the request is the new software request. Other embodiments are disclosed herein.