Endpoint Software Update Automation Pipeline

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for updating software on managed devices lack adequate testing and validation, often resulting in broken devices and performance issues due to the disconnect between testing and deployment processes, especially when dealing with dissimilar devices.

Innovation Solution

A pipeline system that uses clones of managed devices in the form of virtual machines to test software updates before deployment, allowing for metadata-driven creation of VM clones, execution of change and test scripts, and automated validation, ensuring successful updates are pushed only after successful testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If software updates are deployed directly to production devices without prior testing, then deployment speed is improved, but device reliability deteriorates due to broken devices and performance issues

Engineering Contradiction:
Improvedeployment speedVSAvoiddevice reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by creating virtual machine clones of production devices and performing software update testing on these clones before deploying to actual production devices. This allows validation of software changes in a realistic environment without risking production device stability, thus maintaining both deployment speed and device reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by creating virtual machine clones that replicate production device configurations. These clones serve as testbeds for software updates, allowing the system to evaluate software impact on realistic device representations without affecting actual production devices, thereby resolving the contradiction between quick deployment and reliable operation.

Inventive Principle:
Principle #26Copying

2Reliability

If software updates are tested on virtual machine clones before deployment, then device reliability is improved, but deployment time increases due to additional testing steps

Engineering Contradiction:
Improvedevice reliabilityVSAvoiddeployment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies self-service by implementing automated testing workflows that automatically execute test scripts on virtual machine clones and evaluate results without manual intervention. The system autonomously determines whether software updates pass validation criteria, enabling rapid feedback and reducing the time overhead of testing while maintaining high device reliability.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent changes the testing parameter from manual evaluation to automated script-based validation. By transforming the testing process into an automated parameter-driven workflow, the system reduces the time required for validation while ensuring consistent and reliable testing outcomes, thus resolving the time-reliability contradiction.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If manual testing and validation processes are used, then testing thoroughness is improved, but labor intensity increases and user interruptions occur

Engineering Contradiction:
Improvetesting thoroughnessVSAvoidmanual effort
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The patent replaces manual mechanical testing processes with automated computational systems. Virtual machine clones are automatically provisioned, test scripts are executed without human intervention, and results are automatically evaluated. This substitution maintains thorough testing validation while eliminating manual labor and user interruptions, resolving the contradiction between testing precision and operational ease.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

4Adaptability or versatility

If software updates are tested on dissimilar devices, then adaptability is improved, but testing complexity increases due to device variability

Engineering Contradiction:
Improvedevice compatibilityVSAvoidtesting complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies universality by creating a standardized virtual machine cloning framework that can replicate multiple dissimilar device configurations through a unified process. The system uses metadata-driven cloning to automatically adapt to different device types, maintaining consistent testing procedures across diverse hardware platforms while managing complexity through standardization.

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

Solution Approach 2:

The patent manages device variability by changing the approach from manual configuration of each test device to automated parameter-driven cloning. Device-specific parameters are captured as metadata and automatically applied during virtual machine creation, allowing the system to handle dissimilar devices systematically without increasing operational complexity, thus resolving the adaptability-complexity contradiction.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20240362051A1Endpoint machine software change automation pipeline
Publication Date: 2024.10.31 DELL PROD LP
  • US20240362051A1 patent drawing
  • US20240362051A1 patent drawing

AI summary

One example method includes creating a virtual machine clone of a physical endpoint device, pushing a change script and a test script to the virtual machine clone, causing the change script to be executed on the virtual machine clone, causing the test script to be executed on the virtual machine clone, and correcting any problems identified by execution of the test script, and pushing the change script to the physical endpoint device, and causing the change script to be executed on the physical endpoint device.