JP2023025792A - Information processing program, information processing method, and information processing device - Google Patents
Information processing program, information processing method, and information processing device Download PDFInfo
- Publication number
- JP2023025792A JP2023025792A JP2021131147A JP2021131147A JP2023025792A JP 2023025792 A JP2023025792 A JP 2023025792A JP 2021131147 A JP2021131147 A JP 2021131147A JP 2021131147 A JP2021131147 A JP 2021131147A JP 2023025792 A JP2023025792 A JP 2023025792A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- crawler
- execution
- information
- processing
- 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.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、情報処理プログラム、情報処理方法および情報処理装置に関する。 The present invention relates to an information processing program, an information processing method, and an information processing apparatus.
RPA(Robotic Process Automation)は、ソフトウェア型のロボット(RPAロボット)を用いた業務プロセスの自動化技術であり、業務効率化や労働力不足の対応策として注目されている。例えば、従来コンピュータに対して行われていたユーザの操作を、そのコンピュータ上で動作するRPAロボットに覚え込ませることで、ユーザの操作を自動化できる。 RPA (Robotic Process Automation) is a technology for automating business processes using software-type robots (RPA robots), and is attracting attention as a measure to improve business efficiency and address labor shortages. For example, a user's operation that has been conventionally performed on a computer can be automated by having an RPA robot operating on the computer memorize the user's operation.
また、RPAシステムの保守に関しては、次のような提案がある。例えば、ユーザ端末に入力された情報をRPAサーバが受信してその情報を処理する構成を有する次のようなRPAシステムが提案されている。このRPAシステムでは、RPAサーバが、操作内容保持部に規定される操作を実行してエラーが発生した場合、エラーが生じた操作の対象となっているWebページなどのリソースを取得して解析することで、リソースに対する変更の有無を判定する。また、RPA保守支援サーバが、クライアントコンピュータのログデータベースからRPAソフトウェアの処理結果を示すログデータを取得し、このログデータに基づいてアプリケーションの変更内容を示すメンテナンス情報を出力するシステムも提案されている。 In addition, regarding the maintenance of the RPA system, there are the following proposals. For example, the following RPA system has been proposed, which has a configuration in which an RPA server receives information input to a user terminal and processes the information. In this RPA system, when an error occurs when an RPA server executes an operation specified in an operation content holding unit, it acquires and analyzes resources such as a web page that is the target of the operation in which the error occurred. By doing so, it is determined whether or not there is a change to the resource. A system has also been proposed in which an RPA maintenance support server acquires log data indicating the processing results of RPA software from a log database of a client computer, and outputs maintenance information indicating application changes based on this log data. .
RPAロボットにより自動化する対象の業務の例として、他社製アプリケーションに対する入力操作や、社外Webサイトに対する入力操作がある。しかし、これらの他社製アプリケーションや社外Webサイトの仕様変更が行われると、RPAロボットの実行エラーが発生する場合があり、その場合には業務が停止してしまう可能性がある。他社製アプリケーションや社外Webサイトの仕様変更を利用者が事前に知ることは難しく、仕様変更に伴うRPAロボットの実行エラーの発生を防止することは容易ではないという問題がある。 Examples of tasks to be automated by the RPA robot include input operations for applications made by other companies and input operations for external websites. However, if the specifications of these third-party applications or external websites are changed, an execution error may occur in the RPA robot, and in that case, there is a possibility that the work will be stopped. There is a problem that it is difficult for users to know in advance the specification changes of applications made by other companies and websites outside the company, and it is not easy to prevent the occurrence of execution errors in RPA robots due to specification changes.
1つの側面では、本発明は、操作対象の仕様変更を検知可能にする情報をRPAロボットの非実行時に取得できる情報処理プログラム、情報処理方法および情報処理装置を提供することを目的とする。 In one aspect, an object of the present invention is to provide an information processing program, an information processing method, and an information processing apparatus capable of acquiring information that enables detection of a specification change of an operation target when an RPA robot is not executed.
1つの案では、コンピュータに、RPAロボットが操作対象に対して実行する操作の少なくとも一部を実行する操作処理を、RPAロボットが実行されない時間帯に実行し、操作処理において、操作対象に対する操作の実行エラーが発生した場合に、実行エラーの内容を示すエラー情報を収集し、収集されたエラー情報を所定の送信先装置に送信する、処理を実行させる情報処理プログラムが提供される。 In one proposal, the computer executes operation processing for executing at least a part of the operation that the RPA robot performs on the operation target during a time period when the RPA robot is not executed, and in the operation processing, the operation on the operation target is performed. Provided is an information processing program that, when an execution error occurs, collects error information indicating the content of the execution error and transmits the collected error information to a predetermined destination device.
また、1つの案では、上記の情報処理プログラムに基づく処理と同様の処理をコンピュータが実行する情報処理方法が提供される。
さらに、1つの案では、上記の情報処理プログラムに基づく処理と同様の処理を実行する情報処理装置が提供される。
In one proposal, an information processing method is provided in which a computer executes processing similar to the processing based on the information processing program described above.
Furthermore, one proposal provides an information processing apparatus that executes the same processing as the processing based on the above information processing program.
1つの側面では、操作対象の仕様変更を検知可能にする情報をRPAロボットの非実行時に取得できる。 In one aspect, information can be obtained when the RPA robot is not running that makes it possible to detect specification changes of the manipulated object.
以下、本発明の実施の形態について図面を参照して説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る情報処理システムの構成例および処理例を示す図である。図1に示す情報処理システムは、情報処理装置1,2と管理装置3を含む。
BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[First embodiment]
FIG. 1 is a diagram illustrating a configuration example and a processing example of an information processing system according to the first embodiment. The information processing system shown in FIG. 1 includes
情報処理装置1は、RPAロボット11を実行する。RPAロボット11は、操作対象4に対する操作を自動実行するソフトウェアロボットである。操作対象4は、例えば、アプリケーションやWebサーバなどである。操作対象4がアプリケーションの場合、このアプリケーションは情報処理装置1の内部で実行されてもよい。
The
ここで、操作対象4の仕様変更が予期せずに発生する場合がある。例えば、操作対象4が他社製のアプリケーションや社外Webサーバである場合、RPAロボット11の運用管理者は、操作対象4の仕様変更を事前に認識することが難しい。このため、操作対象4の仕様変更が予期せずに発生したことにより、RPAロボット11を用いた業務中においてRPAロボット11の操作の実行エラーが発生する場合がある。この場合、業務が停止してしまう可能性がある。
Here, there are cases where the specifications of the
そこで、本実施の形態では、情報処理装置2が、操作対象4の仕様変更を検知可能にする情報を取得するための処理を、業務時間外に実行する。
情報処理装置2は、処理部20を備える。処理部20は、例えば、プロセッサとして実現される。処理部20は、以下のような処理を実行する。なお、以下のステップS1,S2の処理は、情報収集用のRPAロボット21の動作によって実行されてもよい。
Therefore, in the present embodiment, the
The
処理部20は、RPAロボット11が操作対象4に対して実行する操作の少なくとも一部を実行する(ステップS1)。この操作処理では、例えば、RPAロボット11による操作対象4への操作のうち、データの登録、データの更新、データの削除の各操作の実行がスキップされ、それ以外の操作が実行される。あるいは、操作処理では、RPAロボット11の実行時において操作対象4に入力するために利用される入力データとは別の入力データを用いて、RPAロボット11によるすべての操作が実行されてもよい。
The
処理部20は、このような操作処理を、RPAロボット11が実行されない時間帯に実行する。なお、処理部20による操作対象4がアプリケーションである場合、このアプリケーションは情報処理装置1,2の両方において実行されていてもよい。
The
処理部20は、上記の操作処理において、操作対象4に対する操作の実行エラーが発生した場合、この実行エラーの内容を示すエラー情報を収集し、収集されたエラー情報を所定の送信先装置に送信する(ステップS2)。本実施の形態では、収集されたエラー情報は管理装置3に送信されるものとする。また、エラー情報としては、例えば、実行エラーが発生した操作を示す情報や、エラー発生時における操作画面の画像データなどが収集される。
In the operation process described above, when an operation execution error occurs with respect to the
このようにして収集されたエラー情報を運用管理者が解析することで、運用管理者は、操作対象4の仕様変更を事前に認識し、それに合わせてRPAロボット11の操作内容を修正しておくことが可能になる。そして、操作内容が修正されたRPAロボット11を用いて業務が行われることで、RPAロボット11による操作の実行エラーが発生して業務が停止する可能性を低減できるようになる。
By analyzing the error information collected in this way, the operation manager can recognize the specification change of the
以上のように、情報処理装置2の処理により、操作対象4の仕様変更を検知可能にする情報を、RPAロボット11が実行されていない時間帯に取得できるようになる。
なお、上記のステップS1,S2の処理は、RPAロボット11が実行される装置によって実行されてもよい。例えば、ステップS1,S2の処理が情報収集用のRPAロボット21の動作により実行される場合、RPAロボット11,21が同一の装置で動作してもよい。
As described above, through the processing of the
Note that the processes of steps S1 and S2 described above may be executed by a device in which the
〔第2の実施の形態〕
図2は、第2の実施の形態に係る情報処理システムの構成例を示す図である。図2に示す情報処理システムは、ロボット実行マシン100-1,100-2,・・・、クローラ実行マシン200、RPA管理サーバ300、外部サーバ410および運用者端末420を含む。これらの装置は、ネットワーク400を介して相互に接続されている。
[Second embodiment]
FIG. 2 is a diagram illustrating a configuration example of an information processing system according to the second embodiment. The information processing system shown in FIG. 2 includes robot execution machines 100-1, 100-2, . These devices are interconnected via a
この情報処理システムでは、ロボット実行マシン100-1,100-2,・・・において、ソフトウェア型のロボットであるRPAロボットが動作する(実行される)。RPAロボットにより、例えば、対応するロボット実行マシン100-1,100-2,・・・におけるデスクトップ画面に対する操作が自動的に実行される。 In this information processing system, robot execution machines 100-1, 100-2, . . . operate (execute) RPA robots, which are software robots. For example, the RPA robots automatically perform operations on the desktop screens of the corresponding robot execution machines 100-1, 100-2, .
ロボット実行マシン100-1,100-2,・・・で実行されるRPAロボットは、実際の業務のための操作を自動化するものである。以下の説明において、単に「ロボット」と記載した場合には、ロボット実行マシン100-1,100-2,・・・で実行される、実際の業務のためのRPAロボットを指す。なお、以下の説明では、ロボット実行マシン100-1,100-2,・・・のそれぞれを特に特定せずに示す場合には、「ロボット実行マシン100」と記載する場合がある。 The RPA robots executed by the robot execution machines 100-1, 100-2, . . . automate operations for actual business. In the following description, simply referring to "robots" refers to RPA robots for actual work executed by the robot execution machines 100-1, 100-2, . . . In the following description, the robot execution machines 100-1, 100-2, .
クローラ実行マシン200は、RPA管理サーバ300の制御の下でクローラを実行する。クローラは、ロボット実行マシン100-1,100-2,・・・で実行されるロボットによる操作を網羅的に実行するRPAロボットである。クローラは、このような操作をロボットが実行される時間帯(業務時間帯)とは別の時間帯において定期的に実行することで、ロボットによる操作対象において仕様変更やバージョンアップがあったかを監視する。クローラは、操作の実行時にエラーが発生した場合に、仕様変更やバージョンアップがあった可能性があると判定し、エラーの内容やエラーが発生した操作に関する情報を収集してRPA管理サーバ300に送信する。
The
RPA管理サーバ300は、ロボット実行マシン100-1,100-2,・・・におけるロボットの実行を管理する。例えば、RPA管理サーバ300は、運用管理者や業務担当者からのロボット実行要求に応じて、該当するロボット実行マシンにロボットを実行させる。ロボット実行要求は、例えば、運用者端末420などの端末装置への操作に応じて、その端末装置からRPA管理サーバ300に送信される。
The
また、RPA管理サーバ300は、クローラ実行マシン200におけるクローラの実行を管理する。さらに、RPA管理サーバ300は、クローラによって収集された情報を受信し、受信した情報を運用管理者に通知する。
Also, the
外部サーバ410は、ロボットの操作対象となるサービスを提供するサーバ装置の一例である。例えば、外部サーバ410は、各種のサービスをユーザが利用するためのWebサイトを提供する。この場合、ロボットは、WebサイトのGUI(Graphical User Interface)に対する操作を行うことで、サービスを利用して業務を自動実行する。
The
運用者端末420は、運用管理者が利用する端末装置である。例えば、運用管理者は、RPA管理サーバ300から自分宛てに送信された情報の内容を、運用者端末420を用いて確認できる。
The
図3は、クローラ実行マシンのハードウェア構成例を示す図である。クローラ実行マシン200は、例えば、図3に示すようなコンピュータとして実現される。図3に示すクローラ実行マシン200は、プロセッサ201、RAM(Random Access Memory)202、HDD(Hard Disk Drive)203、GPU(Graphics Processing Unit)204、入力インタフェース(I/F)205、読み取り装置206および通信インタフェース(I/F)207を備える。
FIG. 3 is a diagram illustrating an example hardware configuration of a crawler execution machine. The
プロセッサ201は、クローラ実行マシン200全体を統括的に制御する。プロセッサ201は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)またはPLD(Programmable Logic Device)である。また、プロセッサ201は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。
The
RAM202は、クローラ実行マシン200の主記憶装置として使用される。RAM202には、プロセッサ201に実行させるOS(Operating System)プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM202には、プロセッサ201による処理に必要な各種データが格納される。
A
HDD203は、クローラ実行マシン200の補助記憶装置として使用される。HDD203には、OSプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、SSD(Solid State Drive)などの他の種類の不揮発性記憶装置を使用することもできる。
The
GPU204には、表示装置204aが接続されている。GPU204は、プロセッサ201からの命令にしたがって、画像を表示装置204aに表示させる。表示装置204aとしては、液晶ディスプレイや有機EL(ElectroLuminescence)ディスプレイなどがある。
A
入力インタフェース205には、入力装置205aが接続されている。入力インタフェース205は、入力装置205aから出力される信号をプロセッサ201に送信する。入力装置205aとしては、キーボードやポインティングデバイスなどがある。ポインティングデバイスとしては、マウス、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
An
読み取り装置206には、可搬型記録媒体206aが脱着される。読み取り装置206は、可搬型記録媒体206aに記録されたデータを読み取ってプロセッサ201に送信する。可搬型記録媒体206aとしては、光ディスク、半導体メモリなどがある。
A
通信インタフェース207は、ネットワーク400を介して、RPA管理サーバ300などの他の装置との間でデータの送受信を行う。
以上のようなハードウェア構成によって、クローラ実行マシン200の処理機能を実現することができる。なお、ロボット実行マシン100、RPA管理サーバ300、外部サーバ410および運用者端末420についても、図3に示すようなハードウェア構成を有するコンピュータとして実現可能である。
The
With the above hardware configuration, the processing functions of the
ところで、ロボットで自動化される操作の対象としては、ロボットが実行されるロボット実行マシン100上のアプリケーションや、外部サーバのWebサイトなどがある。このようなアプリケーションやWebサイトにおいて仕様変更やバージョンアップが行われると、ロボットの動作にも影響が生じる場合がある。例えば、仕様変更やバージョンアップによってGUIの構成が変更された場合、それに合わせてロボットの操作手順も変更しないと、ロボットの動作エラーが生じ、業務が停止してしまう場合がある。
By the way, targets of operations automated by the robot include applications on the
ここで、アプリケーションがロボットを運用する顧客(企業)自身が開発したものであったり、あるいはWebサイトがその顧客自身が運営するものである場合には、顧客は仕様変更やバージョンアップの内容を事前に知ることができる。このため、顧客は、ロボットの操作手順を仕様変更やバージョンアップの内容に合わせて事前に修正して、業務を停止させないようにすることができる。 Here, if the application is developed by the customer (company) who operates the robot, or the website is operated by the customer, the customer should notify the customer of the specification change or version upgrade in advance. can be known to Therefore, the customer can modify the operation procedure of the robot in advance according to the contents of the specification change or version upgrade so as not to stop the work.
しかし、ロボットの操作対象が他社製のアプリケーションや社外のWebサイトとなる場合もある。この場合、顧客は、アプリケーションやWebサイトの仕様変更やバージョンアップの内容を事前に知ることは難しい。このため、ロボットを用いた業務の実行中に、仕様変更やバージョンアップを原因としてロボットの動作エラーが発生し、業務が停止してしまう可能性がある。 However, there are cases where the robot's operation target is an application made by another company or a website outside the company. In this case, it is difficult for the customer to know in advance the details of specification changes and version upgrades of applications and websites. For this reason, there is a possibility that an operation error of the robot will occur due to specification change or version upgrade during the execution of the work using the robot, and the work will be stopped.
このような問題を解決するための1つの方法として、例えば、操作対象のアプリケーションやWebサイトの仕様変更やバージョンアップの情報を定期的に監視する方法が考えられる。具体的には、アプリケーションの開発ベンダやWebサイトの運営ベンダのWebサイトに定期的にアクセスして、仕様変更やバージョンアップに関する情報を取得する。しかし、このような処理を人手によって行うには大きな手間がかかり、またコンピュータによって行ったとしても処理負荷が高いという問題がある。また、仕様変更やバージョンアップがあったとしても、GUIの構成の変更やそれに関連する機能の仕様の変更がなければ、ロボット実行時のエラーは発生しない。上記の監視によってこのようなGUIに関する変更だけを正確に判断することは簡単ではないという問題もある。 As one method for solving such a problem, for example, a method of periodically monitoring information on specification changes and version upgrades of an application to be operated or a website is conceivable. Specifically, the website of the application development vendor and the website management vendor is periodically accessed to acquire information on specification changes and version upgrades. However, it takes a lot of time and effort to perform such processing manually, and even if it is performed by a computer, there is a problem that the processing load is high. Also, even if there is a specification change or a version upgrade, if there is no change in the configuration of the GUI or a change in the specifications of functions related thereto, no error will occur during execution of the robot. There is also the problem that it is not easy to accurately determine only such changes related to the GUI by the above monitoring.
そこで、本実施の形態では、ロボットの操作を網羅的に実行するクローラを用意し、業務時間外の時間帯においてクローラがアプリケーションやWebサイトに対する操作を実行する。操作の実行エラーが発生した場合、クローラは、エラーの内容やエラーが発生した操作対象に関する情報を収集し、RPA管理サーバ300に通知する。運用管理者や業務担当者は、このようにして収集された情報に基づいて、アプリケーションやWebサイトの仕様変更やバージョンアップの内容を認識し、ロボットの動作が停止しないようにロボットの操作内容を変更することが可能になる。
Therefore, in the present embodiment, a crawler that exhaustively executes robot operations is prepared, and the crawler executes operations on applications and websites during non-business hours. When an operation execution error occurs, the crawler collects information about the details of the error and the operation target in which the error occurred, and notifies the
図4は、第2の実施の形態に係る情報処理システム全体の動きを示す図である。図4において、ロボット実行マシン100は、RPA管理サーバ300による管理の元でロボット110を実行する。図4では、ロボット110による操作対象として、アプリケーション501およびWebサイト502を想定する。アプリケーション501は、顧客とは別の企業から提供される他社製アプリケーションである。図4においてはアプリケーション501がロボット実行マシン100の外側に示されているが、このアプリケーション501は実際にはロボット実行マシン100にインストールされている。また、Webサイト502は、顧客とは別の企業によって運営される社外サイトであり、例えば、図2に示した外部サーバ410から提供される。
FIG. 4 is a diagram showing the movement of the entire information processing system according to the second embodiment. In FIG. 4, the
また、本実施の形態では、ロボット110の操作を網羅的に実行するクローラ210が作成される。クローラ210は、ロボット110の単なる複製ではなく、操作対象の仕様変更やバージョンアップが行われた可能性があると判定した場合に、解析に必要な情報をRPA管理サーバ300に通知する機能を備える。さらに、クローラ210は、データの登録、更新、削除などの業務に支障が生じ得る操作の実行をスキップする機能も備える。
Further, in the present embodiment, a
なお、本実施の形態では、クローラ210はクローラ実行マシン200で実行されるものとするが、クローラ210を実行する装置は限定されるものではなく、例えばロボット実行マシン100やRPA管理サーバ300でクローラ210が実行されてもよい。
In this embodiment, the
クローラ210は、業務時間外の時間帯において、RPA管理サーバ300の指示に応じて定期的に実行される(処理P1)。クローラ210は、操作対象であるアプリケーション501やWebサイト502の仕様変更やバージョンアップを監視するために、操作対象に対する操作を自動実行する(処理P2)。
The
操作の実行エラーが発生した場合、クローラ210は、エラーの内容やエラーが発生した操作に関する情報を収集し、RPA管理サーバ300に通知する(処理P3)。例えば、エラーの内容を示す情報や、エラーが発生した操作対象に関する情報(例えば、アプリケーション501やWebサイト502の画面情報)などが収集され、RPA管理サーバ300に通知される。RPA管理サーバ300は、通知された収集情報を、例えば電子メールなどによって運用管理者421に通知する(処理P4)。
When an operation execution error occurs, the
運用管理者421は、通知された収集情報を解析し、その解析結果に基づいてロボット110をメンテナンスする(処理P5)。すなわち、運用管理者421は、アプリケーション501やWebサイト502の仕様変更やバージョンアップの内容に応じて、ロボット110の処理手順を修正する。また、運用管理者421は、業務の開始前に、アプリケーション501やWebサイト502の仕様変更やバージョンアップが発生したこと、その内容などの情報を、例えば電子メールなどによって業務担当者431に通知する(処理P6)。
The
その後、RPA管理サーバ300によって、ロボット実行マシン100にロボット110の実行が指示される(処理P7)。この実行指示に応じてロボット110が起動し、アプリケーション501やWebサイト502に対する自動操作を実行する(処理P8)。仕様変更やバージョンアップの内容に応じてロボット110の操作内容が修正済みであるので、業務中にロボット110による操作の実行エラーが発生する可能性を抑制できる。
Thereafter, the
図5は、ロボットとクローラとの関係を示す図である。クローラ210は、複数のロボットの操作を網羅的に実行することができる。例えば、図5では、ロボット実行マシン100-1でロボット110-1が実行され、ロボット実行マシン100-2でロボット110-2が実行される。この場合、クローラ210は、ロボット110-1,110-2の操作を網羅的に実行する。
FIG. 5 is a diagram showing the relationship between the robot and the crawler. The
例えば、ロボット110-1は、操作の内容が記述されたスクリプト111-1に基づいて、操作を自動実行する。また、ロボット110-2は、操作の内容が記述されたスクリプト111-2に基づいて、操作を自動実行する。この場合、クローラ210の作成は、例えば、次のように実行される。
For example, the robot 110-1 automatically executes an operation based on a script 111-1 describing the details of the operation. Also, the robot 110-2 automatically executes an operation based on a script 111-2 describing the details of the operation. In this case, creation of the
まず、スクリプト111-1,111-2から操作内容を示す情報が抽出される。そして、操作画面(例えば、Webサイトにおける同じページ)ごとに操作が分類されて、クローラ210用のスクリプト(クローラ用スクリプト211)に、分類された操作の内容が記述される。このとき、同じ入力位置に対する操作が重複しないように操作の内容が記述される。例えば、ロボット110-1があるWebページ上のある入力欄にデータAを入力し、ロボット110-2が同じWebページ上の同じ入力欄にデータBを入力する場合、クローラ用スクリプト211では、その入力欄に対するデータAまたはデータBの入力操作のみが記述されればよい。クローラ210は、このようにして作成されたクローラ用スクリプト211に基づいて動作することで、ロボット110-1,110-2の操作を網羅的に実行できるようになる。
First, information indicating the operation content is extracted from the scripts 111-1 and 111-2. Then, the operations are classified for each operation screen (for example, the same page on the website), and the contents of the classified operations are described in the script for the crawler 210 (crawler script 211). At this time, the contents of the operation are described so that the operation for the same input position does not overlap. For example, when the robot 110-1 inputs data A into an input field on a Web page, and the robot 110-2 inputs data B into the same input field on the same Web page, the
ここで、ロボット110-1,110-2が実行するすべての操作をクローラ210が実行してしまうと、業務に支障が生じる可能性がある。例えば、ロボット110-1,110-2が実行する操作のうち、データの登録、更新、削除の操作をクローラ210が実行してしまうと、業務の際にデータの不整合や登録データの間違いが生じる可能性がある。そこで、クローラ210は、クローラ用スクリプト211に記述された操作のうち、データの登録、更新、削除のような業務に支障が生じる可能性がある操作の実行をスキップする。
Here, if the
図6は、情報処理システムの各装置が備える処理機能の構成例を示す図である。
まず、ロボット実行マシン100は、記憶部120、ロボットエージェント130、アプリケーション141およびWebブラウザ142を備える。
FIG. 6 is a diagram showing a configuration example of processing functions provided in each device of the information processing system.
First, the
記憶部120は、ロボット実行マシン100が備える図示しない記憶装置の記憶領域によって実現される。記憶部120には、例えば、ロボットエージェント130の処理に必要なデータが記憶される。一例として、ロボット110の操作内容が記述されたスクリプト(図5のスクリプト111-1,111-2のいずれかに対応)が記憶部120に記憶される。
The
ロボットエージェント130、アプリケーション141およびWebブラウザ142の処理は、例えば、ロボット実行マシン100が備える図示しないプロセッサが所定のプログラムを実行することで実現される。
The processes of the
ロボットエージェント130は、記憶部120に記憶されたスクリプトに基づいて、ロボット110の動作を実現する。なお、ロボット110の実体はロボットエージェント130を実現するエージェントプログラムであり、「ロボット110の実行」とはそのエージェントプログラムの実行を意味する。
The
アプリケーション141およびWebブラウザ142は、ロボット110による直接的な操作対象となる処理機能である。アプリケーション141は、GUIを提供し、このGUIに対するロボット110の操作に応じて処理を実行する。このアプリケーション141は、顧客とは別の企業から提供される他社製アプリケーションである。Webブラウザ142は、Webサーバから提供されるWebページを表示し、Webページに対する操作に応じたデータをWebサーバに送信する。本実施の形態では、外部サーバ410がWebサーバとして動作し、外部サーバ410が提供するサービスを利用するためのGUI画面がWebページとしてWebブラウザ142に提供される。そして、外部サーバ410は、このGUI画面に対するロボット110の操作に応じて、サービスに対応する処理を実行する。
The
クローラ実行マシン200は、記憶部220、クローラエージェント230、アプリケーション241およびWebブラウザ242を備える。
記憶部220は、RAM202、HDD203など、クローラ実行マシン200が備える記憶装置の記憶領域によって実現される。記憶部220には、例えば、クローラ210の操作内容が記述されたクローラ用スクリプト(図5のクローラ用スクリプト211に対応)や、クローラ210による操作の実行エラーが発生した際に作成されるエラー情報が記憶される。
The
The
クローラエージェント230、アプリケーション241およびWebブラウザ242の処理は、プロセッサ201が所定のプログラムを実行することで実現される。
クローラエージェント230は、記憶部220に記憶されたクローラ用スクリプトに基づいて、クローラ210の動作を実現する。また、クローラエージェント230は、操作の実行エラーが発生すると、発生したエラーに関するエラー情報を記憶部220に格納した後、そのエラー情報をRPA管理サーバ300に送信する。
The processing of the
The
アプリケーション241およびWebブラウザ242は、クローラ210による直接的な操作対象となる処理機能である。アプリケーション241は、ロボット実行マシン100のアプリケーション141と同様の処理を実行可能である。Webブラウザ242は、ロボット実行マシン100のWebブラウザ142と同様の処理を実行可能である。なお、図5の例のように、クローラ210が複数のロボット110の操作を実行する場合、クローラ実行マシン200は、それらのロボット110のそれぞれの操作対象に対応する処理機能を備える。
The
RPA管理サーバ300は、記憶部310、ロボット実行管理部321およびクローラ実行管理部322を備える。
記憶部310は、RPA管理サーバ300が備える図示しない記憶装置の記憶領域によって実現される。記憶部310には、例えば、クローラ210を管理するための情報や、クローラ210から収集されたエラー情報などが記憶される。
The
The
ロボット実行管理部321およびクローラ実行管理部322の処理は、例えば、RPA管理サーバ300が備える図示しないプロセッサが所定のプログラムを実行することで実現される。ロボット実行管理部321は、ロボット実行マシン100におけるロボット110の実行を管理する。例えば、ロボット実行管理部321は、運用者端末420などの端末装置からのロボット実行要求に応じて、ロボット110の実行を指示する。
The processes of the robot
クローラ実行管理部322は、クローラ実行マシン200におけるクローラ210の実行を管理する。例えば、クローラ実行管理部322は、記憶部120に記憶されたクローラ210の実行スケジュール情報にしたがって、クローラ210の実行を指示する。また、クローラ実行管理部322は、クローラ210から送信されたエラー情報を記憶部220に格納し、エラー情報に基づき、エラーが発生したことやエラーの内容などの情報を、電子メールなどを用いて運用管理者に通知する。
The crawler
図7は、クローラ実行マシンの記憶部に記憶されるデータの例を示す図である。クローラ実行マシン200の記憶部220には、前述したクローラ用スクリプトの他に、エラー情報管理テーブル221が記憶される。エラー情報管理テーブル221は、クローラ210による操作の実行エラーが発生した場合に作成されるエラー情報を記憶する。エラー情報管理テーブル221は、操作の実行エラーが発生するたびに作成されて記憶部220に記憶される。すなわち、エラー情報管理テーブル221は、実行エラーが発生した操作ごとに作成される。
FIG. 7 is a diagram showing an example of data stored in the storage unit of the crawler execution machine. The
図7に示すように、エラー情報管理テーブル221の各レコードには、エラー情報種別とファイル名とが登録される。エラー情報種別は、対応するエラー情報の種別を示す。ファイル名は、エラー情報が記述されたファイルの名称を示す。記憶部220には、ファイル名が示すエラー情報のファイルが別途記憶されることになる。
As shown in FIG. 7, each record of the error information management table 221 registers an error information type and a file name. The error information type indicates the type of corresponding error information. File name indicates the name of the file in which the error information is described. The
エラー情報としては、例えば、クローラエラーメッセージ、画面キャプチャデータ、アプリケーション名、アプリエラーメッセージ、サイトURL(Uniform Resource Locator)などが作成される。クローラエラーメッセージは、エラー発生時におけるクローラ210による操作を示す情報(例えば、操作名、GUI上の操作位置を示す情報など)を示す。画面キャプチャデータは、エラー発生時におけるGUI画面の画像データを示す。アプリケーション名は、エラー発生時において操作対象であったアプリケーションの識別情報を示す。アプリエラーメッセージは、アプリケーションに対する操作時に発生したエラー内容を示す情報(例えば、アプリケーションから返されるエラーメッセージなど)を示す。サイトURLは、エラー発生時において操作対象であったWebページのURLを示す。
As the error information, for example, crawler error messages, screen capture data, application names, application error messages, site URLs (Uniform Resource Locators), and the like are created. The crawler error message indicates information indicating an operation by the
クローラエラーメッセージおよび画面キャプチャデータは、操作対象がアプリケーションとWebサイトのいずれの場合でも記憶部220に登録される。アプリケーション名およびアプリエラーメッセージは、操作対象がアプリケーションの場合にのみ記憶部220に登録される。サイトURLは、操作対象がWebサイトの場合にのみ記憶部220に登録される。
Crawler error messages and screen capture data are registered in the
図8は、RPA管理サーバの記憶部に記憶されるデータの例を示す図である。図8に示すように、RPA管理サーバ300の記憶部310には、例えば、クローラ管理テーブル311、プロセス管理テーブル312、スケジュール管理テーブル313、通知情報管理テーブル314および収集情報管理テーブル315が記憶される。
FIG. 8 is a diagram depicting an example of data stored in the storage unit of the RPA management server; As shown in FIG. 8, the
クローラ管理テーブル311には、RPA管理サーバ300が管理対象とするクローラに対応するレコードが登録される。図8の例のように、管理対象とするクローラが複数存在する場合、クローラ管理テーブル311にはそれぞれ個別のクローラに対応する複数のレコードが登録される。クローラ管理テーブル311の各レコードには、クローラの識別情報を示すクローラIDに対して、クローラの名称を示すクローラ名(クローラを示すRPAロボット名)が対応付けて登録される。
Records corresponding to crawlers managed by the
プロセス管理テーブル312には、クローラで実行されるプロセスに対応するレコードが登録される。プロセスとは、RPAロボットで実行される処理の単位である。RPAロボットに操作を実行させる場合、RPA管理サーバ300は、RPAロボットを特定し、そのRPAロボットに対してプロセスを指定することで操作の実行を開始させる。
Records corresponding to processes executed by crawlers are registered in the process management table 312 . A process is a unit of processing executed by an RPA robot. When causing an RPA robot to execute an operation, the
プロセス管理テーブル312の各レコードには、プロセスの識別情報を示すプロセスIDに対して、プロセス名と稼働クローラIDとが対応付けて登録される。プロセス名は、プロセスの名称を示す。稼働クローラIDは、プロセスが実行されるクローラのクローラIDを示す。 In each record of the process management table 312, a process ID indicating process identification information is registered in association with a process name and an operating crawler ID. The process name indicates the name of the process. The active crawler ID indicates the crawler ID of the crawler on which the process is executed.
スケジュール管理テーブル313には、クローラごとの実行スケジュール情報が登録される。スケジュール管理テーブル313の各レコードには、クローラを示すクローラIDに対して、実行周期、実行時刻、実行曜日および実行日が登録される。実行周期は、クローラが周期的に実行される場合に、どのような周期で実行されるかを示す。実行時刻は、クローラが実行される時刻を示す。実行曜日は、クローラが1週間を単位として実行される場合(実行周期に「週次」と登録されている場合)に、クローラが実行される曜日を示す。実行日は、クローラを周期的にでなく、特定の日に実行したい場合に、実行させる日を示す。なお、クローラの実行は、少なくとも、対応するロボットが実行される時間帯とは別の時間帯に行われるようにスケジューリングされる。 Execution schedule information for each crawler is registered in the schedule management table 313 . In each record of the schedule management table 313, an execution period, an execution time, an execution day, and an execution date are registered for a crawler ID indicating a crawler. The execution cycle indicates in what cycle the crawler is executed periodically. Execution time indicates the time at which the crawler is executed. The execution day indicates the day of the week on which the crawler is executed when the crawler is executed on a weekly basis (when "weekly" is registered in the execution cycle). The date of execution indicates the day on which the crawler is to be executed, not periodically but on a specific day. It should be noted that the execution of the crawler is scheduled so as to be performed at least in a different time zone from the time zone in which the corresponding robot is executed.
通知情報管理テーブル314には、クローラによって収集されて送信されたエラー情報の通知先とするユーザ(運用管理者など)の情報が登録される。通知情報管理テーブル314の各レコードには、通知先のユーザを識別するユーザ名に対して、エラー情報の通知先を示す通知先メールアドレスが登録される。 In the notification information management table 314, information of a user (operation manager, etc.) to be notified of error information collected and transmitted by the crawler is registered. In each record of the notification information management table 314, a notification destination e-mail address indicating a notification destination of error information is registered for a user name that identifies a notification destination user.
収集情報管理テーブル315は、クローラによって収集されて送信されたエラー情報を管理するためのテーブルである。収集情報管理テーブル315の各レコードには、エラー情報の送信元クローラを示すクローラIDに対して、エラー情報を示すファイル名が登録される。ここでは例として、クローラで収集されたエラー情報は、1つのファイルにまとめられてRPA管理サーバ300に送信されるものとする。この場合、エラー情報を示すファイルが記憶部310に格納され、そのファイルを示すファイル名がクローラIDに対応付けて収集情報管理テーブル315に登録される。
The collected information management table 315 is a table for managing error information collected and transmitted by the crawler. In each record of the collected information management table 315, a file name indicating the error information is registered with respect to the crawler ID indicating the crawler that sent the error information. Here, as an example, it is assumed that the error information collected by the crawler is compiled into one file and sent to the
図9は、クローラが実行される場合の処理手順の例を示すシーケンス図である。
[ステップS11]RPA管理サーバ300によって、クローラ実行に関する前処理が実行される。例えば、運用者端末420からの運用管理者による設定操作に応じて、クローラ210の実行スケジュール情報がスケジュール管理テーブル313に登録される。
FIG. 9 is a sequence diagram showing an example of a processing procedure when the crawler is executed.
[Step S11] The
[ステップS12]RPA管理サーバ300のクローラ実行管理部322は、スケジュール管理テーブル313に登録された、該当するクローラ210についての実行スケジュール情報に基づき、クローラ210の実行時刻になったかを判定する。実行時刻になっていない場合(現時刻が実行時刻でない場合)、一定時間後にステップS12の処理が再実行される。一方、実行時刻になった場合(現時刻が実行時刻である場合)、処理がステップS13に進められる。
[Step S<b>12 ] The crawler
[ステップS13]クローラ実行管理部322は、クローラ210が実行されるクローラ実行マシン200に対して、クローラ210の実行指示を送信する。実際には、プロセス管理テーブル312に基づいて、クローラ210に実行させるプロセスが指定される。
[Step S13] The crawler
[ステップS14]クローラ実行マシン200は、実行指示の受信に応じてクローラエージェント230を起動する。これにより、クローラ210による操作の自動実行が開始される。
[Step S14] The
[ステップS15]クローラエージェント230は、例えば記憶部220内のクローラ用スクリプトから、次に実行する操作の情報を取得し、この操作がデータ登録、データ更新、データ削除のいずれかであるかを判定する。操作がこれらのいずれでもない場合、処理がステップS16に進められ、操作がこれらのいずれかである場合、処理がステップS20に進められる。後者の場合、操作の実行(ステップS16)がスキップされることになる。
[Step S15] The
[ステップS16]クローラエージェント230は、操作を実行する。
[ステップS17]クローラエージェント230は、操作の実行エラーが発生したかを判定する。実行エラーが発生した場合、処理がステップS18に進められ、実行エラーが発生しなかった場合、処理がステップS20に進められる。
[Step S16] The
[Step S17] The
[ステップS18]クローラエージェント230は、発生した実行エラーに関するエラー情報を収集する。クローラエージェント230は、エラー情報管理テーブル221を記憶部220に作成し、収集されたエラー情報をこのエラー情報管理テーブル221に登録する。
[Step S18] The
[ステップS19]クローラエージェント230は、エラー情報管理テーブル221からエラー情報を取得して、実行エラーが発生したエラー情報ファイルを作成し、RPA管理サーバ300に送信する。
[Step S<b>19 ] The
図示しないが、RPA管理サーバ300のクローラ実行管理部322は、エラー情報ファイルを受信すると、受信したエラー情報ファイルを記憶部310に格納する。これとともに、クローラ実行管理部322は、エラー情報ファイルのファイル名をクローラ210のクローラIDに対応付けて収集情報管理テーブル315に登録する。
Although not shown, upon receiving the error information file, the crawler
[ステップS20]クローラエージェント230は、クローラ210の処理を終了するかを判定する。次に実行すべき操作がない場合に、処理終了と判定される。クローラ210の処理を継続する場合、処理がステップS15に進められ、次の操作に関する処理が実行される。一方、クローラ210の処理を終了する場合、処理がステップS21に進められる。
[Step S20] The
[ステップS21]クローラエージェント230は、クローラ210による操作が完了したことを示す完了通知をRPA管理サーバ300に送信し、動作を終了する。これにより、クローラ210の実行が終了する。
[Step S21] The
[ステップS22]RPA管理サーバ300のクローラ実行管理部322は、収集情報管理テーブル315を参照して、操作が完了したクローラ210に対応するエラー情報ファイルが登録されているかを判定する。ここで、登録されていると判定した場合、クローラ実行管理部322は、通知情報管理テーブル314から情報の通知先アドレスを特定し、その通知先アドレス宛の電子メールを作成する。この電子メールには、クローラ210による操作の実行時にエラーが発生したことや、エラー情報ファイルから抽出されたエラー情報の内容が記載される。エラー情報ファイルに関しては、その内容が電子メールに記載されずに、その格納位置を示す情報が電子メール内に記載されてもよい。
[Step S22] The crawler
クローラ実行管理部322は、作成された電子メールを通知先アドレスに送信する。これにより、操作の実行エラーが発生したことや、エラーの内容が運用管理者に通知される。
The crawler
図10は、ロボットおよびクローラが操作対象とする操作画面の例を示す。以下、図10に例示する操作画面510を用いて、ロボットおよびクローラのそれぞれによる具体的な操作手順の例を説明する。
FIG. 10 shows an example of an operation screen to be operated by the robot and the crawler. An example of a specific operation procedure for each of the robot and the crawler will be described below using the
操作画面510は、アンケート情報を外部サーバ410に登録したり、登録されたアンケート情報を外部サーバ410から取得するためのWebページであり、1つのURLによって特定される。この操作画面510は、項目表示領域511と情報入力・表示領域512を含む。項目表示領域511には複数の入力項目名が表示され、情報入力・表示領域512には、各入力項目に対応する登録情報を入力および表示する入力・表示欄が表示される。
The
操作画面510はさらに、保存ボタン513、更新ボタン514、キャンセルボタン515および終了ボタン516を含む。保存ボタン513を押下する操作が行われると、情報入力・表示領域512に入力された情報が外部サーバ410に登録される。更新ボタン514を押下する操作が行われると、情報入力・表示領域512に入力されている情報によって、外部サーバ410に登録済みの情報が更新される。キャンセルボタン515を押下する操作が行われると、情報入力・表示領域512に入力されている情報の登録や、それらの情報による更新が行われずに、操作画面510が閉じられる。終了ボタン516を押下する操作が行われると、操作画面510が閉じられる。
ここで、例として、ロボット110-1が次のような情報登録操作を行うものとする。ロボット110-1は、操作画面510を開く操作を行うと、情報入力・表示領域512の入力・表示欄を1行目から順次選択し、選択された入力・表示欄にあらかじめ用意された情報を入力していく。ロボット110-1は、すべての入力・表示欄への入力が終了すると、保存ボタン513を押下して入力した情報を外部サーバ410に登録し、最後に終了ボタン516を押下して操作画面510を閉じる。
Here, as an example, it is assumed that the robot 110-1 performs the following information registration operation. When an operation to open the
さらに、ロボット110-2が次のような情報取得操作を行うものとする。ロボット110-2は、操作画面510を開く操作を行うと、情報入力・表示領域512の入力・表示欄を1行目から順次選択し、選択された入力・表示欄に表示されている情報を、対応するメタデータ(すなわち、対応する入力項目)とともに取得する。ロボット110-2は、すべての登録情報をメタデータとともに取得すると、終了ボタン516を押下して操作画面510を閉じる。
Furthermore, it is assumed that the robot 110-2 performs the following information acquisition operation. When an operation to open the
このようなロボット110-1,110-2に対応するクローラ210の操作手順を示すクローラ用スクリプトには、次のような操作が記載される。
(1)操作画面510を開く。
The following operations are described in the crawler script indicating the operation procedure of the
(1) Open the
(2)情報入力・表示領域512の入力・表示欄を1行目から順次選択し、選択された入力・表示欄にあらかじめ用意された情報を入力していく。
(3)情報入力・表示領域512の入力・表示欄を1行目から順次選択し、選択された入力・表示欄に表示されている情報を、対応するメタデータとともに取得する。
(2) The input/display columns in the information input/
(3) The input/display fields in the information input/
(4)保存ボタン513を押下する。
(5)終了ボタン516を押下する。
ただし、上記のクローラ用スクリプトに基づく実際のクローラ210の処理では、データの登録操作である(4)の「保存ボタン513の押下」のみスキップされる。
(4) Press the
(5) Press the
However, in the actual processing of the
この図10の例や、図9に示した処理によれば、クローラ210の処理では、対応する各ロボット110の操作のうち、データの登録操作、更新操作および削除操作がスキップされ、その他の操作のみ実行される。このため、クローラ210による業務でない操作によって業務で利用される登録情報が改変されなくなり、業務に支障をきたすことなく、操作対象の仕様変更やバージョンアップを実際の業務を行う前に検知できるようになる。
According to the example of FIG. 10 and the process shown in FIG. 9, in the process of the
〔第3の実施の形態〕
次に、第2の実施の形態における処理の一部を変形した第3の実施の形態について説明する。
[Third Embodiment]
Next, a description will be given of a third embodiment in which part of the processing in the second embodiment is modified.
図11は、第3の実施の形態におけるロボットおよびクローラについて示す図である。第3の実施の形態では、第2の実施の形態と同様に、ロボット110に対応するクローラ210が動作する。クローラ210が実行される装置は限定されないが、図11では例として、クローラ実行マシン200でクローラ210が実行されるとする。クローラ210は、ロボット110の操作を網羅的に実行する。
FIG. 11 is a diagram showing the robot and crawlers in the third embodiment. In the third embodiment, the
図11の例では、図5と同様に、ロボット実行マシン100-1でロボット110-1が実行され、ロボット実行マシン100-2でロボット110-2が実行される。そして、クローラ210は、ロボット110-1,110-2の操作を網羅的に実行する。例えば、ロボット110-1は、操作の内容が記述されたスクリプト111-1に基づいて操作を実行し、ロボット110-2は、操作の内容が記述されたスクリプト111-2に基づいて操作を実行するとする。この場合、第2の実施の形態と同様に、スクリプト111-1,111-2に記述された操作が操作画面ごとに分類され、分類された操作の内容がクローラ用スクリプト211に記述される。
In the example of FIG. 11, the robot execution machine 100-1 executes the robot 110-1, and the robot execution machine 100-2 executes the robot 110-2, as in FIG. The
ここで、前述の第2の実施の形態では、クローラ210は、クローラ用スクリプト211に記述された操作のうち、データの登録操作、更新操作および削除操作をスキップすることで、業務に支障をきたすような登録情報の改変が行われないようにした。これに対して第3の実施の形態では、クローラ210は、クローラ用スクリプト211に記述された操作をすべて実行する。その代わり、クローラ210は、クローラ専用のデータを用いて登録操作、更新操作および削除操作を実行する。これにより、業務に支障をきたすような登録情報の改変が行われないようにすることができる。
Here, in the above-described second embodiment, the
例えば、ロボット実行マシン100-1の記憶部120には、ロボット110-1がデータの登録や更新の際に利用するデータが保存された登録情報データベース(DB)122-1が記憶される。また、ロボット実行マシン100-2の記憶部120には、ロボット110-2がデータの登録や更新の際に利用するデータが保存された登録情報データベース(DB)122-2が記憶される。一方、クローラ実行マシン200の記憶部220には、クローラ210がデータの登録や更新の際に利用するデータが保存された、クローラ210用の登録情報データベース(DB)222が記憶される。
For example, the
クローラ用の登録情報データベース222には、例えば、アプリケーションを利用するためのユーザIDおよびパスワードや、WebサーバのサービスにログインするためのユーザIDおよびパスワードとして、ロボット110-1,110-2が利用するデータとは別のデータが登録される。これにより、クローラ210は、ロボット110-1,110-2とは別のユーザとしてアプリケーションやWebサイトを操作する。この場合、クローラ用の登録情報データベース222には、上記のユーザIDおよびパスワード以外のデータについては、ロボット用の登録情報データベース122-1,122-2と同じデータが登録されていてもよい。
The
このように、クローラ210は、クローラ用の登録情報データベース222に登録されたデータを操作画面の入力欄への入力データとして用いて、ロボット110-1,110-2が実行するすべての操作を実行する。これにより、業務に支障をきたすことなく、操作対象の仕様変更やバージョンアップを実際の業務を行う前に検知できるようになる。
In this way, the
〔第4の実施の形態〕
次に、第2の実施の形態における処理の一部を変形した第4の実施の形態について説明する。第4の実施の形態では、ロボットとそれに対応するクローラの両方を実現するロボットエージェントが、ロボットごとに別々に作成される点が、第2の実施の形態とは異なる。
[Fourth Embodiment]
Next, a fourth embodiment in which part of the processing in the second embodiment is modified will be described. The fourth embodiment differs from the second embodiment in that robot agents that implement both robots and their corresponding crawlers are created separately for each robot.
図12は、第4の実施の形態に係る情報処理システムの各装置が備える処理機能の構成例を示す図である。
ロボット実行マシン100は、図6に示したロボットエージェント130の代わりに、ロボットとクローラの両方を実現するロボットエージェント130aを備える。すなわち、ロボットエージェント130aは、ロボットの処理を実現するロボット実行部131と、クローラの処理を実現するクローラ実行部132とを備える。
FIG. 12 is a diagram illustrating a configuration example of processing functions provided in each device of the information processing system according to the fourth embodiment.
The
一方、クローラ実行マシン200は、図6に示したクローラエージェント230の代わりに、ロボット実行マシン100と同じロボットエージェント130aを備える。このロボットエージェント130aも、ロボット実行マシン100と同様にロボット実行部131とクローラ実行部132とを備える。
On the other hand, the
いずれのロボットエージェント130aも、RPA管理サーバ300からの指示に応じて、ロボット実行部131とクローラ実行部132とを選択的に動作させることが可能になっている。クローラが実行される装置は特に限定されるものではないが、本実施の形態では例として、第2の実施の形態と同様に、ロボット実行マシン100でロボットが実行され、クローラ実行マシン200でクローラが実行されるものとする。この場合、RPA管理サーバ300からの指示により、ロボット実行マシン100でロボット実行部131が動作し、クローラ実行マシン200でクローラ実行部132が動作する。
Any
図13は、第4の実施の形態におけるロボットとクローラとの関係を示す図である。前述のように、本実施の形態では、ロボットとそれに対応するクローラの両方を実現するロボットエージェントが、ロボットごとに別々に作成される。図12に示したようにロボットとクローラとが別の装置で実行される場合、これらのロボットとクローラとを実現する同じロボットエージェントが各装置にインストールされる。さらに、ロボットが複数存在する場合には、各ロボットに対応するロボットエージェントが別々に作成される。 FIG. 13 is a diagram showing the relationship between the robot and crawlers in the fourth embodiment. As described above, in this embodiment, robot agents that implement both the robot and its corresponding crawler are created separately for each robot. If the robot and crawler are run on separate devices as shown in FIG. 12, the same robot agent that implements the robot and crawler is installed on each device. Furthermore, if there are multiple robots, robot agents corresponding to each robot are created separately.
図13の例では、ロボット実行マシン100-1とロボット実行マシン100-2とで、それぞれ別のロボットが実行される。また、ロボット実行マシン100-1上のロボットに対応するクローラと、ロボット実行マシン100-2上のロボットに対応するクローラの両方が、同一のクローラ実行マシン200で実行される。この場合、ロボット実行マシン100-1が備えるロボットエージェント130a-1と、ロボット実行マシン100-2が備えるロボットエージェント130a-2の両方が、クローラ実行マシン200にも備えられる。
In the example of FIG. 13, different robots are executed by the robot execution machine 100-1 and the robot execution machine 100-2. Both the crawler corresponding to the robot on the robot execution machine 100-1 and the crawler corresponding to the robot on the robot execution machine 100-2 are executed by the same
ここで、各ロボットエージェントは、RPA管理サーバ300からの指示に応じて、ロボットとクローラとを選択的に実行することが可能になっている。本実施の形態では、例として、ロボットエージェントはRPA管理サーバから指定される実行引数の値に応じて、ロボットとクローラのいずれかを選択的に実行する。以下、実行引数=1の場合にロボットが実行され、実行引数=0の場合にクローラが実行されるとする。
Here, each robot agent can selectively execute robots and crawlers according to instructions from the
図13において、ロボットエージェント130a-1は、ロボット実行部131-1とクローラ実行部132-1を備えている。ロボット実行マシン100-1のロボットエージェント130a-1に対しては、RPA管理サーバ300から実行引数=1が指定される。これにより、ロボット実行マシン100-1ではロボット実行部131-1が起動してロボットが動作する。一方、クローラ実行マシン200のロボットエージェント130a-1に対しては、RPA管理サーバ300から実行引数=0が指定される。これにより、クローラ実行マシン200ではクローラ実行部132-1が起動してクローラが動作する。
In FIG. 13, the
ロボット実行マシン100-1のロボット実行部131-1は、例えば、操作の内容が記述されたスクリプト111-1に基づいて、操作を自動実行する。また、同じスクリプト111-1はクローラ実行マシン200にも記憶され、クローラ実行マシン200のクローラ実行部132-1は、このスクリプト111-1に基づいて操作を自動実行する。ただし、第2の実施の形態と同様に、クローラ実行部132-1は、ロボットの操作のうち、データの登録、更新、削除の操作をスキップする。
The robot execution unit 131-1 of the robot execution machine 100-1 automatically executes an operation based on, for example, a script 111-1 describing the content of the operation. The same script 111-1 is also stored in the
同様に、ロボットエージェント130a-2は、ロボット実行部131-2とクローラ実行部132-2を備えている。ロボット実行マシン100-2のロボットエージェント130a-2に対しては、RPA管理サーバ300から実行引数=1が指定される。これにより、ロボット実行マシン100-2ではロボット実行部131-2が起動してロボットが動作する。一方、クローラ実行マシン200のロボットエージェント130a-2に対しては、RPA管理サーバ300から実行引数=0が指定される。これにより、クローラ実行マシン200ではクローラ実行部132-2が起動してクローラが動作する。
Similarly, the
ロボット実行マシン100-2のロボット実行部131-2は、例えば、操作の内容が記述されたスクリプト111-2に基づいて、操作を自動実行する。また、同じスクリプト111-2はクローラ実行マシン200にも記憶され、クローラ実行マシン200のクローラ実行部132-2は、このスクリプト111-2に基づいて操作を自動実行する。ただし、第2の実施の形態と同様に、クローラ実行部132-2は、ロボットの操作のうち、データの登録、更新、削除の操作をスキップする。
The robot execution unit 131-2 of the robot execution machine 100-2 automatically executes an operation based on, for example, a script 111-2 describing the content of the operation. The same script 111-2 is also stored in the
このように、本実施の形態では、ロボットが複数台稼働している場合でも、ロボットとクローラとが一対一で対応している。このため、クローラの実行によってエラー情報が収集されてRPA管理サーバ300に送信され、さらに運用管理者に送信された場合に、運用管理者は、エラー情報をクローラに対応するロボットごとに分類して認識できる。したがって、運用管理者は、エラー情報に基づき、実行エラーが発生した操作がどのロボットに対応する操作を容易かつ明確に認識することができる。
As described above, in this embodiment, even when a plurality of robots are in operation, the robots and the crawlers are in one-to-one correspondence. Therefore, when error information is collected by the execution of the crawler, transmitted to the
図14は、ロボットおよびクローラのプログラム作成について示す図である。ここでは例として、開発者が操作する開発者端末600において、ロボットおよびクローラを実現するロボットエージェントプログラム133が作成されるものとする。このロボットエージェントプログラム133には、例えば、操作の内容を記述したスクリプトが含まれる。
FIG. 14 is a diagram showing programming of robots and crawlers. Here, as an example, it is assumed that a
開発者端末600は、ロボットエージェントプログラム133を作成するロボット作成部601を備える。ロボット作成部601の処理は、例えば、開発者端末600が備える図示しないプロセッサが所定のプログラムを実行することで実現される。
The
ロボット作成部601は、開発者の操作に応じてロボットの操作を実現するプログラムが作成されると、自動的にそのロボットに対応するクローラの操作を実現するプログラムも作成する。例えば、本実施の形態では、ロボットの処理をラップしてクローラの処理を自動作成するフレームワーク(クローラフレームワーク602)が参照される。
When a program for operating the robot is created according to the developer's operation, the
クローラフレームワーク602は、RPAロボットを開発する開発環境に適用するリソースファイルである。例えば、クローラフレームワーク602は、プラカブルなライブラリ、あるいはロボットのソースファイルの外枠として実現される。ロボット作成部601は、開発者の操作に応じて、このようなクローラフレームワーク602を利用してロボットのプログラム(ロボット実行部を実現するプログラム)を作成すると、対応するクローラのプログラム(クローラ実行部を実現するプログラム)を自動作成する。
The
なお、図13、図14では、ロボットエージェント130に含まれるロボットとクローラの各処理機能を、理解しやすいようにロボット実行部131とクローラ実行部132とに分けて示している。しかし、上記のクローラフレームワーク602を利用してロボットエージェント130を実現するプログラム(ロボットエージェントプログラム133)が作成された場合、実際には例えば、ロボットの処理の内部にクローラの処理が含まれる形態となる。一例としては、ロボットの処理を実現するプログラムのコード内に、実行引数=0の場合にのみ実行されるクローラ用コードが付加される。このようなクローラ用コードとしては、例えば、実行する操作がデータの登録、更新、削除の操作のいずれかである場合に操作をスキップするためのコードや、操作の実行エラーが発生したときにエラー情報を収集するためのコード、操作全体の終了時に収集されたエラー情報をRPA管理サーバ300に送信するためのコードが含まれる。
13 and 14, each processing function of the robot and the crawler included in the
以上のように、クローラフレームワーク602を利用することで、ロボットのプログラム作成時に対応するクローラのプログラムを自動的に作成できる。このため、ロボットエージェント130の開発者の手間を小さくすることができ、その開発効率を高め、開発コストを低減できる。
As described above, by using the
図15は、第4の実施の形態においてクローラが実行される場合の処理手順の例を示すシーケンス図である。図15では、図9と同様の処理には同じステップ番号を付して示している。図15に示すように、本実施の形態においてクローラが実行される場合には、図9におけるステップS13,S14の代わりにステップS13a,ステップS14aがそれぞれ実行される。 FIG. 15 is a sequence diagram illustrating an example of a processing procedure when a crawler is executed in the fourth embodiment; In FIG. 15, the same step numbers are assigned to the same processes as in FIG. As shown in FIG. 15, when the crawler is executed in this embodiment, steps S13a and S14a are executed instead of steps S13 and S14 in FIG.
[ステップS13a]RPA管理サーバ300のクローラ実行管理部322は、クローラの実行時刻になると(ステップS12:Yes)、クローラ実行マシン200に対して、実行引数=0を指定してRPAロボットの実行指示を送信する。
[Step S13a] When the crawler execution time comes (Step S12: Yes), the crawler
[ステップS14a]クローラ実行マシン200のロボットエージェント130aは、指定された実行引数=0に基づき、クローラ実行部132を起動する。これにより、クローラによる操作の自動実行が開始される。
[Step S14a] The
これ以後のステップS15~S21の処理は、クローラ実行部132によって実行される。
〔第5の実施の形態〕
次に、第4の実施の形態における処理の一部を変形した第5の実施の形態について説明する。
The processing of steps S15 to S21 after this is executed by the
[Fifth Embodiment]
Next, a description will be given of a fifth embodiment in which part of the processing in the fourth embodiment is modified.
図16は、第5の実施の形態におけるロボットエージェントについて示す図である。第5の実施の形態では、第4の実施の形態と同様に、ロボットとそれに対応するクローラの両方を実現するロボットエージェントが、ロボットごとに別々に作成される。図16では、図13と同様に、ロボット実行マシン100-1,100-2でそれぞれ別のロボットが実行される。また、各ロボットに対応するクローラがクローラ実行マシン200で実行される。
FIG. 16 is a diagram showing a robot agent according to the fifth embodiment. In the fifth embodiment, as in the fourth embodiment, robot agents that implement both the robot and its corresponding crawler are created separately for each robot. In FIG. 16, as in FIG. 13, different robots are executed by robot execution machines 100-1 and 100-2. Also, a crawler corresponding to each robot is executed by the
この場合、ロボット実行マシン100-1は、ロボットとクローラとを実現するロボットエージェント130a-1を備え、クローラ実行マシン200も、これと同様のロボットエージェント130a-1を備える。また、ロボット実行マシン100-2は、ロボットとクローラとを実現するロボットエージェント130a-2を備え、クローラ実行マシン200も、これと同様のロボットエージェント130a-2を備える。
In this case, the robot execution machine 100-1 has a
図13と同様に、ロボットエージェント130a-1は、ロボット実行部131-1とクローラ実行部132-1を備えている。ロボット実行マシン100-1のロボットエージェント130a-1に対しては、RPA管理サーバ300から実行引数=1が指定される。これにより、ロボット実行マシン100-1ではロボット実行部131-1が起動してロボットが動作する。一方、クローラ実行マシン200のロボットエージェント130a-1に対しては、RPA管理サーバ300から実行引数=0が指定される。これにより、クローラ実行マシン200ではクローラ実行部132-1が起動してクローラが動作する。
As in FIG. 13, the
同様に、ロボットエージェント130a-2は、ロボット実行部131-2とクローラ実行部132-2を備えている。ロボット実行マシン100-2のロボットエージェント130a-2に対しては、RPA管理サーバ300から実行引数=1が指定される。これにより、ロボット実行マシン100-2ではロボット実行部131-2が起動してロボットが動作する。一方、クローラ実行マシン200のロボットエージェント130a-2に対しては、RPA管理サーバ300から実行引数=0が指定される。これにより、クローラ実行マシン200ではクローラ実行部132-2が起動してクローラが動作する。
Similarly, the
ここで、前述の第4の実施の形態では、クローラは、対応するロボットのスクリプトに記述された操作のうち、データの登録操作、更新操作および削除操作をスキップすることで、業務に支障をきたすような登録情報の改変が行われないようにした。これに対して第5の実施の形態では、クローラは、対応するロボットのスクリプトに記述された操作をすべて実行する。その代わり、クローラは、クローラ専用のデータを用いて登録操作、更新操作および削除操作を実行する。これにより、業務に支障をきたすような登録情報の改変が行われないようにすることができる。 Here, in the above-described fourth embodiment, the crawler skips the data registration operation, update operation, and deletion operation among the operations described in the script of the corresponding robot, thereby causing trouble in the business. It prevents such modification of registration information. On the other hand, in the fifth embodiment, the crawler executes all the operations described in the script of the corresponding robot. Instead, the crawler performs registration, update, and delete operations using crawler-specific data. As a result, it is possible to prevent alteration of the registered information that would hinder business operations.
例えば、ロボット実行マシン100-1の記憶部120およびクローラ実行マシン200の記憶部220には、ロボット実行部131-1がデータの登録や更新の際に利用するデータが保存された登録情報データベース(DB)122a-1と、クローラ実行部132-1がデータの登録や更新の際に利用するデータが保存された、クローラ用の登録情報データベース(DB)222a-1とが記憶される。クローラ用の登録情報データベース222a-1には、例えば、アプリケーションを利用するためのユーザIDおよびパスワードや、WebサーバのサービスにログインするためのユーザIDおよびパスワードとして、ロボット実行部131-1が利用するデータとは別のデータが登録される。これにより、クローラ実行部132-1は、ロボット実行部131-1とは別のユーザとしてアプリケーションやWebサイトを操作する。この場合、クローラ用の登録情報データベース222a-1には、上記のユーザIDおよびパスワード以外のデータについては、ロボット用の登録情報データベース122a-1と同じデータが登録されていてもよい。
For example, in the
RPA管理サーバ300から実行引数=1が指定されてRPAロボットの実行が指示されたとき、ロボットエージェント130a-1はロボット実行部131-1を起動する。ロボット実行部131-1は、ロボット用の登録情報データベース122a-1を参照しながら操作の自動実行を行う。図16の例では、このような処理がロボット実行マシン100-1で実行される。一方、RPA管理サーバ300から実行引数=0が指定されてRPAロボットの実行が指示されたとき、ロボットエージェント130a-1はクローラ実行部132-1を起動する。クローラ実行部132-1は、クローラ用の登録情報データベース222a-1を参照しながら操作の自動実行を行う。図16の例では、このような処理がクローラ実行マシン200で実行される。
When the
同様に、ロボット実行マシン100-2の記憶部120およびクローラ実行マシン200の記憶部220には、ロボット実行部131-2がデータの登録や更新の際に利用するデータが保存された登録情報データベース(DB)122a-2と、クローラ実行部132-2がデータの登録や更新の際に利用するデータが保存された、クローラ用の登録情報データベース(DB)222a-2とが記憶される。
Similarly, the
RPA管理サーバ300から実行引数=1が指定されてRPAロボットの実行が指示されたとき、ロボットエージェント130a-2はロボット実行部131-2を起動する。ロボット実行部131-2は、ロボット用の登録情報データベース122a-2を参照しながら操作の自動実行を行う。図16の例では、このような処理がロボット実行マシン100-2で実行される。一方、RPA管理サーバ300から実行引数=0が指定されてRPAロボットの実行が指示されたとき、ロボットエージェント130a-2はクローラ実行部132-2を起動する。クローラ実行部132-2は、クローラ用の登録情報データベース222a-2を参照しながら操作の自動実行を行う。図16の例では、このような処理がクローラ実行マシン200で実行される。
When the
このように、クローラは、クローラ用の登録情報データベースに登録されたデータを操作画面の入力欄への入力データとして用いて、対応するロボットが実行するすべての操作を実行する。これにより、業務に支障をきたすことなく、操作対象の仕様変更やバージョンアップを実際の業務を行う前に検知できるようになる。 Thus, the crawler uses the data registered in the registration information database for the crawler as input data to the input fields of the operation screen, and executes all the operations that the corresponding robot executes. This makes it possible to detect specification changes and version upgrades of the operation target before the actual work is performed without interfering with the work.
なお、第5の実施の形態でも、ロボットエージェントプログラムの作成時においては、図14に示したクローラフレームワーク602を用いることで、ロボットのプログラムを作成した時点で、対応するクローラのプログラムを自動的に作成することができる。
Also in the fifth embodiment, when creating a robot agent program, by using the
なお、上記の各実施の形態に示した装置(例えば、情報処理装置1,2、管理装置3、ロボット実行マシン100、クローラ実行マシン200、RPA管理サーバ300、外部サーバ410、運用者端末420、開発者端末600)の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、磁気テープなどがある。光ディスクには、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク(Blu-ray Disc:BD、登録商標)などがある。
Note that the devices shown in the above embodiments (for example, the
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CDなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。 When distributing a program, for example, portable recording media such as DVDs and CDs on which the program is recorded are sold. It is also possible to store the program in the storage device of the server computer and transfer the program from the server computer to another computer via the network.
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。 A computer that executes a program stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. The computer then reads the program from its own storage device and executes processing according to the program. The computer can also read the program directly from the portable recording medium and execute processing according to the program. Also, the computer can execute processing according to the received program every time the program is transferred from a server computer connected via a network.
1,2 情報処理装置
3 管理装置
4 操作対象
11,21 RPAロボット
20 処理部
S1,S2 ステップ
1, 2
Claims (8)
RPA(Robotic Process Automation)ロボットが操作対象に対して実行する操作の少なくとも一部を実行する操作処理を、前記RPAロボットが実行されない時間帯に実行し、
前記操作処理において、前記操作対象に対する操作の実行エラーが発生した場合に、前記実行エラーの内容を示すエラー情報を収集し、
収集された前記エラー情報を所定の送信先装置に送信する、
処理を実行させる情報処理プログラム。 to the computer,
an RPA (Robotic Process Automation) robot performing an operation process for performing at least a part of an operation performed on an operation target during a time period when the RPA robot is not performed;
collecting error information indicating details of the execution error when an execution error occurs in the operation target in the operation processing;
transmitting the collected error information to a predetermined destination device;
An information processing program that causes a process to be executed.
請求項1記載の情報処理プログラム。 In the operation processing, among the operations performed by the RPA robot on the operation target, execution of each operation of data registration, data update, and data deletion is skipped.
The information processing program according to claim 1.
請求項1記載の情報処理プログラム。 In the operation process, all operations by the RPA robot are executed using input data different from input data used for inputting to the operation target when the RPA robot is executed.
The information processing program according to claim 1.
請求項1乃至3のいずれか1項に記載の情報処理プログラム。 Each of the operation processing and the error information collection and transmission processing is executed as processing of another RPA robot associated with the RPA robot,
The information processing program according to any one of claims 1 to 3.
前記RPAロボットの処理と、前記他のRPAロボットの処理とを、入力される実行指示情報に応じて前記コンピュータに選択的に実行させる、
請求項4記載の情報処理プログラム。 The information processing program is
causing the computer to selectively execute the processing of the RPA robot and the processing of the other RPA robot in accordance with input execution instruction information;
The information processing program according to claim 4.
請求項4または5記載の情報処理プログラム。 The program code indicating the processing procedure of the other RPA robot is automatically created using a predetermined framework when the program code indicating the processing procedure of the RPA robot is created.
6. The information processing program according to claim 4 or 5.
RPAロボットが操作対象に対して実行する操作の少なくとも一部を実行する操作処理を、前記RPAロボットが実行されない時間帯に実行し、
前記操作処理において、前記操作対象に対する操作の実行エラーが発生した場合に、前記実行エラーの内容を示すエラー情報を収集し、
収集された前記エラー情報を所定の送信先装置に送信する、
処理を実行する情報処理方法。 the computer
performing an operation process for performing at least part of an operation performed by an RPA robot on an operation target during a time period when the RPA robot is not performed;
collecting error information indicating details of the execution error when an execution error occurs in the operation target in the operation processing;
transmitting the collected error information to a predetermined destination device;
An information processing method that performs processing.
前記操作処理において、前記操作対象に対する操作の実行エラーが発生した場合に、前記実行エラーの内容を示すエラー情報を収集し、
収集された前記エラー情報を所定の送信先装置に送信する、処理部、
を有する情報処理装置。 performing an operation process for performing at least part of an operation performed by an RPA robot on an operation target during a time period when the RPA robot is not performed;
collecting error information indicating details of the execution error when an execution error occurs in the operation target in the operation processing;
a processing unit that transmits the collected error information to a predetermined destination device;
Information processing device having
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021131147A JP2023025792A (en) | 2021-08-11 | 2021-08-11 | Information processing program, information processing method, and information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021131147A JP2023025792A (en) | 2021-08-11 | 2021-08-11 | Information processing program, information processing method, and information processing device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023025792A true JP2023025792A (en) | 2023-02-24 |
Family
ID=85252333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021131147A Pending JP2023025792A (en) | 2021-08-11 | 2021-08-11 | Information processing program, information processing method, and information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023025792A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2025057333A1 (en) * | 2023-09-13 | 2025-03-20 | 日本電信電話株式会社 | Operation target modification system and operation target modification method |
-
2021
- 2021-08-11 JP JP2021131147A patent/JP2023025792A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2025057333A1 (en) * | 2023-09-13 | 2025-03-20 | 日本電信電話株式会社 | Operation target modification system and operation target modification method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11068323B2 (en) | Automatic registration of empty pointers | |
EP3769223B1 (en) | Unified test automation system | |
US7421683B2 (en) | Method for the use of information in an auxiliary data system in relation to automated testing of graphical user interface based applications | |
US8645326B2 (en) | System to plan, execute, store and query automation tests | |
Dunn | Software defect removal | |
RU2550520C1 (en) | Securing opportunities of configured technological process | |
US8898178B2 (en) | Solution monitoring system | |
US9268672B1 (en) | Automated test case generation for applications | |
US11042425B2 (en) | Creating and using a bridge for obtaining and displaying process cloud services (PCS) analytics data outside of the PCS | |
JP2019520649A (en) | Process visualization platform | |
US20110055714A1 (en) | Managing virtual machines | |
US20120144374A1 (en) | Capturing Replayable Information at Software Defect Locations in a Multi-Tenant Environment | |
CN102227716A (en) | Action verification device, action verification method, and action verification system | |
US8671122B2 (en) | Automatic reconciliation of discrepancies in asset attribute values | |
JP7299499B2 (en) | Information processing program, information processing method, and information processing apparatus | |
JP7162484B2 (en) | Help information display system, help information display device, help information display method, and help information display program | |
CN115210661A (en) | Enterprise flow diagram for representing RPA data | |
JP2023025792A (en) | Information processing program, information processing method, and information processing device | |
JP2014182646A (en) | Apparatus for monitoring execution of software, method and program | |
JP2024538886A (en) | Mapping interactive UI elements to the RPA object repository for RPA development | |
JP4681673B1 (en) | Operation verification apparatus, operation verification method, and operation verification program | |
US20060026227A1 (en) | Agent administration console software for servicing failed requests | |
JP7359544B2 (en) | Automatic work instruction system, method and program | |
JP2019128688A (en) | Operation management system | |
JP6019818B2 (en) | Management device, management program, management method |