Configurable Mock Services for Load Test Environments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current load test environments for software infrastructures, particularly for video game systems, are costly and inefficient due to the need to simulate full-scale multi-pipeline environments, which can be computationally expensive and fail to accurately replicate real-world errors, and also struggle with simulating proprietary services without disclosed specifications.

Innovation Solution

A load test environment utilizing mock services with configurable components that systematically introduce errors and failures, allowing for the simulation of real-world conditions at a lower cost by approximating operative functionality and reducing the need to replicate service dependencies, using real and mock services interchangeably.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If full-scale multi-pipeline environments are simulated in load test environments, then production environment resilience can be validated, but computational costs increase significantly

Engineering Contradiction:
Improvevalidation accuracyVSAvoidcomputational cost
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the service dependency graph into multiple layers (first layer, second layer, etc.) where each layer contains services at a specific distance from the client. This segmentation allows the load test environment to selectively replicate only certain service layers rather than the entire production environment, reducing computational costs while maintaining validation accuracy for critical paths.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by making different service layers have different replication qualities. Services in the first layer (direct dependencies) are fully replicated with high fidelity, while services in subsequent layers may be partially replicated or represented through mocks. This allows the system to focus computational resources on the most critical service interactions while reducing costs for less critical ones.

Inventive Principle:
Principle #3Local quality

2Device complexity

If proprietary services without disclosed specifications are simulated, then complete service dependency replication is achieved, but simulation accuracy decreases

Engineering Contradiction:
Improveservice dependency replicationVSAvoidsimulation accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent introduces mock services as intermediary components that represent proprietary services without requiring their actual specifications. These mock services are configured with configurable parameters that approximate the behavior of the real proprietary services, allowing the load test environment to proceed with validation without needing access to the actual proprietary service implementations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent uses configurable parameters in mock services to approximate the behavior of proprietary services. By adjusting these parameters (such as response times, error rates, and data formats), the mock services can be tuned to closely mimic the operational characteristics of the real services they represent, maintaining simulation accuracy without requiring access to proprietary specifications.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If real-world errors and failures are systematically introduced, then software infrastructure resilience is validated, but test environment complexity increases

Engineering Contradiction:
Improveresilience validationVSAvoidtest environment complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic error injection where the type, frequency, and severity of errors introduced in the load test environment can be configured and adjusted. This allows the test environment to systematically introduce various failure scenarios (such as service unavailability, slow responses, and data corruption) while maintaining a manageable level of complexity through programmable control of error conditions.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10628294B2Mock services for software infrastructures
Publication Date: 2020.04.21 ELECTRONIC ARTS INC
  • US10628294B2 patent drawing
  • US10628294B2 patent drawing
  • US10628294B2 patent drawing

AI summary

A load test environment computing system may include an electronic data store configured to store a configuration tool to generate a software infrastructure and an error analysis utility and one or more hardware processors configured to execute specific computer-executable instructions to cause the configuration tool to generate a configurable mock service. The configurable mock service may include an executable file and a service component of the mock service. The executable file may identify a hardware property of the service component, an operative functionality of the service component, and an electronic communication between the configurable mock service and at least one of: a client device, a database, or an external service. The one or more hardware processors may further be configured to execute specific computer-executable instructions to cause the configuration tool configuration tool to simulate the software infrastructure.