IP Library Granted Patent US 11,429,433
Granted Patent B2
US 11,429,433 · App. 16/430,460 · Granted Aug 30, 2022

Process discovery and automatic robotic scripts generation for distributed computing resources

Inventors: Ravi Ramamurthy (Bangalore, IN); Ramgopal M. Cillanki (Bangalore, IN); Satyanarayana V. V. Kondamuri (Bangalore, IN)
Assignee: EPIANCE SOFTWARE PVT. LTD.
G06F9/4881G06F8/70G06F9/451G06F9/5027
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,429,433
App. No.
16/430,460
Granted
Aug 30, 2022
Kind
B2
Abstract

Techniques for process discovery and automatic generation of robotic scripts for distributed computing resources are disclosed. In one embodiment, at least one automatable process step associated with an activity performed while interacting with at least one application may be determined. The at least one automatable process step may be segregated into multiple tasks based on parallel executable tasks and sequentially executable tasks. Different types of distributed computing resources may be determined to execute the multiple tasks based on the segregation. A modified process flow corresponding to the at least one automatable process step may be automatically generated based on the segregated multiple tasks and the different types of the distributed computing resources. Further, a robotic script based on the modified flow of the at least one automatable process step may be automatically generated. The robotic script may be executed to perform the activity.

Claims (66)

1. A processor-implemented method, comprising:

capturing a plurality of process steps performed while interacting with at least one application running on a computing system, wherein the plurality of process steps corresponds to graphical user interface interactions carried out while performing an activity;

determining at least one automatable process step associated with the activity from the plurality of process steps;

segregating the at least one automatable process step into multiple tasks based on parallel executable tasks and sequentially executable tasks, wherein the segregated multiple tasks are to indicate a communication pattern between the parallel executable tasks and the sequentially executable tasks with data sharing:

determining different types of distributed computing resources to execute the multiple tasks based on the segregation, wherein the distributed computing resources executing the parallel executable tasks and the sequentially executable tasks are enabled to share the data;

automatically generating a modified process flow corresponding to the at least one automatable process step based on the segregated multiple tasks and the different types of the distributed computing resources, wherein the modified process flow includes multiple paths between the parallel executable tasks and the sequentially executable tasks with the data sharing, and wherein the parallel executable tasks in different paths can be executed in parallel based on the communication pattern; and

generating a software robot to automate a process of performing the activity associated with the at least one application based on the modified process flow of the at least one automatable process step.

2. The method of claim 1 , further comprising:

determining at least one manual process step associated with the activity; and

determining one or more locations for user interactions to perform the at least one manual process step while executing the software robot.

3. The method of claim 1 , wherein the distributed computing resources comprise physical computing resources, virtual computing resources, or a combination thereof.

4. The method of claim 1 , wherein determining the different types of the distributed computing resources comprises assigning different types of the distributed computing resources for executing the tasks.

5. The method of claim 1 , wherein determining the different types of the distributed computing resources comprises determining a role of each of the tasks.

6. The method of claim 5 , further comprising executing the software robot by dynamically selecting the distributed computing resources for executing the tasks based on the role of each of the tasks.

7. The method of claim 1 , further comprising:

providing a first graphical user interface to receive input data corresponding to the activity performed while interacting with the at least one application; and

generating one or more links between fields of the first graphical user interface and fields of a second graphical user interface corresponding to the at least one application.

8. The method of claim 1 , further comprising generating a data validation form when the activity comprises partial automatable process steps.

9. The method of claim 1 , further comprising:

enabling to alter the modified process flow; and

generating an altered software robot based on received alteration.

10. The method of claim 1 , further comprising executing the software robot by:

storing the software robot in a repository; and

scheduling execution of the software robot to perform the activity.

11. The method of claim 1 , further comprising:

executing the software robot to automate the process of performing the activity by mimicking the graphical user interface interactions.

12. A computing system comprising:

at least one processor;

memory coupled to the at least one processor;

a visual collaboration network designer in the memory and configured to be executed by the at least one processor, the visual collaboration network designer is to:

capture a plurality of process steps performed while interacting with at least one application running on the computing system, wherein the plurality of process steps corresponds to graphical user interface interactions carried out while performing an activity;

generate a process workflow with variations and process metrics based on the plurality of process steps;

generate a process documentation corresponding to the process workflow; and

determine at least one automatable process step associated with the activity based on the process documentation;

a collaboration network script generator in the memory and configured to be executed by the at least one processor, the collaboration network script generator is to:

