RPA Driver Decoupling for Virtual Machine Automation
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Reliability
If driver version is fixed for VM automation, then system stability is high, but compatibility with updated RPA tools deteriorates
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.
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.
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
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.
4Reliability
If driver loading is coupled with RPA tool version, then version compatibility is ensured, but flexibility for version upgrades is reduced
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.
Data Source
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.


