RPA Driver Decoupling for Virtual Machine Automation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Automating user interface elements in virtual machine (VM) environments is challenging due to compatibility issues between different versions of robotic process automation (RPA) tools and VM applications, especially during runtime.

Innovation Solution

Decoupling drivers installed for VM application automation and loading the appropriate driver version for specific automation requests, enabling backward compatibility and native automation capabilities through remote runtime components and independent computing architecture protocols.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a single version of RPA tool is installed for VM automation, then the system structure is simple, but compatibility with different VM application versions is poor

Engineering Contradiction:
Improvecompatibility with different RPA tool versionsVSAvoidsystem structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system is segmented into multiple independent driver versions (e.g., driver v1, driver v2) that can be selectively loaded. Each driver version is compatible with specific RPA tool versions, allowing the system to handle multiple tool versions without requiring a complete system redesign. This segmentation enables version-specific automation while maintaining overall system simplicity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The automation system is designed with universal driver loading capability that can accommodate multiple RPA tool versions through a common interface. The system can dynamically load the appropriate driver version based on the RPA tool version being used, making the system universally compatible across different tool versions without requiring separate automation systems for each version.

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

2Reliability

If driver version is fixed for VM automation, then system stability is high, but compatibility with updated RPA tools deteriorates

Engineering Contradiction:
Improveautomation reliabilityVSAvoidcompatibility with RPA tool updates
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The driver loading mechanism is made dynamic rather than static. The system can dynamically select and load the appropriate driver version based on the RPA tool version being executed. This dynamic adaptation allows the system to maintain high reliability by using the correct driver version while simultaneously adapting to RPA tool updates without requiring system reconfiguration.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the driver version parameter based on the RPA tool version being used. When an RPA tool version is updated, the system adjusts the driver version parameter to match the compatible driver, ensuring both reliability and adaptability. This parameter-based approach allows flexible adaptation while maintaining stable automation operations.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If multiple driver versions are loaded simultaneously, then compatibility with different RPA tools is improved, but system complexity and resource usage increase

Engineering Contradiction:
Improvesupport for multiple RPA tool versionsVSAvoidnumber of driver instances
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

Instead of loading all driver versions simultaneously into memory, the system extracts and loads only the specific driver version needed for the current RPA tool execution. This on-demand extraction approach maintains support for multiple RPA tool versions while minimizing the number of active driver instances, thereby reducing system resource usage and complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If driver loading is coupled with RPA tool version, then version compatibility is ensured, but flexibility for version upgrades is reduced

Engineering Contradiction:
Improveversion compatibilityVSAvoidflexibility for version upgrades
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system performs preliminary driver version selection and loading based on the detected RPA tool version before automation execution begins. This preliminary action ensures version compatibility is established upfront, while the modular driver architecture allows easy upgrades by simply replacing the driver version parameter without affecting the core automation logic, thus maintaining both reliability and operational flexibility.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11453131B2Method and apparatus for remote native automation decoupling
Publication Date: 2022.09.27 UIPATH INC
  • US11453131B2 patent drawing
  • US11453131B2 patent drawing
  • US11453131B2 patent drawing

AI summary

A computing device for compatibility in robotic process automation (RPA) includes a memory that includes a plurality of RPA tool driver versions, and a processor communicatively coupled with the memory. Upon the processor receiving a request for a first RPA tool driver version of the plurality of RPA tool driver versions, the processor loads the first RPA tool version for processing.