segregate the at least one automatable process step into multiple tasks based on parallel executable tasks and sequentially executable tasks, wherein the segregated multiple tasks are to indicate a communication pattern between the parallel executable tasks and the sequentially executable tasks with data sharing:

determine different types of distributed computing resources to execute the multiple tasks based on the segregation, wherein the distributed computing resources executing the parallel executable tasks and the sequentially executable tasks are enabled to share the data:

automatically generate a modified process flow corresponding to the at least one automatable process step based on the segregated multiple tasks and the different types of the distributed computing resources, wherein the modified process flow includes multiple paths between the parallel executable tasks and the sequentially executable tasks with the data sharing, and wherein the parallel executable tasks in different paths can be executed in parallel based on the communication pattern: and

generate a software robot based on the modified process flow of the at least one automatable process step; and

a collaboration network execution engine in the memory and configured to be executed by the at least one processor, the collaboration network execution engine is to execute the software robot to automate a process of performing the activity associated with the at least one application running on the computing system.

13. The computing system of claim 12 , wherein the visual collaboration network designer is to receive the plurality of process steps associated with the activity by observing a user performing the plurality of process steps.

14. The computing system of claim 12 , wherein the visual collaboration network designer is to determine at least one manual process step associated with the activity and the collaboration network script generator is to determine one or more locations for user interactions to perform the at least one manual process step while executing the software robot.

15. The computing system of claim 12 , wherein the distributed computing resources comprise physical computing resources, virtual computing resources, or a combination thereof.

16. The computing system of claim 12 , wherein the collaboration network script generator is to:

store the software robot in a repository; and

schedule the execution of the software robot to perform the activity.

17. A non-transitory machine-readable storage medium encoded with instructions that, when executed by a processor, cause the processor to:

capture a plurality of process steps performed while interacting with at least one application running on a computing system, wherein the plurality of process steps corresponds to graphical user interface interactions carried out while performing an activity;

determine at least one automatable process step associated with the activity from the plurality of process steps;

segregate the at least one automatable process step into multiple tasks based on parallel executable tasks and sequentially executable tasks, wherein the segregated multiple tasks are to indicate a communication pattern between the parallel executable tasks and the sequentially executable tasks with data sharing;

determine different types of distributed computing resources to execute the multiple tasks based on the segregation, wherein the distributed computing resources executing the parallel executable tasks and the sequentially executable tasks are enabled to share the data;

automatically generate a modified process flow corresponding to the at least one automatable process step based on the segregated multiple tasks and the different types of the distributed computing resources, wherein the modified process flow includes multiple paths between the parallel executable tasks and the sequentially executable tasks with the data sharing, and wherein the parallel executable tasks in different paths can be executed in parallel based on the communication pattern; and

generate a software robot to automate a process of performing the activity associated with the at least one application based on the modified process flow of the at least one automatable process step.

18. The non-transitory machine-readable storage medium of claim 17 , further comprising instructions that, when executed by the processor, cause the processor to:

determine at least one manual process step associated with the activity; and

determine one or more locations for user interactions to perform the at least one manual process step while executing the software robot.

19. The non-transitory machine-readable storage medium of claim 17 , wherein the distributed computing resources comprise physical computing resources, virtual computing resources, or a combination thereof.

20. The non-transitory machine-readable storage medium of claim 17 , further comprising instructions that, when executed by the processor, cause the processor to:

provide a first graphical user interface to receive input data corresponding to the activity performed while interacting with the at least one application; and

generate one or more links between fields of the first graphical user interface and fields of a second graphical user interface corresponding to the at least one application.

21. The non-transitory machine-readable storage medium of claim 17 , further comprising instructions to:

execute the software robot by:

storing the software robot in a repository; and

scheduling the execution of the software robot to perform the activity.

22. The non-transitory machine-readable storage medium of claim 17 , further comprising instructions that, when executed by the processor, cause the processor to:

executing the software robot to automate the process of performing the activity by mimicking the graphical user interface interactions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2019
From: RAMAMURTHY, RAVI; CILLANKI, RAMGOPAL M.; KONDAMURI, SATYANARAYANA V.V.
To: EPIANCE SOFTWARE PVT. LTD.
Reel/Frame 049355/0144 →
Priority Claims (1)
IN 201941001939 · Jan 16, 2019 · national
Continuity (1)
Related Publication 20200233707A1 · Jul 23, 2020
Cited By (4)
US 12,339,960 US 12,346,846 US 12,536,028 US 12,705,433