Cloud Test Manager Dynamic Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional system testing faces inefficiencies due to resource competition among threads and processes, and static hardware configurations that are not adaptable to dynamic changes in testing requirements, leading to suboptimal use of computing resources.

Innovation Solution

A method and system that uses a test manager to load setup scripts, calculate computing resource needs, and reserve resources in a virtual data center through a data center infrastructure manager, allowing for dynamic resource allocation and reuse of computing environments across tests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple sets of statically configured computing hardware are used for parallel testing, then testing parallelism is improved, but resource flexibility and adaptability deteriorate

Engineering Contradiction:
Improvetesting parallelismVSAvoidresource flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic resource allocation by replacing static hardware configurations with virtualized computing resources that can be dynamically provisioned, scaled, and reconfigured based on testing requirements. The system allows resources to be allocated on-demand and released after use, enabling both parallel testing and flexibility.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments physical computing resources into virtualized units that can be independently allocated and managed. By dividing hardware resources into virtual machines or containers, the system achieves fine-grained control over resource allocation, enabling parallel testing while maintaining adaptability through independent resource management.

Inventive Principle:
Principle #1Segmentation

2Productivity

If more computing resources are allocated for distributed testing, then testing capacity is improved, but resource waste increases due to static configuration

Engineering Contradiction:
Improvetesting capacityVSAvoidresource waste
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent implements resource recovery by releasing computing resources back to the pool after test execution completes. This allows previously allocated resources to be reused for subsequent testing tasks, eliminating waste from static configurations and improving overall resource utilization efficiency.

Inventive Principle:
Principle #34Discarding and recovering

Solution Approach 2:

The patent creates a universal resource pool where computing resources can serve multiple testing purposes and different test suites. A single resource pool supports diverse testing requirements, allowing the same hardware to be dynamically repurposed for different testing scenarios, thereby reducing total resource requirements.

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

3Ease of manufacture

If static hardware configuration is used, then setup simplicity is improved, but adaptability to changing testing requirements deteriorates

Engineering Contradiction:
Improvesetup simplicityVSAvoidadaptability to changing requirements
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent performs preliminary resource provisioning by pre-configuring virtual resource pools and templates that can be quickly instantiated. This preliminary setup simplifies subsequent test deployments while maintaining adaptability, as resources are pre-prepared in flexible virtual formats rather than fixed hardware configurations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8949791B2Distributed software testing using cloud computing resources
Publication Date: 2015.02.03 VMWARE INC
  • US8949791B2 patent drawing
  • US8949791B2 patent drawing
  • US8949791B2 patent drawing

AI summary

A method of creating computing environment in a cloud computing environment for execution of a test is disclosed. The method includes loading a setup script from a script store. The loading is performed by a test manager that is in communication with the script store. The test manager checks if there are more setup scripts to be loaded. If yes, the remaining setup scripts are loaded by the test manager. The test manager then calculates computing resources needed to run all tests as coded in all loaded scripts. The test manager then attempts to reserve needed computing resources in a virtual data center using a data center infrastructure manager.