US20170173784A1 - System and method for monitoring, deploying, and tracking autonomous software robots - Google Patents
System and method for monitoring, deploying, and tracking autonomous software robots Download PDFInfo
- Publication number
- US20170173784A1 US20170173784A1 US15/071,718 US201615071718A US2017173784A1 US 20170173784 A1 US20170173784 A1 US 20170173784A1 US 201615071718 A US201615071718 A US 201615071718A US 2017173784 A1 US2017173784 A1 US 2017173784A1
- Authority
- US
- United States
- Prior art keywords
- software
- robotic
- agents
- computer implemented
- deployed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/0084—Programme-controlled manipulators comprising a plurality of manipulators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Definitions
- the disclosure generally relates to functioning and monitoring of robots, and more particularly, to closely monitor, administer, and track an autonomous software robots.
- a software agent is a computer program that acts for a user or other program in a relationship of agency.
- robot software is a set of coded commands that inform a mechanical device and electronic system the kind of tasks to perform and automate.
- Several software systems and frameworks have been proposed to make programming robots easier, Generally, robot software is used to perform tasks and automate tasks to be performed.
- the software architecture of a robotics system comprises of various software components used to design and operate the software. All programming methods rely on software architecture as a method of organizing a software system since it not only provides communication support but is also a critical component in hardware and software interfaces. Although, autonomous mobile robots and the software controlling them have steadily evolved in both complexity and functionality in recent years, there still continues to be several challenges.
- HTML is more suitable as a publishing format, rather than a data exchange format.
- Programs that access websites, that are normally accessed by human users sitting at a computer using a web browser, are called ‘software robots’, ‘robots’, ‘software agents’, ‘agents’, ‘programs’ and so on.
- Programs that access (for example) web sites appear from a network and data presentation format, to the web site as an end user would.
- the web site or web application receives and sends information exactly as it would to a real human user, but instead the information is received, processed, and responded by a piece of software running on a computer somewhere on the Internet, rather than a live human user using a web browser.
- the web site, or web application does not know it is communicating with anything other than a web browser, when in fact it is communicating with a piece of custom written software.
- a computer implemented system for implementing intelligent and proactive process automation among a plurality of software robotic agents comprises of a robotic console module that is configured to continuously check and monitor a plurality of deployed software robotic agents in a network.
- the system further comprises of a graphical user interface that is configured to provide an interactive dashboard to view at least one of real time data and historical data to deploy a plurality of the software robotic agents, a heartbeat service module configured to verify and maintain secure connectivity with at least one client in said network on a pre-defined interval.
- the system furthermore comprises, an archive service module configured to maintain and process the historical data of the deployed software robotic agents and a communication service module configured to dynamically check a target environment in the deployed software.
- a computer program product for implementing intelligent and proactive process automation among a plurality of software robotic agents.
- the computer program product comprises of a robotic console module that is configured to continuously check and monitor a plurality of deployed software robotic agents in a network.
- the computer program product further comprises of a graphical user interface that is configured to provide an interactive dashboard to view at least one of real time data and historical data to deploy a plurality of the software robotic agents, a heartbeat service module configured to verify and maintain secure connectivity with at least one client in said network on a pre-defined interval.
- the computer program product comprises, an archive service module configured to maintain and process the historical data of the deployed software robotic agents and a communication service module configured to dynamically check a target environment in the deployed software.
- FIG. 1 illustrates a functional block diagram of a Software Robotic processing system 100 , in accordance with some embodiments from the present disclosure
- FIG. 2 illustrates a detailed component diagram of the software robotic processing system 100 , in accordance with some embodiments from the present disclosure
- FIG. 3 is a flow diagram depicting the process steps in the software robotic processing system 100 , in accordance with some embodiments from the present disclosure.
- FIGS. 4 a, 4 b, 4 c and 4 d depict individual screenshots at different stages of an automation in an execution process, in accordance with some embodiments from the present disclosure.
- FIGS. 1 through 4 c where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and/or method.
- FIG. 1 illustrates a functional block diagram of a Software Robotic processing system 100 , according to the embodiments as disclosed herein.
- the Software Robotic processing system 100 comprises of a server 102 .
- the server 102 in turn comprises of a Dashboard 104 , a Process communicator 106 , and a Database 110 .
- the server 102 is capable of supporting multiple robotic applications and users.
- the server 102 may be accessed by multiple users through one or more peer devices such as a client device (not shown in Figure) or applications residing on the client device.
- the client device may include, but are not limited to, a portable computer, a multi-touch surface, a personal digital assistant, a handheld device, and a workstation.
- the client device is communicatively coupled to the server 102 through a network (not shown in Figure).
- a network not shown in Figure.
- the network may be a wireless network, a wired network or a combination thereof.
- the network can be implemented as one of the different types of networks, such as intranet, local area network (LAN), wide area network (WAN), the internet, and the like.
- the network may either be a dedicated network or a shared network.
- the shared network represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), and the like, to communicate with one another.
- HTTP Hypertext Transfer Protocol
- TCP/IP Transmission Control Protocol/Internet Protocol
- WAP Wireless Application Protocol
- the network may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like.
- the server 102 may include at least one processor, an input/output (I/O) interface, and a memory.
- the at least one processor may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions.
- the at least one processor is configured to fetch and execute computer-readable instructions stored in the memory.
- the I/O interface may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like.
- the I/O interface may allow the Software robotic processing system 100 to interact with a user directly or through the client devices. Further, the I/O interface may enable the intermediary server to communicate with other computing devices, such as web servers and external data servers (not shown).
- the I/O interface may facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite.
- the I/O interface may include one or more ports for connecting a number of devices to one another or to another server.
- the memory may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
- volatile memory such as static random access memory (SRAM) and dynamic random access memory (DRAM)
- DRAM dynamic random access memory
- non-volatile memory such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
- the client device may include one or more processors, one or more memories, and a display.
- the one or more processors may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries and/or any devices that manipulate signals based on operational instructions.
- the one or more processors are configured to fetch and execute computer-readable instructions stored in the one or more memories.
- the display may include a LCD display, a LED display and other displays that are obvious to persons skilled in the art.
- the one or more processors are configured to fetch and execute computer-readable instructions stored in the one or more memories.
- the one or more memories may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
- volatile memory such as static random access memory (SRAM) and dynamic random access memory (DRAM)
- DRAM dynamic random access memory
- non-volatile memory such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
- the Software Robotic processing system 100 is configured to function as a process administrator by using a monitoring capability on a plurality of software robots deployed on a floor along with a live view dashboard.
- the Software Robotic processing system 100 is configured to work as a robotic component to monitor a plurality of software robots in action, when such software robots are deployed in the network.
- the Software Robotic processing system 100 is capable of performing a plurality of activities such as capability to listen to client devices (machines/node) on the deployed processes and current execution processes.
- the dashboard 104 is capable of providing real time status of the different processes in execution on the specific nodes. By viewing history of execution of a plurality of processes on a node, the same history can be extended to provide an analytics layer to determine the efficiency of process automation.
- the Software Robotic Processing system 100 further comprises a communication service module that is configured to check and monitor a target environment of the surroundings in which it is implemented.
- the Software Robotic processing system 100 provides administration capability of a plurality of starting or stopping instances of at least one process on a configured node. Administration capability is also provided for tracking of the nodes (machines) connected in the network and to configure the processes to execute on these nodes.
- An alert window in the Dashboard 104 provides a first view or initial view on the process robots, when process robots either abort or terminate.
- the dashboard 104 is also configured to view current (live) and historical (data) of robot execution either through a process view or client node view.
- the process scheduler 206 is configured to process a mechanism in order to capture the execution schedule for a process (daily, weekly, and/or at periodic intervals) along with the ability to execute a plurality of instructions based on the defined schedule.
- FIG. 2 illustrates a detailed component diagram of the software robotic processing system 100 , according to the embodiments as disclosed herein.
- the dashboard 104 is predominantly configured to work as a GUI suite and is used to view the live and historical data on the execution of a plurality of processes/robots in a particular client node.
- the dashboard 104 also includes ability to administer (start and/or stop a process in execution). Initially a suite of services are deployed at the Server 102 and client machine such as:
- the Heart beat service module 204 verifies connection or connectivity with a plurality of nodes and updates the database 110 accordingly.
- the heart beat service module 204 is deployed at the server end and accordingly establishes communication with each client node (using a DNS hostname) and procures its heart beat at periodic intervals.
- the duration of intervals can be configured according to user's convenience.
- the process scheduler 206 is configured to facilitate the database 110 and schedule a plurality of processes against connected nodes with suitable status based on the scheduling information captured.
- the process scheduler is deployed at the server 102 end and can be user configured to run at a specific time.
- the archiver 208 is configured to maintain daily or periodic history of information related to execution of processes and copies in order to archive tables.
- the archiver 208 is executed at the server 102 end and can be scheduled to run at a specific time which is user configurable.
- the process communication module 210 is configured to work as a listener, monitor, and instructor at the server 102 .
- the process communication module 210 listens to a plurality of messages sent by a client self-hosted WCF about execution of processes and software robos.
- the process communication module 210 monitors execution and updates database 110 on a regular basis. Further, the process communication module 210 deployed at the server 102 end instructs a plurality of nodes to either start or stop processes on nodes, based on instructions sent by an Administrator through the GUI.
- the indicator 212 is configured to continuously run at the server 102 and checks for periodic processes in progress since a long time and updates status as Timed out, in case the process is not responding.
- the client bridge 112 a is hosted at the client end to ensure that each process communicates with the client self-host 114 by providing a bridge between client and server 102 in order to send and receive messages about execution of processes and robots.
- the process executer 116 is capable of initiating process execution at client workstations based on daily scheduling information received at the server 102 end.
- the process executer 116 starts the robotic application on a plurality of user devices based on a schedule maintained at the server 102 .
- a management server which can be access by one or plurality of consoles, for monitoring and controlling the automated application processes is provided, such that one or more users may more preferably adjust the deployment or maintenance (or any other application process), or at least optionally view deployment progress.
- Such management server preferably enables the software product to be deployed, managed, verified, monitored and tracked from a single location, using the console.
- an human user/operator obtains an excel file containing the different accounts that need to be created for a plurality of customers along with relevant customer details.
- the user initially opens an account opening app (legacy app) and then the operator manually copies the details in the Software Robotic processing system 100 .
- the Software Robotic processing system 100 then takes control and create the accounts. This is considered as a repeatable task,
- the robot mimics the entire operation after training, thus reducing dependency on humans.
- the robot is also trained to detect discrepancies and is configured to discontinue/abort the application in such cases.
- the human user gets a message on his laptop/desk top or any suitable computing device in case of such discrepancies such as system restart or network outage.
- Customization parameters can be defined for each such script. Such parameters may include for example, whether to run it automatically or after an approval of the user to a pop-up question, and specific times (for example, only weekends or only evenings) that a facilitating script is active, etc.
- this relation When a relation appears between information seen in one screen and information that is entered in a later screen, this relation is stored in a long term memory. After a few iterations going through the same screens, if the relation is repeated a predetermined number of times, the software application uses this relation to suggest to the operator to automatically fill in the fields associated with this relation. The number of times an action is repeated to constitute a reason to suggest that action in the future, may be customized by a user. Also, it may be defined that there is no contradicting behavior which should be considered.
- Another example would be the case where password verification is required. This can be a time consuming process where sometimes both intranet user id and password are to be filled taking up about 20 seconds of the user time. In principle, this problem can be resolved by preparing appropriate facilitating script that would identify the verification screen and fill in the necessary information. However, this would mean that the operator would have to know and install such a feature. Using an adaptive approach, this would not be necessary. The system of the present application would identify automatically the correlation between password verification request and appropriate information being filled. After several cases, user verification would be done automatically.
- FIG. 3 is a flow chart illustrating a control flow for an example method 300 for performing automated data processing, according to an example embodiment.
- the software robotic processing system 100 prompts a user set up at step 302 .
- the user set up can be initiated for a plurality of users at one go.
- an user set up initiation is done for master data processing.
- a plurality of robotic clients are defined based on the comprehensiveness and nature of the process/applications taking place.
- the robots begin with the process of administering different robotic processes at step 310 .
- a plurality of robotic processes can be monitored by the user for any un-natural events. The monitoring can happen round the clock or at certain pre-defined intervals.
- a metrics dashboard is a server hosted website providing real-time robotic process data that manages process transaction volumes, robotic arm statistics, and transaction queue management capabilities for the process supervisor.
- a user entitlements profile provides an administrator the capability to manage users, and their role based entitlements.
- a master maintenance profile gives administrator the privileges to add and update users, regions, processes, country, holidays, relationships, and so on.
- the administrator can configure robotic processes, execution cycles (auto or manual) and the individual robotic arms.
- a plurality of robotic client nodes provide privileges to the administrator to configure clients where certain robotic processes can execute and enable two way communication between a console tower and a console tower client.
- a Console controller comprises a GUI suite (including a process dashboard) that allows the user to view, monitor, and administer the robotic process execution on different robotic client nodes.
- CT user entitlements provides administrator the capability to manage business users and their role based entitlements.
- a process communicator 106 (not shown in Fig) of the Software Robotic Processing System 100 functions as a Windows communication network (WCF) based communication component that resides on the console tower server to perform a secure communication between the server and robotic client.
- WCF Windows communication network
- console tower services function as a set of systemic services that assist in archival, scheduling, start and stop of process services and so on.
- the client communicator functions by providing WCF services at robotic client in order to communicate with the process communicator 106 at the console tower.
- the process executor manages process execution at the robotic client, based on daily/periodic scheduling information bunt at the server.
- the present application overcomes these drawbacks of the background art by providing a system and method for process automation of one or more applications in a computer network having a plurality of computers, in which the one or more application components are preferably interdependent, and optionally and more preferably hierarchical, in terms of their operation.
- the present application overcomes the difficulties of the operator to invoke the automated process by preferably having two design phases in at least some embodiments.
- the user that is preferably a person that is specialized in the application, designs a plurality, and more preferably all, of the possible processes and modulates them into the relevant logical components.
- Such a process may optionally, for example, install certain software or monitor a certain activity.
- Such logical components may optionally include but are not limited to for example web-based services or a Data Base.
- the output of this phase is preferably used by the operator who maps the logical components into the actual environment, for example into the specific enterprise or Data Center.
- This phase optionally maps each logical component into at least one physical server and each logical connection between components into a physical network.
- a computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored.
- a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein.
- the term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, Le., be non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
Abstract
Description
- This U.S. patent application claims priority under 35 U.S.C. §119 to: India Application No. 4816/MUM/2015, filed on Dec. 22, 2015. The entire contents of the aforementioned application are incorporated herein by reference.
- The disclosure generally relates to functioning and monitoring of robots, and more particularly, to closely monitor, administer, and track an autonomous software robots.
- In the field of computing, a software agent is a computer program that acts for a user or other program in a relationship of agency. Particularly, in robotics, robot software is a set of coded commands that inform a mechanical device and electronic system the kind of tasks to perform and automate. Several software systems and frameworks have been proposed to make programming robots easier, Generally, robot software is used to perform tasks and automate tasks to be performed.
- The software architecture of a robotics system comprises of various software components used to design and operate the software. All programming methods rely on software architecture as a method of organizing a software system since it not only provides communication support but is also a critical component in hardware and software interfaces. Although, autonomous mobile robots and the software controlling them have steadily evolved in both complexity and functionality in recent years, there still continues to be several challenges.
- Generally machine to machine communications over the internet using HTTP and HTML is problematic. The fundamental reason for that is that HTML is more suitable as a publishing format, rather than a data exchange format. Programs that access websites, that are normally accessed by human users sitting at a computer using a web browser, are called ‘software robots’, ‘robots’, ‘software agents’, ‘agents’, ‘programs’ and so on.
- Programs that access (for example) web sites appear from a network and data presentation format, to the web site as an end user would. The web site or web application receives and sends information exactly as it would to a real human user, but instead the information is received, processed, and responded by a piece of software running on a computer somewhere on the Internet, rather than a live human user using a web browser. In these applications, the web site, or web application does not know it is communicating with anything other than a web browser, when in fact it is communicating with a piece of custom written software.
- The inventors here have recognized several technical problems with such conventional systems, as explained below. Currently, majority of robotic process automation applications are written by software programmers. Conventional techniques do not focus on automatically facilitate software robots that can manipulate existing websites and web applications. The net effect of this facilitation is a dramatic reduction in the amount of time necessary to implement machine to machine communications that utilize existing web sites and web applications.
- Currently, there are several autonomous robots and robotic softwares that are developed to navigate or work as mobile robots to either perform household or industrial chores. However, there seems to be a lack of concurrent and holistic development of software to automate repetitive processes. There is an unmet need for a system and a method for process automation of multi-tier applications in a computer network having a plurality of computers. Additionally, there is also an unmet need for such application in process automation in which a plurality of application components on a plurality of computers have inter-connected functionality.
- Embodiments of the present disclosure present technological improvements as solutions to one or more of the above-mentioned technical problems recognized by the inventors in conventional systems. For example, in one embodiment, a computer implemented system for implementing intelligent and proactive process automation among a plurality of software robotic agents. The system comprises of a robotic console module that is configured to continuously check and monitor a plurality of deployed software robotic agents in a network. The system further comprises of a graphical user interface that is configured to provide an interactive dashboard to view at least one of real time data and historical data to deploy a plurality of the software robotic agents, a heartbeat service module configured to verify and maintain secure connectivity with at least one client in said network on a pre-defined interval. The system furthermore comprises, an archive service module configured to maintain and process the historical data of the deployed software robotic agents and a communication service module configured to dynamically check a target environment in the deployed software.
- In another embodiment, a computer program product for implementing intelligent and proactive process automation among a plurality of software robotic agents is disclosed. The computer program product comprises of a robotic console module that is configured to continuously check and monitor a plurality of deployed software robotic agents in a network. The computer program product further comprises of a graphical user interface that is configured to provide an interactive dashboard to view at least one of real time data and historical data to deploy a plurality of the software robotic agents, a heartbeat service module configured to verify and maintain secure connectivity with at least one client in said network on a pre-defined interval. Furthermore, the computer program product comprises, an archive service module configured to maintain and process the historical data of the deployed software robotic agents and a communication service module configured to dynamically check a target environment in the deployed software.
- It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
- The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed embodiments:
-
FIG. 1 illustrates a functional block diagram of a SoftwareRobotic processing system 100, in accordance with some embodiments from the present disclosure; -
FIG. 2 illustrates a detailed component diagram of the softwarerobotic processing system 100, in accordance with some embodiments from the present disclosure; -
FIG. 3 is a flow diagram depicting the process steps in the softwarerobotic processing system 100, in accordance with some embodiments from the present disclosure; and -
FIGS. 4 a, 4 b, 4 c and 4 d depict individual screenshots at different stages of an automation in an execution process, in accordance with some embodiments from the present disclosure. - Exemplary embodiments are described with reference to the accompanying drawings, In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. Wherever convenient, the same reference numbers are used throughout the drawings to refer to the same or like parts, While examples and features of disclosed principles are described herein, modifications, adaptations, and other implementations are possible without departing from the spirit and scope of the disclosed embodiments. It is intended that the following detailed description be considered as exemplary only, with the true scope and spirit being indicated by the following claims.
- Referring now to the drawings, and more particularly to
FIGS. 1 through 4 c, where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and/or method. -
FIG. 1 illustrates a functional block diagram of a SoftwareRobotic processing system 100, according to the embodiments as disclosed herein. As depicted inFIG. 1 , the SoftwareRobotic processing system 100 comprises of aserver 102. Theserver 102 in turn comprises of aDashboard 104, aProcess communicator 106, and aDatabase 110. Although the present disclosure is explained by considering a scenario that theserver 102 is implemented as an application. It may be understood that theserver 102 is capable of supporting multiple robotic applications and users. It will be understood that theserver 102 may be accessed by multiple users through one or more peer devices such as a client device (not shown in Figure) or applications residing on the client device. In one example, the client device may include, but are not limited to, a portable computer, a multi-touch surface, a personal digital assistant, a handheld device, and a workstation. The client device is communicatively coupled to theserver 102 through a network (not shown in Figure). In an embodiment, there are two sets of devices that can be implemented such as 1) where the robotic applications are executed and 2) where the end user can be used to monitor the execution of the applications running at a given point of time. - In one implementation, the network may be a wireless network, a wired network or a combination thereof. The network can be implemented as one of the different types of networks, such as intranet, local area network (LAN), wide area network (WAN), the internet, and the like. The network may either be a dedicated network or a shared network. The shared network represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), and the like, to communicate with one another. Further the network may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like.
- In one embodiment, the
server 102 may include at least one processor, an input/output (I/O) interface, and a memory. The at least one processor may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the at least one processor is configured to fetch and execute computer-readable instructions stored in the memory. - The I/O interface may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The I/O interface may allow the Software
robotic processing system 100 to interact with a user directly or through the client devices. Further, the I/O interface may enable the intermediary server to communicate with other computing devices, such as web servers and external data servers (not shown). The I/O interface may facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite. The I/O interface may include one or more ports for connecting a number of devices to one another or to another server. - The memory may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
- In one embodiment, the client device may include one or more processors, one or more memories, and a display. The one or more processors may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the one or more processors are configured to fetch and execute computer-readable instructions stored in the one or more memories.
- The display may include a LCD display, a LED display and other displays that are obvious to persons skilled in the art.
- Among other capabilities, the one or more processors are configured to fetch and execute computer-readable instructions stored in the one or more memories. The one or more memories may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
- Referring back to
FIG. 1 , the SoftwareRobotic processing system 100 is configured to function as a process administrator by using a monitoring capability on a plurality of software robots deployed on a floor along with a live view dashboard. In essence, the SoftwareRobotic processing system 100 is configured to work as a robotic component to monitor a plurality of software robots in action, when such software robots are deployed in the network. - In a preferred embodiment, the Software
Robotic processing system 100 is capable of performing a plurality of activities such as capability to listen to client devices (machines/node) on the deployed processes and current execution processes. Thedashboard 104 is capable of providing real time status of the different processes in execution on the specific nodes. By viewing history of execution of a plurality of processes on a node, the same history can be extended to provide an analytics layer to determine the efficiency of process automation. The SoftwareRobotic Processing system 100 further comprises a communication service module that is configured to check and monitor a target environment of the surroundings in which it is implemented. - Further, the Software
Robotic processing system 100 provides administration capability of a plurality of starting or stopping instances of at least one process on a configured node. Administration capability is also provided for tracking of the nodes (machines) connected in the network and to configure the processes to execute on these nodes. An alert window in theDashboard 104 provides a first view or initial view on the process robots, when process robots either abort or terminate. - The
dashboard 104 is also configured to view current (live) and historical (data) of robot execution either through a process view or client node view. In an embodiment, theprocess scheduler 206 is configured to process a mechanism in order to capture the execution schedule for a process (daily, weekly, and/or at periodic intervals) along with the ability to execute a plurality of instructions based on the defined schedule. -
FIG. 2 illustrates a detailed component diagram of the softwarerobotic processing system 100, according to the embodiments as disclosed herein. Thedashboard 104 is predominantly configured to work as a GUI suite and is used to view the live and historical data on the execution of a plurality of processes/robots in a particular client node. Thedashboard 104 also includes ability to administer (start and/or stop a process in execution). Initially a suite of services are deployed at theServer 102 and client machine such as: -
- a) An heart beat service to verify and identify the connectivity with a plurality of client nodes in the network on a pre-defined period interval
- b) An archive service adapted to archive a periodic or daily execution of the processes/software robots and accordingly maintain a historical record of execution of the plurality of processes/robots for a specific period.
- c) A plurality of communication service components that facilitate a secured communication channel between end points such as server station and client desktop station. Initially, communication is initiated on event happenings (such as start of a process, completion and/or termination of the process).
- d) A ‘client bridge service’ that is deployed at the client node through which a plurality of individual process (robots) communicate to the
server 102. This service provides loose coupling between the plurality of software (process) robots and the communication service at the client desktop.
- In an embodiment, the Heart beat service module 204 verifies connection or connectivity with a plurality of nodes and updates the
database 110 accordingly. The heart beat service module 204 is deployed at the server end and accordingly establishes communication with each client node (using a DNS hostname) and procures its heart beat at periodic intervals. The duration of intervals can be configured according to user's convenience. - The
process scheduler 206 is configured to facilitate thedatabase 110 and schedule a plurality of processes against connected nodes with suitable status based on the scheduling information captured. The process scheduler is deployed at theserver 102 end and can be user configured to run at a specific time. - The
archiver 208 is configured to maintain daily or periodic history of information related to execution of processes and copies in order to archive tables. Thearchiver 208 is executed at theserver 102 end and can be scheduled to run at a specific time which is user configurable. - The
process communication module 210 is configured to work as a listener, monitor, and instructor at theserver 102. Theprocess communication module 210 listens to a plurality of messages sent by a client self-hosted WCF about execution of processes and software robos. Theprocess communication module 210 monitors execution andupdates database 110 on a regular basis. Further, theprocess communication module 210 deployed at theserver 102 end instructs a plurality of nodes to either start or stop processes on nodes, based on instructions sent by an Administrator through the GUI. - The
indicator 212 is configured to continuously run at theserver 102 and checks for periodic processes in progress since a long time and updates status as Timed out, in case the process is not responding. - In an embodiment, the
client bridge 112 a is hosted at the client end to ensure that each process communicates with the client self-host 114 by providing a bridge between client andserver 102 in order to send and receive messages about execution of processes and robots. - The
process executer 116 is capable of initiating process execution at client workstations based on daily scheduling information received at theserver 102 end. The process executer 116 starts the robotic application on a plurality of user devices based on a schedule maintained at theserver 102. - According to preferred embodiments of the present invention, a management server, which can be access by one or plurality of consoles, for monitoring and controlling the automated application processes is provided, such that one or more users may more preferably adjust the deployment or maintenance (or any other application process), or at least optionally view deployment progress. Such management server preferably enables the software product to be deployed, managed, verified, monitored and tracked from a single location, using the console.
- In an operational scenario, an human user/operator obtains an excel file containing the different accounts that need to be created for a plurality of customers along with relevant customer details. The user initially opens an account opening app (legacy app) and then the operator manually copies the details in the Software
Robotic processing system 100. The SoftwareRobotic processing system 100 then takes control and create the accounts. This is considered as a repeatable task, The robot mimics the entire operation after training, thus reducing dependency on humans. The robot is also trained to detect discrepancies and is configured to discontinue/abort the application in such cases. The human user gets a message on his laptop/desk top or any suitable computing device in case of such discrepancies such as system restart or network outage. - Customization parameters can be defined for each such script. Such parameters may include for example, whether to run it automatically or after an approval of the user to a pop-up question, and specific times (for example, only weekends or only evenings) that a facilitating script is active, etc.
- As an example of the automated learning of relations, suppose the operator works on a business process involving a web application and a mainframe system. The operator starts with the web application in which they get a customer's details and then they need to go into the mainframe system and perform some action for the customer (in this example, change the address of the customer.). A way to improve this manual business process is to have the system automatically learn the relations between the current set and the active screen.
- When a relation appears between information seen in one screen and information that is entered in a later screen, this relation is stored in a long term memory. After a few iterations going through the same screens, if the relation is repeated a predetermined number of times, the software application uses this relation to suggest to the operator to automatically fill in the fields associated with this relation. The number of times an action is repeated to constitute a reason to suggest that action in the future, may be customized by a user. Also, it may be defined that there is no contradicting behavior which should be considered.
- Another example would be the case where password verification is required. This can be a time consuming process where sometimes both intranet user id and password are to be filled taking up about 20 seconds of the user time. In principle, this problem can be resolved by preparing appropriate facilitating script that would identify the verification screen and fill in the necessary information. However, this would mean that the operator would have to know and install such a feature. Using an adaptive approach, this would not be necessary. The system of the present application would identify automatically the correlation between password verification request and appropriate information being filled. After several cases, user verification would be done automatically.
-
FIG. 3 is a flow chart illustrating a control flow for anexample method 300 for performing automated data processing, according to an example embodiment. In afirst step 302, initially the softwarerobotic processing system 100 prompts a user set up atstep 302. The user set up can be initiated for a plurality of users at one go. Atstep 304, an user set up initiation is done for master data processing. Atstep 306, a plurality of robotic clients are defined based on the comprehensiveness and nature of the process/applications taking place. Atstep 308 once the robotic clients/robos are set up for multiple processes, then the robots begin with the process of administering different robotic processes atstep 310. Finally, at step 312 a plurality of robotic processes can be monitored by the user for any un-natural events. The monitoring can happen round the clock or at certain pre-defined intervals. - In the embodiments of the present application, a metrics dashboard is a server hosted website providing real-time robotic process data that manages process transaction volumes, robotic arm statistics, and transaction queue management capabilities for the process supervisor. A user entitlements profile provides an administrator the capability to manage users, and their role based entitlements. A master maintenance profile gives administrator the privileges to add and update users, regions, processes, country, holidays, relationships, and so on.
- The administrator can configure robotic processes, execution cycles (auto or manual) and the individual robotic arms. A plurality of robotic client nodes provide privileges to the administrator to configure clients where certain robotic processes can execute and enable two way communication between a console tower and a console tower client.
- Extension and Agile Implementation of Robo Console App/Software
Robotic Processing System 100 - A Console controller comprises a GUI suite (including a process dashboard) that allows the user to view, monitor, and administer the robotic process execution on different robotic client nodes.
- CT user entitlements provides administrator the capability to manage business users and their role based entitlements. Further, a process communicator 106 (not shown in Fig) of the Software
Robotic Processing System 100 functions as a Windows communication network (WCF) based communication component that resides on the console tower server to perform a secure communication between the server and robotic client. - Furthermore, the console tower services function as a set of systemic services that assist in archival, scheduling, start and stop of process services and so on. The client communicator functions by providing WCF services at robotic client in order to communicate with the
process communicator 106 at the console tower. Further, the process executor manages process execution at the robotic client, based on daily/periodic scheduling information bunt at the server. - While various disclosed embodiments have been described above, it should be understood that they have been presented by way of example only, and not limitation. Numerous changes to the subject matter disclosed herein can be made in accordance with this Disclosure without departing from the spirit or scope of this Disclosure. In addition, while a particular feature may have been disclosed with respect to only one of several implementations, such feature may be combined with one or more other features of the other implementations as may be desired and advantageous for any given or particular application.
- Among the multiple benefits of the present application and without wishing to be limited by a single list, the technical advantages of the invention are:
-
- a) Automates maintenance activities on the deployed software
- b) Automates control activities on the deployed software
- c) Reduces manual operations
- d) Bridges gap between application teams and operation teams
- e) Verifies application functionality after deployment
- f) Executing jobs or commands on the computer on which agents are installed
- The present application overcomes these drawbacks of the background art by providing a system and method for process automation of one or more applications in a computer network having a plurality of computers, in which the one or more application components are preferably interdependent, and optionally and more preferably hierarchical, in terms of their operation.
- The present application overcomes the difficulties of the operator to invoke the automated process by preferably having two design phases in at least some embodiments. In the first phase the user, that is preferably a person that is specialized in the application, designs a plurality, and more preferably all, of the possible processes and modulates them into the relevant logical components. Such a process may optionally, for example, install certain software or monitor a certain activity. Such logical components may optionally include but are not limited to for example web-based services or a Data Base. The output of this phase is preferably used by the operator who maps the logical components into the actual environment, for example into the specific enterprise or Data Center. This phase optionally maps each logical component into at least one physical server and each logical connection between components into a physical network.
- The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments. Also, the words “comprising,” “having,” “containing,” and “including,” and other similar forms are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise.
- Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, Le., be non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
- It is intended that the disclosure and examples be considered as exemplary only, with a true scope and spirit of disclosed embodiments being indicated by the following claims.
Claims (12)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN4816/MUM/2015 | 2015-12-22 | ||
IN4816MU2015 | 2015-12-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20170173784A1 true US20170173784A1 (en) | 2017-06-22 |
US10307906B2 US10307906B2 (en) | 2019-06-04 |
Family
ID=55527826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/071,718 Active 2036-11-13 US10307906B2 (en) | 2015-12-22 | 2016-03-16 | System and method for providing a proactive process automation among a plurality of software robotic agents in a network |
Country Status (3)
Country | Link |
---|---|
US (1) | US10307906B2 (en) |
EP (1) | EP3185124A1 (en) |
AU (1) | AU2016201660B2 (en) |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109471435A (en) * | 2018-11-09 | 2019-03-15 | 福州大学 | A kind of polyisocyanate structure Mobile Robot Control System |
US20190180746A1 (en) * | 2017-12-07 | 2019-06-13 | Accenture Global Solutions Limited | Artificial intelligence and robotic process automation for automated data management |
US20190286736A1 (en) * | 2018-03-19 | 2019-09-19 | Accenture Global Solutions Limited | Resource-efficient record processing in unified automation platforms for robotic process automation |
JP2019159556A (en) * | 2018-03-09 | 2019-09-19 | 株式会社日本総合研究所 | RPA maintenance support device and RPA maintenance support program |
US10437984B2 (en) | 2017-10-26 | 2019-10-08 | Bank Of America Corporation | Authentication protocol elevation triggering system |
US10482232B2 (en) | 2017-08-16 | 2019-11-19 | Bank Of America Corporation | Robotic process automation using controller execution model |
US10606687B2 (en) | 2017-12-04 | 2020-03-31 | Bank Of America Corporation | Process automation action repository and assembler |
WO2020061699A1 (en) * | 2018-09-28 | 2020-04-02 | Element Ai Inc. | System and method for robotic agent management |
US10616280B2 (en) | 2017-10-25 | 2020-04-07 | Bank Of America Corporation | Network security system with cognitive engine for dynamic automation |
CN111208738A (en) * | 2020-01-17 | 2020-05-29 | 上海高仙自动化科技发展有限公司 | Controller, intelligent robot and intelligent robot system |
US10686684B2 (en) | 2017-11-02 | 2020-06-16 | Bank Of America Corporation | Individual application flow isotope tagging within a network infrastructure |
EP3699832A1 (en) * | 2019-02-19 | 2020-08-26 | Tata Consultancy Services Limited | Systems and methods for optimizing scheduling of non-preemptive tasks in multi-robotic environment |
CN111709701A (en) * | 2020-05-29 | 2020-09-25 | 北京艾陌时信息技术有限公司 | Robot office system |
US10802889B1 (en) | 2018-07-18 | 2020-10-13 | NTT DATA Services, LLC | Systems and methods of virtual resource monitoring for robotic processes |
US10802453B2 (en) | 2017-06-02 | 2020-10-13 | Bank Of America Corporation | Robotics process automation macro bot |
US10960548B2 (en) | 2017-11-21 | 2021-03-30 | Service Robotics & Technologies, Inc. | Map-based framework for the integration of robots and smart devices |
US10972954B2 (en) | 2017-11-03 | 2021-04-06 | Bank Of America Corporation | System for connection channel adaption using robotic automation |
US11016789B2 (en) | 2019-10-11 | 2021-05-25 | UiPath, Inc. | Robot browser embedding |
WO2021101616A1 (en) * | 2019-11-20 | 2021-05-27 | UiPath, Inc. | Scheduling robots for robotic process automation |
US11074063B2 (en) | 2019-09-10 | 2021-07-27 | International Business Machines Corporation | Automatic upgrade of robotic process automation using a computer |
US11132279B2 (en) | 2017-10-30 | 2021-09-28 | Bank Of America Corporation | Robotic process automation enabled file dissection for error diagnosis and correction |
US11232170B1 (en) | 2020-09-08 | 2022-01-25 | UiPath, Inc. | Application-specific graphical element detection |
US20220075508A1 (en) * | 2020-09-08 | 2022-03-10 | UiPath, Inc. | Graphical element detection using a combined series and delayed parallel execution unified target technique, a default graphical element detection technique, or both |
CN114356442A (en) * | 2021-12-22 | 2022-04-15 | 中核武汉核电运行技术股份有限公司 | Inspection system and method for distributed system of nuclear power plant software operation and maintenance |
US11625312B2 (en) | 2019-03-28 | 2023-04-11 | Bank Of America Corporation | System for continuous management and monitoring of robotic process automation bots |
US11915040B2 (en) | 2020-03-17 | 2024-02-27 | UiPath, Inc. | Scheduling and prioritizing RPA jobs based on user-defined priority |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CO2019008485A1 (en) * | 2019-08-02 | 2019-08-30 | Bancolombia S A | Methods for monitoring automated assistants |
US11351669B2 (en) | 2019-10-29 | 2022-06-07 | Kyndryl, Inc. | Robotic management for optimizing a number of robots |
CN110714800B (en) * | 2019-11-06 | 2021-07-02 | 天地(常州)自动化股份有限公司 | Coal mine multi-system ground safety alarm and control linkage method |
US11494713B2 (en) | 2020-08-28 | 2022-11-08 | UiPath, Inc. | Robotic process automation analytics platform |
US11592804B2 (en) * | 2020-10-14 | 2023-02-28 | UiPath, Inc. | Task automation by support robots for robotic process automation (RPA) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110153079A1 (en) * | 2009-12-18 | 2011-06-23 | Electronics And Telecommunication Research Institute | Apparatus and method for distributing and monitoring robot application and robot driven thereby |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2687523B1 (en) | 1992-02-18 | 1995-01-20 | Telediffusion Fse | MANAGEMENT OF AUDIOVISUAL PROGRAMS BROADCASTING. |
AU3975300A (en) * | 1999-03-31 | 2000-10-16 | British Telecommunications Public Limited Company | Distributed software system data analysis |
WO2005069890A2 (en) | 2004-01-15 | 2005-08-04 | Mega Robot, Inc. | System and method for reconfiguring an autonomous robot |
US8095238B2 (en) | 2006-11-29 | 2012-01-10 | Irobot Corporation | Robot development platform |
CN201156186Y (en) | 2007-06-11 | 2008-11-26 | 陈宇 | Expandable general-purpose robot development platform |
CA2849739C (en) * | 2011-09-22 | 2018-09-04 | Aethon, Inc. | Monitoring, diagnostic and tracking tool for autonomous mobile robots |
-
2016
- 2016-03-10 EP EP16159610.1A patent/EP3185124A1/en not_active Ceased
- 2016-03-16 US US15/071,718 patent/US10307906B2/en active Active
- 2016-03-16 AU AU2016201660A patent/AU2016201660B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110153079A1 (en) * | 2009-12-18 | 2011-06-23 | Electronics And Telecommunication Research Institute | Apparatus and method for distributing and monitoring robot application and robot driven thereby |
Non-Patent Citations (1)
Title |
---|
Defense Advanced Research Projects Agency Information Processing Techniques Office, INTERNET PROTOCOL (DARPA INTERNET PROGRAM), RFC 791, pages 1-50; Published: September 1981 * |
Cited By (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11294342B2 (en) | 2017-06-02 | 2022-04-05 | Bank Of America Corporation | Robotics process automation macro bot |
US10802453B2 (en) | 2017-06-02 | 2020-10-13 | Bank Of America Corporation | Robotics process automation macro bot |
US10482232B2 (en) | 2017-08-16 | 2019-11-19 | Bank Of America Corporation | Robotic process automation using controller execution model |
US10783229B2 (en) | 2017-08-16 | 2020-09-22 | Bank Of America Corporation | Robotic process automation using controller execution model |
US10958691B2 (en) | 2017-10-25 | 2021-03-23 | Bank Of America Corporation | Network security system with cognitive engine for dynamic automation |
US10616280B2 (en) | 2017-10-25 | 2020-04-07 | Bank Of America Corporation | Network security system with cognitive engine for dynamic automation |
US10437984B2 (en) | 2017-10-26 | 2019-10-08 | Bank Of America Corporation | Authentication protocol elevation triggering system |
US11132279B2 (en) | 2017-10-30 | 2021-09-28 | Bank Of America Corporation | Robotic process automation enabled file dissection for error diagnosis and correction |
US10686684B2 (en) | 2017-11-02 | 2020-06-16 | Bank Of America Corporation | Individual application flow isotope tagging within a network infrastructure |
US10972954B2 (en) | 2017-11-03 | 2021-04-06 | Bank Of America Corporation | System for connection channel adaption using robotic automation |
US10960548B2 (en) | 2017-11-21 | 2021-03-30 | Service Robotics & Technologies, Inc. | Map-based framework for the integration of robots and smart devices |
US10606687B2 (en) | 2017-12-04 | 2020-03-31 | Bank Of America Corporation | Process automation action repository and assembler |
US11327828B2 (en) | 2017-12-04 | 2022-05-10 | Bank Of America Corporation | Process automation action repository and assembler |
US10452674B2 (en) * | 2017-12-07 | 2019-10-22 | Accenture Global Solutions Limited | Artificial intelligence and robotic process automation for automated data management |
US20190180746A1 (en) * | 2017-12-07 | 2019-06-13 | Accenture Global Solutions Limited | Artificial intelligence and robotic process automation for automated data management |
JP2019159556A (en) * | 2018-03-09 | 2019-09-19 | 株式会社日本総合研究所 | RPA maintenance support device and RPA maintenance support program |
JP7402957B2 (en) | 2018-03-09 | 2023-12-21 | 株式会社日本総合研究所 | RPA maintenance support device |
US20190286736A1 (en) * | 2018-03-19 | 2019-09-19 | Accenture Global Solutions Limited | Resource-efficient record processing in unified automation platforms for robotic process automation |
US10726045B2 (en) * | 2018-03-19 | 2020-07-28 | Accenture Global Solutions Limited | Resource-efficient record processing in unified automation platforms for robotic process automation |
US10802889B1 (en) | 2018-07-18 | 2020-10-13 | NTT DATA Services, LLC | Systems and methods of virtual resource monitoring for robotic processes |
AU2019348202B2 (en) * | 2018-09-28 | 2022-07-28 | Servicenow Canada Inc. | System and method for robotic agent management |
WO2020061699A1 (en) * | 2018-09-28 | 2020-04-02 | Element Ai Inc. | System and method for robotic agent management |
CN109471435A (en) * | 2018-11-09 | 2019-03-15 | 福州大学 | A kind of polyisocyanate structure Mobile Robot Control System |
EP3699832A1 (en) * | 2019-02-19 | 2020-08-26 | Tata Consultancy Services Limited | Systems and methods for optimizing scheduling of non-preemptive tasks in multi-robotic environment |
US11625312B2 (en) | 2019-03-28 | 2023-04-11 | Bank Of America Corporation | System for continuous management and monitoring of robotic process automation bots |
US11074063B2 (en) | 2019-09-10 | 2021-07-27 | International Business Machines Corporation | Automatic upgrade of robotic process automation using a computer |
US11016789B2 (en) | 2019-10-11 | 2021-05-25 | UiPath, Inc. | Robot browser embedding |
WO2021101616A1 (en) * | 2019-11-20 | 2021-05-27 | UiPath, Inc. | Scheduling robots for robotic process automation |
US11110601B2 (en) | 2019-11-20 | 2021-09-07 | UiPath, Inc. | Scheduling robots for robotic process automation |
CN111208738A (en) * | 2020-01-17 | 2020-05-29 | 上海高仙自动化科技发展有限公司 | Controller, intelligent robot and intelligent robot system |
US11915040B2 (en) | 2020-03-17 | 2024-02-27 | UiPath, Inc. | Scheduling and prioritizing RPA jobs based on user-defined priority |
CN111709701A (en) * | 2020-05-29 | 2020-09-25 | 北京艾陌时信息技术有限公司 | Robot office system |
US11507259B2 (en) * | 2020-09-08 | 2022-11-22 | UiPath, Inc. | Graphical element detection using a combined series and delayed parallel execution unified target technique, a default graphical element detection technique, or both |
US11281362B1 (en) | 2020-09-08 | 2022-03-22 | UiPath, Inc. | Graphical element detection using a combined series and delayed parallel execution unified target technique, a default graphical element detection technique, or both |
US20220075508A1 (en) * | 2020-09-08 | 2022-03-10 | UiPath, Inc. | Graphical element detection using a combined series and delayed parallel execution unified target technique, a default graphical element detection technique, or both |
US11232170B1 (en) | 2020-09-08 | 2022-01-25 | UiPath, Inc. | Application-specific graphical element detection |
CN114356442A (en) * | 2021-12-22 | 2022-04-15 | 中核武汉核电运行技术股份有限公司 | Inspection system and method for distributed system of nuclear power plant software operation and maintenance |
Also Published As
Publication number | Publication date |
---|---|
US10307906B2 (en) | 2019-06-04 |
AU2016201660A1 (en) | 2017-07-06 |
EP3185124A1 (en) | 2017-06-28 |
AU2016201660B2 (en) | 2021-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10307906B2 (en) | System and method for providing a proactive process automation among a plurality of software robotic agents in a network | |
US9189226B2 (en) | Software logistics protocols | |
US8225308B2 (en) | Managing software lifecycle | |
US11157396B2 (en) | Stateless self-sufficient test agents | |
CN107038089B (en) | Method and system for supporting high availability of orchestrated services | |
CN110546606A (en) | Tenant upgrade analysis | |
CN113228020B (en) | Scheduling robots for robot process automation | |
EP3019961B1 (en) | Cloud services load testing and analysis | |
US20120204144A1 (en) | Method for keeping a web session alive in a web application | |
US11650888B2 (en) | Workflow error handling for device driven management | |
US11226605B2 (en) | Provisioning of control layer applications for use in industrial control environments | |
EP2778925A2 (en) | Dashboard notifications on management console during a remote control session | |
US11474931B2 (en) | Debugging a cross-technology and cross-environment execution | |
US20200358648A1 (en) | Continuous monitoring of network devices during maintenance | |
JP2023544463A (en) | Enterprise process graph to represent RPA data | |
US20170011322A1 (en) | Business process managment | |
CN115885255A (en) | Universal platform for implementing RPA services on customer premises | |
US10680905B1 (en) | Application help desk | |
TWI826182B (en) | Cloud platform management system | |
US20230102809A1 (en) | Preconfigured robots for robotic process automation | |
US20230101948A1 (en) | Generation of rpa platform design components for configuring rpa platforms | |
US20220191167A1 (en) | Organizational modelling for routing rpa related services of an rpa cloud suite | |
Harrer et al. | A model-driven approach for monitoring ebBP BusinessTransactions | |
Stefanovic et al. | Monitoring and Data Protection | |
Scherrer et al. | Rollende Küche |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: TATA CONSULTANCY SERVICES LIMITED, INDIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHAH, RUCHI RAJAN;CHOUBEY, PREMA RAMESHCHANDRA;A R, SUBRAMANYAM;AND OTHERS;REEL/FRAME:038018/0431 Effective date: 20160212 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
AS | Assignment |
Owner name: TATA CONSULTANCY SERVICES LIMITED, INDIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CHANDARANA, BHAKTI CHANDULAL;REEL/FRAME:048787/0745 Effective date: 20190311 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |