# US 12,217,023 B2 · Unified digital automation platform combining business process management and robotic process automation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,217,023 B2
- Document ID: US12217023B2
- Status: Granted
- Kind: B2
- Application number: 18/145,492
- Filed: 2022-12-22
- Published: 2023-05-04
- Granted: 2025-02-04
- Earliest claimed: 2019-10-18
- Assignees: Rocket Software Technologies, Inc.
- Applicants: Rocket Software Technologies, Inc.
- Inventors: Narayanaswamy Viswanathan; Sathish Kumar Thangaraj; Raghav Sanjeev Nyapati
- Web page: https://patentgrep.com/patent/US12217023B2

## CPC

- G06F 8/30: Creation or generation of source code
- G06F 8/35: model driven
- G06F 8/60: Software deployment
- G06F 21/31: User authentication
- G06Q 10/06316: {Sequencing of tasks or work}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

Provided are methods and systems for combining business process management (BPM) and robotic process automation (RPA) into a unified BPM and RPA process. An example method commences with creating a BPM process flow. The BPM process flow can include one or more BPM models for executing BPM tasks. The method then proceeds with creating an RPA process flow. The RPA process flow can include one or more RPA models for executing the one or more RPA tasks. The method can further include linking the one or more RPA models to the BPM process flow. Thereafter, the method proceeds with creating an application package associated with the unified BPM and RPA process. The application package can include the one or more BPM models and the one or more RPA models. The method can further include exporting the application package for deployment.

## Claims

### Claim 1

A method for combining business process management (BPM) and robotic process automation (RPA) into a unified BPM and RPA process, the method comprising:
receiving a BPM process flow, the BPM process flow comprising one or more BPM models for executing one or more BPM tasks;
receiving an RPA process flow, the RPA process flow comprising one or more RPA models for executing one or more RPA tasks;
receiving, from a user, a selection of the one or more RPA tasks;
linking, in response to the selection, the one or more RPA models for executing the one or more RPA tasks with the BPM process flow;
creating an application package associated with the unified BPM and RPA process, the application package comprising the one or more BPM models and the one or more RPA models; and
exporting the application package for deployment.

### Claim 2 (depends on 1)

The method of claim 1, wherein the linking the one or more RPA models with the BPM process flow includes adding the one or more RPA tasks to the BPM process flow.

### Claim 3 (depends on 1)

The method of claim 1, further comprising executing the application package, wherein the executing the application package includes:
executing the one or more BPM tasks by a BPM process engine, wherein the BPM process engine executes the one or more BPM tasks based on the one or more BPM models.

### Claim 4 (depends on 3)

The method of claim 3, wherein the executing the application package further comprises:
triggering, by the BPM process engine, a call to an RPA process engine to instruct the RPA process engine to execute the one or more RPA tasks, wherein the RPA process engine executes the one or more RPA tasks based on the one or more RPA models to obtain an RPA output; and
providing the RPA output to the BPM process engine, wherein the BPM process engine consumes the RPA output as an input.

### Claim 5 (depends on 4)

The method of claim 4, wherein the execution of the one or more RPA tasks comprises:
providing, to a bot node, a command to execute the one or more RPA tasks; and
executing the one or more RPA tasks by the bot node based on the one or more RPA models to obtain the RPA output.

### Claim 6 (depends on 4)

The method of claim 4, wherein the BPM process engine is associated with a BPM processing environment; and
wherein the RPA process engine is associated with an RPA processing environment.

### Claim 7 (depends on 6)

The method of claim 6, wherein the BPM process flow and the RPA process flow are visualized via a single user interface.

### Claim 8 (depends on 7)

The method of claim 7, further comprising:
receiving user credentials from a user; and
based on the user credentials, authenticating the user both in the BPM processing environment and the RPA processing environment, wherein the user accesses both the BPM processing environment and the RPA processing environment via the single user interface.

### Claim 9 (depends on 8)

The method of claim 8, further comprising:
storing at least one of policies, rules, and authentication data in any of the BPM processing environment and the RPA processing environment; and
seamlessly passing the at least one of policies, rules, and authentication data between the BPM processing environment and the RPA processing environment.

### Claim 10

A system for combining business process management (BPM) and robotic process automation (RPA) into a unified BPM and RPA process, the system comprising:
an RPA process modeler stored in a memory configured to receive, from a user, a selection of one or more RPA tasks;
a BPM process modeler having a hardware processor configured to:
link, in response to the selection, one or more RPA models for executing the one or more RPA tasks with a BPM process flow; and
an application server configured to:
receive an application package associated with the unified BPM and RPA process, the application package comprising one or more BPM models and one or more RPA models.

### Claim 11 (depends on 10)

The system of claim 10, wherein the RPA process modeler is further configured to receive an RPA process flow, the RPA process flow comprising the one or more RPA models for executing the one or more RPA tasks; and
wherein the BPM process modeler having a hardware processor is further configured to:
receive the BPM process flow, the BPM process flow comprising one or more BPM models for executing one or more BPM tasks.

### Claim 12 (depends on 11)

The system of claim 11, wherein the linking the one or more RPA models with the BPM process flow includes adding the one or more RPA tasks to the BPM process flow.

### Claim 13 (depends on 11)

The system of claim 11, wherein the application server is further configured to export the application package for deployment and execute the application package, wherein the executing the application package includes:
executing the one or more BPM tasks by a BPM process engine, wherein the BPM process engine executes the one or more BPM tasks based on the one or more BPM models.

### Claim 14 (depends on 13)

The system of claim 13, wherein the BPM process engine is further configured to:
trigger a call to an RPA process engine to instruct the RPA process engine to execute the one or more RPA tasks,
wherein the RPA process engine is further configured to:
execute the one or more RPA tasks based on the one or more RPA models to provide an RPA output; and
provide the RPA output to the BPM process engine, wherein the BPM process engine consumes the RPA output as an input.

### Claim 15 (depends on 14)

The system of claim 14, wherein the RPA process engine executes the one or more RPA tasks by:
providing, to a bot node, a command to execute the one or more RPA tasks; and
executing the one or more RPA tasks by the bot node based on the one or more RPA models to obtain the RPA output.

### Claim 16 (depends on 14)

The system of claim 14, wherein the BPM process engine is associated with a BPM processing environment; and
wherein the RPA process engine is associated with an RPA processing environment.

### Claim 17 (depends on 16)

The system of claim 16, wherein the BPM process flow and the RPA process flow are visualized via a single user interface.

### Claim 18 (depends on 17)

The system of claim 17, wherein the application server is further configured to:
receive user credentials from a user; and
based on the user credentials, authenticate the user both in the BPM processing environment and the RPA processing environment, wherein the user accesses both the BPM processing environment and the RPA processing environment via the single user interface.

### Claim 19

A system for combining business process management (BPM) and robotic process automation (RPA) into a unified BPM and RPA process, the system comprising:
an RPA process modeler stored in a memory configured to receive an RPA process flow and to receive, from a user, a selection of one or more RPA tasks, the RPA process flow comprising one or more RPA models for executing the one or more RPA tasks; and
a BPM process modeler having a hardware processor configured to:
receive a BPM process flow, the BPM process flow comprising one or more BPM models for executing one or more BPM tasks; and
link, in response to the selection, the one or more RPA models for executing the one or more RPA tasks with the BPM process flow; and
an application server configured to:
receive an application package associated with the unified BPM and RPA process, the application package comprising the one or more BPM models and the one or more RPA models.

### Claim 20 (depends on 19)

The system of claim 19, wherein the BPM process modeler having a hardware processor is further configured to:
receive a BPM process flow, the BPM process flow comprising one or more BPM models for executing one or more BPM tasks;
wherein the BPM process modeler having a hardware processor is further configured to:
execute the application package, wherein the executing the application package includes:
executing the one or more BPM tasks by a BPM process engine, wherein the BPM process engine executes the one or more BPM tasks based on the one or more BPM models;
triggering, by the BPM process engine, a call to an RPA process engine to instruct the RPA process engine to execute the one or more RPA tasks, wherein the RPA process engine executes the one or more RPA tasks based on the one or more RPA models to provide an RPA output; and
providing the RPA output to the BPM process engine, wherein the BPM process engine consumes the RPA output as an input.
