Dynamic Client Allocation for Software Testing Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional software program testing methods require writing and maintaining separate code and using different frameworks for various tests, which consumes substantial time and resources, and restrict the number of clients that can participate, limiting test scenarios.

Innovation Solution

The approach involves automatically allocating clients based on workload for software program testing, enabling multi-modal testing with a single configurable test code that can accommodate different test scenarios, such as functionality, performance, stress, and scalability modes, and dynamically determining client allocation based on the testing environment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate code and different frameworks are used for various tests, then test coverage is improved, but time and resource consumption increase substantially

Engineering Contradiction:
Improvetest coverageVSAvoidtime and resource consumption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements a universal testing framework that can perform multiple types of tests (functional, performance, stress, scalability) using a single configurable test code. The framework accepts different test scenarios as parameters and executes them through a common infrastructure, eliminating the need for separate codebases for each test type while maintaining comprehensive test coverage

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

Solution Approach 2:

The testing framework utilizes parameter changes to switch between different test modes and scenarios. By modifying configuration parameters rather than changing the underlying code structure, the system can adapt to various test requirements dynamically, reducing the time and resources needed for test setup and execution

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If a predetermined fixed number of clients is specified for each test, then test configuration is simplified, but adaptability to different test scenarios is reduced

Engineering Contradiction:
Improvetest configurationVSAvoidadaptability to test scenarios
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic client allocation where the number of clients is not fixed but determined automatically based on the workload requirements of each test scenario. The framework calculates the appropriate client count dynamically during test execution, allowing the same testing infrastructure to adapt to different test scenarios without manual reconfiguration

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The testing framework performs self-service by automatically determining and allocating the appropriate number of clients based on workload analysis. The system evaluates test requirements and autonomously configures the testing environment, eliminating the need for manual intervention while maintaining ease of operation

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9183119B2Automatically allocating clients for software program testing
Publication Date: 2015.11.10 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9183119B2 patent drawing
  • US9183119B2 patent drawing
  • US9183119B2 patent drawing

AI summary

Techniques are described herein that are capable of automatically allocating clients for testing a software program. For instance, a number of the clients that are to be allocated for the testing may be determined based on a workload that is to be imposed by the clients during execution of the testing. For example, the number of the clients may be a minimum number of the clients that is capable of accommodating the workload. In accordance with this example, the minimum number of the clients may be allocated in a targeted environment so that the test may be performed on those clients. Additional clients may be allocated along with the minimum number of the clients in the targeted environment to accommodate excess workload.