JP2023536768A - コンピューティングプラットフォームのエンティティエンジン - Google Patents

コンピューティングプラットフォームのエンティティエンジン Download PDF

Info

Publication number
JP2023536768A
JP2023536768A JP2021569967A JP2021569967A JP2023536768A JP 2023536768 A JP2023536768 A JP 2023536768A JP 2021569967 A JP2021569967 A JP 2021569967A JP 2021569967 A JP2021569967 A JP 2021569967A JP 2023536768 A JP2023536768 A JP 2023536768A
Authority
JP
Japan
Prior art keywords
entity
entities
engine
computing device
entity engine
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
Application number
JP2021569967A
Other languages
English (en)
Inventor
サラフ,アンキット
グリゴーレ,ミルシア
カダキア,パラク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
UiPath Inc
Original Assignee
UiPath Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by UiPath Inc filed Critical UiPath Inc
Publication of JP2023536768A publication Critical patent/JP2023536768A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/288Entity relationship models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

メモリおよびプロセッサを含むコンピューティングデバイスが提供される。メモリは、エンティティエンジンのためのプロセッサ実行可能命令を格納する。プロセッサは、メモリに結合される。プロセッサは、エンティティエンジンを実行して、コンピューティングデバイスに、データを保持または分類するエンティティをモデル化させる。プロセッサは、エンティティエンジンを実行して、コンピューティングデバイスに、エンティティのそれぞれを特定するリストと、リストに対応するエンティティ自身とを、メモリに格納させる。プロセッサは、エンティティエンジンを実行して、外部システムからの選択入力に応答して、コンピューティングデバイスに、リストに基づくエンティティへのアクセスを提供させる。アクセスは、リストを外部システムに提供することと、エンティティのうち第1のエンティティを特定する選択入力を受信することと、第1のエンティティをメモリから外部システムにエクスポートすることとを含む。

Description

コンピューティングプラットフォーム上で実行される従来のソフトウェア製品は、コンピューティングプラットフォームのデジタルシステム内のデータのやり取りおよび/またはコンピューティングプラットフォーム内のソフトウェアプロセスなどの共通のアクションをエミュレートおよび統合する。
しかし、従来のソフトウェア製品またはコンピューティングプラットフォーム自体の代わりに、コンピューティングプラットフォームの外部のサービス(例えば、サードパーティのデータベース)を使用して、これらのデジタルシステムのインタラクションおよび任意のソフトウェアプロセスの実行に関して、永続的なビジネスデータが保存および管理される。永続的なビジネスデータに含まれる情報は、不揮発性メモリに保存され、最初の使用以降も存続する。
これらの外部サービスは、外部サービスがコンピューティングプラットフォームとどのようにインタラクションするか(例えば、外部サービスには構成および通信の問題が生じる)と、外部サービスがデータそのものをどのように管理するか(例えば、データはコンピューティングプラットフォームとは異なる方法で保存/整理され得る)とに関して、煩雑であり得る。さらに、外部サービスを介して永続的なビジネスデータを保存すると、データストレージ動作がコンピューティングプラットフォームの従来のソフトウェア製品から分散化され、コンピュータプラットフォームを使用する際のユーザー体験を分断する。
実施形態によれば、コンピューティングデバイスが提供される。コンピューティングデバイスは、メモリおよびプロセッサを含む。メモリは、エンティティエンジンのためのプロセッサ実行可能命令を格納する。プロセッサは、メモリに結合される。プロセッサは、エンティティエンジンを実行して、コンピューティングデバイスに、データを保持または分類するエンティティをモデル化させる。プロセッサは、エンティティエンジンを実行して、コンピューティングデバイスに、エンティティのそれぞれを特定するリストと、リストに対応するエンティティ自身とを、メモリに格納させる。プロセッサは、エンティティエンジンを実行して、外部システムからの選択入力に応答して、コンピューティングデバイスに、リストに基づくエンティティへのアクセスを提供させる。アクセスは、リストを外部システムに提供することと、エンティティのうち第1のエンティティを特定する選択入力を受信することと、第1のエンティティをメモリから外部システムにエクスポートすることとを含む。
1または複数の実施形態によれば、上記のコンピューティングデバイスの実施形態は、方法、装置、システム、および/またはコンピュータプログラム製品として実施され得る。
より詳細な理解は、図中の類似の参照数字が類似の要素を示す、添付の図面との関連で例示的に与えられた以下の説明から得られ得る。
1または複数の実施形態によるロボティックプロセスオートメーション(RPA)の開発、設計、運用、または実行の説明図である。
1または複数の実施形態によるRPAの開発、設計、運用、または実行の別の説明図である。
1または複数の実施形態によるコンピューティングシステムまたは環境の説明図である。
1または複数の実施形態によるコンピューティングシステムまたは環境によって実行されるプロセスフローを示すブロック図である。
1または複数の実施形態によるコンピューティングシステムまたは環境によって実行されるプロセスフローを示すブロック図である。
1または複数の実施形態によるエンティティエンジンの動作を示す図である。
1または複数の実施形態によるユーザーインターフェースの図である。
1または複数の実施形態によるユーザーインターフェースの図である。
(詳細な説明)
1または複数の実施形態によるエンティティエンジンが、本明細書で開示される。エンティティエンジンは、コンピューティングシステムまたは環境(例えば、図1Cのコンピューティングシステムまたは環境140)によるプロセス動作へのルーティングを必要しかつコンピューティングシステムまたは環境の処理ハードウェア中へのルーティングを必要とするプロセッサ実行可能コードまたはソフトウェアであり、データ(例えば、永続的な顧客関連ビジネスデータ)を保存および管理するエンティティをモデル化および統合する永続的なデータストレージサービスを提供する。このように、1または複数の実施形態によれば、エンティティエンジンは、コンピューティングシステムまたは環境のアプリケーション開発およびデプロイメントプラットフォームのための特定の構成およびツーリングロボティックプロセスオートメーション方法を提供する。この具体的な構成およびツーリングロボティックプロセスオートメーション方法は、開発およびデプロイメントプラットフォームの動作に関連して、エンティティおよびこれらのエンティティが指し示すデータの多段階の操作(例えば、エンティティおよびデータの多段階の作成/定義/更新/読み取り/削除/問い合わせ(クエリ)動作)を伴う。
エンティティは、他のエンティティとの関係が明記されている、分類されたデータ単位である。エンティティエンジンおよびその動作により、各エンティティの能力が、データおよびデータを操作する特定された方法を双方が保持するカスタムクラスオブジェクトまたはインスタンスに拡張される。エンティティの例は、プログラム要素、手順、演算子、インターフェースブロック、入出力ユニット、シンボル定数、記録構造およびステートメントラベルを含み、そのそれぞれが、エンティティと共にデータが格納されている人、場所、物、概念、物理的オブジェクト、および/またはイベントなどを特定し得る。エンティティエンジンは、エンティティを使用してデータベースを作成し、開発ランタイムおよび/またはデプロイメントランタイム中にデータベースを管理および利用する(例えば、各エンティティは、他のエンティティと通信するアクティブ要素である)。
この点および操作において、エンティティエンジンは1または複数のエンティティをモデル化する。各エンティティは、データを保持または分類し、その中の1または複数のプロパティ/フィールド/行に関して、データに関連する変数を定義する。エンティティエンジンは、リストを(例えば、コンピューティングシステムまたは環境のメモリに)格納する。リストは、1または複数のエンティティのそれぞれを特定する。また、エンティティエンジンは、1または複数のエンティティをリストに対応させて(例えば、メモリに)格納する。エンティティエンジンは、(例えば、外部システムからの)選択入力に応答して、リストに基づいて1または複数のエンティティへのアクセスを提供する。アクセスを提供する例では、エンティティエンジンは、リストを外部システムに提供し、1または複数のエンティティの第1のエンティティを特定する選択入力を受信し、そして第1のエンティティをメモリから外部システムにエクスポートする。また、エンティティエンジンは、本明細書に記載されているように、アクセスの認証および許可も行い得る。
エンティティエンジンおよびその中のエンティティの技術的効果および利点は、永続的なデータストレージサービスを提供することを含み、これにより、ユーザーは、開発および/またはデプロイメントプラットフォームにおいて、データの生成、集中化、アクセス、および使用をシームレスに行うことができる(例えば、それによって、外部サービスの複雑さおよび欠陥を回避する)。さらに、集中化およびシームレスなアクセスにより、エンティティエンジンおよびエンティティ自体により、開発者が外部サービスでは利用できないそれらのデータを使った製品および機能を構築することが可能にされ得る。例えば、外部サービスでは、任意の格納されるデータにアクセスするために明示的な資格情報が一般的に必要であり、ウェブサービスを作成するための制約となるREST(Representational State Transfer)クエリを利用する。一方、エンティティエンジンは、設計/実行時に認証および認可操作を統合しているため、開発者は、明示的な資格情報を提供したり使用したりする必要のない製品および機能を構築することができ、一方で、エンティティ自体は、RESTクエリおよびその制約を扱う必要なく、エンティティエンジンによるアクティビティ(データのフェッチおよび書き込みなど)を可能にする。
本明細書に記載されている方法およびプロセスでは、記載されているステップは任意の順序で順不同で実行され得、明示的に記載または表示されていないサブステップが実行され得る。また、「結合されている」または「動作的に結合されている」とは、オブジェクトが連結されていることを意味し得るが、連結されているオブジェクトの間にゼロまたはそれ以上の中間オブジェクトを有してもよい。また、開示された特徴/要素の任意の組み合わせが、1または複数の実施形態で使用され得る。「AまたはB」への言及が用いられる場合、A、B、またはAおよびBが含まれ得、このような様態でより長い羅列に拡張され得る。X/Yという表記を使用する場合、XまたはYを含み得る。あるいは、X/Yという表記を使用する場合、XおよびYを含み得る。X/Yという表記は、上記に説明した論理により、同様により長い羅列に拡張され得る。
図1Aは、ロボティックプロセスオートメーション(RPA)の開発、設計、運用、または実行100の説明図である。デザイナ102は、スタジオ、1または複数のエンジン(例えば、エンティティエンジン)を含む開発プラットフォーム、開発環境などとも呼ばれ、ロボットが1または複数のワークフローを実行または自動化するためのコード、命令、コマンドなどを生成するように構成され得る。コンピューティングシステムがロボットに提供し得る選択物(複数可)から、ロボットは、ユーザーまたはオペレータによって選択されたビジュアルディスプレイの領域(複数可)の代表的なデータを決定し得る。RPAの一環として、コンピュータビジョン(CV)操作または機械学習(ML)モデルに関連して、四角、長方形、円、多角形、自由形などの多次元の形状が、UIロボットの開発およびランタイムに利用され得る。
ワークフローによって達成され得る操作の非限定的な例としては、ログインの実行、フォームへの入力、情報技術(IT)管理などのうちの1または複数であり得る。UIオートメーションのためのワークフローを実行するために、ロボットは、アプリケーションのアクセスまたはアプリケーションの開発に関係なく、ボタン、チェックボックス、テキストフィールド、ラベルなどの特定の画面要素を一意に特定する必要があり得る。アプリケーションアクセスの例としては、ローカル、仮想、リモート、クラウド、Citrix(登録商標)、VMWare(登録商標)、VNC(登録商標)、Windows(登録商標)リモートデスクトップ、仮想デスクトップインフラストラクチャ(VDI)などがあり得る。アプリケーション開発の例としては、win32、Java、Flash、ハイパーテキストマークアップ言語(HTML)、HTML5、拡張可能なマークアップ言語(XML)、JavaScript、C#、C++、Silverlightなどがあり得る。
ワークフローには、タスクシーケンス、フローチャート、有限状態マシン(FSM)、グローバル例外ハンドラなどが含まれ得るが、これらに限定されない。タスクシーケンスは、1または複数のアプリケーションまたはウィンドウ間の線形タスクを処理するための線形プロセスであり得る。フローチャートは、複雑なビジネスロジックを扱うように構成され得、複数の分岐ロジックオペレータを介して、より多様な方法で意思決定の統合およびアクティビティの接続を可能にする。FSMは、大規模なワークフロー用に構成され得る。FSMは、条件、遷移、アクティビティなどによってトリガされ得る有限数の状態を実行時に使用し得る。グローバル例外ハンドラは、プロセスのデバッグプロセスなどのために、実行エラーが発生したときのワークフロー挙動を決定するように構成され得る。
ロボットは、アプリケーション、アプレット、スクリプトなどであり得、基盤となるオペレーティングシステム(OS)またはハードウェアに対して透過的なUIを自動化させ得る。展開時には、1または複数のロボットは、コンダクタ104(オーケストレータとも呼ばれる)によって管理、制御などされ得る。コンダクタ104は、メインフレーム、ウェブ、仮想マシン、リモートマシン、仮想デスクトップ、エンタープライズプラットフォーム、デスクトップアプリ(複数可)、ブラウザ、またはそのようなクライアント、アプリケーション、もしくはプログラムにおいてワークフローを実行または監視するようにロボット(複数可)または自動化エグゼキュータ106に指示または命令し得る。コンダクタ104は、コンピューティングプラットフォームを自動化するように複数のロボットに指示または命令するための中央または半中央点として機能し得る。
特定の構成では、コンダクタ104は、プロビジョニング、展開、構成、キューイング、監視、ロギング、および/または相互接続性を提供するように構成され得る。プロビジョニングは、ロボット(複数可)または自動化エグゼキュータ106とコンダクタ104との間の接続または通信の生成および維持を含み得る。展開は、割り当てられたロボットへのパッケージバージョンの(実行のための)配信を保証することを含み得る。構成は、ロボット環境およびプロセス構成の維持および配信を含み得る。キューイングは、キューおよびキュー項目の管理を提供することを含み得る。監視は、ロボットの特定データを追跡し、ユーザーの権限を維持することを含み得る。ロギングは、データベース(例えば、SQLデータベース)および/または別のストレージメカニズム(例えば、大規模なデータセットを格納し、迅速にクエリを実行する能力を提供するElasticSearch(登録商標)へのログの保存およびインデックス作成を含み得る。コンダクタ104は、サードパーティソリューションおよび/またはアプリケーションのための通信の集中点として操作することにより、相互接続性を提供し得る。
ロボット(複数可)または自動化エグゼキュータ106は、アンアテンディッド108またはアテンディッド110として構成され得る。アンアテンディッド108の動作の場合、自動化は、サードパーティの入力または制御なしで実行され得る。アテンディッド110の動作の場合、サードパーティのコンポーネントからの入力、コマンド、指示、指導などを受信して自動化が行われ得る。アンアテンディッド108またはアテンディッド110のロボットは、モバイルコンピューティング環境またはモバイルデバイス環境において動作または実行し得る。
ロボット(複数可)または自動化エグゼキュータ106は、デザイナ102内に構築されたワークフローを実行する実行エージェントであり得る。UIまたはソフトウェアの自動化のためのロボット(複数可)の商業的な例としては、UiPath Robots(商標)がある。いくつかの実施形態では、ロボット(複数可)または自動化エグゼキュータ106は、Microsoft Windows(登録商標) Service Control Manager(SCM)管理サービスをデフォルトでインストールし得る。その結果、そのようなロボットは、ローカルシステムアカウントの下でインタラクティブなWindows(登録商標)セッションを開くことができ、Windows(登録商標)サービスの権利を持ち得る。
いくつかの実施形態では、ロボット(複数可)または自動化エグゼキュータ106は、ユーザーモードでインストールされ得る。これらのロボットは、所定のロボットが設置されているユーザーと同じ権利を持ち得る。この特徴は、例えば高密度(HD)環境において最大のパフォーマンスで各マシンを完全に利用できるようにする高密度(HD)ロボットにおいても使用可能であり得る。
特定の実施形態では、ロボット(複数可)または自動化エグゼキュータ106は、それぞれが特定の自動化タスクまたはアクティビティに専用に用いられるいくつかのコンポーネントに分割、分散などされ得る。ロボットコンポーネントには、SCM管理ロボットサービス、ユーザーモードロボットサービス、エグゼキュータ、エージェント、コマンドラインなどが含まれ得る。SCM管理ロボットサービスは、Windows(登録商標)セッションを管理または監視し得、コンダクタ104と実行ホスト(すなわち、ロボット(複数可)または自動化エグゼキュータ106が実行されるコンピューティングシステム)との間のプロキシとして機能し得る。これらのサービスは、信頼され得、ロボット(複数可)または自動化エグゼキュータ106の資格情報を管理し得る。
ユーザーモードロボットサービスは、Windows(登録商標)セッションを管理および監視し、コンダクタ104と実行ホストとの間のプロキシとして機能し得る。ユーザーモードロボットサービスは、信頼され得、ロボットの資格情報を管理し得る。SCM管理ロボットサービスがインストールされていない場合、Windows(登録商標)アプリケーションが自動的に起動され得る。
エグゼキュータは、Windows(登録商標)セッションの下で与えられたジョブを実行し得る(つまり、ワークフローを実行し得る)。エグゼキュータは、モニタ毎のドットパーインチ(DPI)設定を認識し得る。エージェントは、システムトレイウィンドウに利用可能なジョブを表示するWindows(登録商標) Presentation Foundation(WPF)アプリケーションであり得る。エージェントはサービスのクライアントとなり得る。エージェントは、ジョブの開始または停止、設定の変更を要求し得る。コマンドラインはサービスのクライアントとなり得る。コマンドラインは、ジョブの開始を要求し、その出力を待つことができるコンソールアプリケーションである。
上で説明したように、ロボット(複数可)または自動化エグゼキュータ106のコンポーネントが分割される構成では、開発者、サポートユーザー、およびコンピューティングシステムが、各コンポーネントによる実行、特定および追跡をより容易に実行するのに役立つ。このようにして、エグゼキュータとサービスに異なるファイアウォールルールを設定するなど、コンポーネントごとに特別な挙動が構成され得る。エグゼキュータは、いくつかの実施形態では、モニタごとのDPI設定を認識し得る。その結果、ワークフローは、ワークフローが作成されたコンピューティングシステムの構成に関係なく、任意のDPIにおいて実行され得る。デザイナ102からのプロジェクトも、ブラウザのズームレベルから独立し得る。DPIを認識していないかまたは意図的に認識していないとマークされているアプリケーションの場合、いくつかの実施形態では、DPIを無効にし得る。
図1Bは、RPAの開発、設計、運用、または実行120の別の説明図である。スタジオコンポーネントまたはモジュール122は、ロボットが1または複数のアクティビティ124を実行するためのコード、命令、コマンドなどを生成するように構成され得る。ユーザーインターフェース(UI)オートメーション126は、1または複数のドライバ(複数可)コンポーネント128を使用して、クライアント上のロボットによって実行され得る。ロボットは、コンピュータビジョン(CV)アクティビティモジュールまたはエンジン130を使用してアクティビティを行い得る。他のドライバ132が、UIの要素を得るためにロボットによるUIオートメーションのために利用され得る。他のドライバ132には、OSドライバ、ブラウザドライバ、仮想マシンドライバ、エンタープライズドライバなどが含まれ得る。特定の構成では、CVアクティビティモジュールまたはエンジン130は、UIオートメーションのために使用されるドライバであり得る。
図1Cは、情報またはデータを通信するためのバス142または他の通信機構と、処理のためにバス142に結合された1または複数のプロセッサ(複数可)144とを含むことができるコンピューティングシステムまたは環境140の説明図である。1または複数のプロセッサ(複数可)144は、中央処理ユニット(CPU)、特定用途集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、グラフィックス処理ユニット(GPU)、コントローラ、マルチコア処理ユニット、3次元プロセッサ、量子コンピューティングデバイス、またはそれらの任意の組み合わせを含む、任意のタイプの汎用または特定用途プロセッサであり得る。1または複数のプロセッサ(複数可)144は、複数の処理コアを有してもよく、コアの少なくとも一部は、特定の機能を実行するように構成され得る。また、マルチパラレル処理が構成され得る。さらに、少なくとも1または複数のプロセッサ(複数可)144は、生物学的ニューロンを模倣する処理要素を含むニューロモーフィック回路であり得る。
メモリ146は、プロセッサ(複数可)144によって実行または処理される情報、命令、コマンド、またはデータを格納するように構成され得る。メモリ146は、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、フラッシュメモリ、ソリッドステートメモリ、キャッシュ、磁気ディスクもしくは光ディスクなどの静的記憶装置、または他のタイプの非一時的なコンピュータ読み取り可能な媒体、あるいはそれらの組み合わせの任意の組み合わせで構成され得る。非一時的なコンピュータ読み取り可能な媒体は、プロセッサ(複数可)144によってアクセス可能な任意の媒体であり得、揮発性媒体、不揮発性媒体などを含み得る。また、媒体は、取り外し可能なものであってもよいし、取り外し不可能なものなどであってもよい。
通信装置148は、周波数分割多元接続(FDMA)、シングルキャリアFDMA(SC-FDMA)、時分割多元接続(TDMA)、符号分割多元接続(CDMA)、直交周波数分割多重方式(OFDM)、直交周波数分割多元接続(OFDMA)、移動体用グローバルシステム(GSM:Global System for Mobile)通信、汎用パケット無線サービス(GPRS:General Packet Radio Service)、ユニバーサル移動体通信システム(UMTS:Universal Mobile Telecommunications System)、cdma2000、広帯域CDMA(W-CDMA:Wideband CDMA)、高速ダウンリンクパケットアクセス(HSDPA:High-Speed Downlink Packet Access)、高速アップリンクパケットアクセス(HSUPA:High-Speed Uplink Packet Access)、高速パケットアクセス(HSPA:High-Speed Packet Access)、ロングタームエボリューション(LTE:Long Term Evolution)、LTEアドバンスト(LTE-A:LTE Advanced)、802.11x、Wi-Fi、Zigbee、超広帯域無線(UWB:Ultra-WideBand)、802.16x、802.15、Home Node-B(HnB)、Bluetooth、無線IDタグ(RFID:Radio Frequency Identification)、IrDA(Infrared Data Association)、近距離無線通信(NFC:Near-Field Communications)、第5世代(5G)、New Radio(NR)、または、1もしくは複数のアンテナを介して通信するためのいずれかの他の無線もしくは有線のデバイス/トランシーバとして構成され得る。アンテナは、単数型、アレイ型、フェーズド型、スイッチ型、ビームフォーミング型、ビームステア型などであり得る。
1または複数のプロセッサ(複数可)144は、バス142を介して、プラズマ、液晶ディスプレイ(LCD)、発光ダイオード(LED)、フィールドエミッションディスプレイ(FED)、有機発光ダイオード(OLED)、フレキシブルOLED、フレキシブル基板ディスプレイ、プロジェクションディスプレイ、4Kディスプレイ、高精細(HD)ディスプレイ、Retina(著作権)ディスプレイ、面内スイッチング(IPS)またはそのようなベースのディスプレイなどのディスプレイデバイス150にさらに結合され得る。ディスプレイデバイス150は、入力/出力(I/O)のために、当業者に理解されるように、抵抗性、静電容量性、表面音響波(SAW)静電容量性、赤外線、光学イメージング、分散信号技術、音響パルス認識、フラストレート全内部反射などを用いたタッチ、3次元(3D)タッチ、マルチ入力タッチ、またはマルチタッチディスプレイとして構成され得る。
キーボード152およびコンピュータマウス、タッチパッドなどの制御装置154は、コンピューティングシステムまたは環境140への入力のためにバス142にさらに結合され得る。さらに、入力は、コンピューティングシステムまたは環境140と通信している別のコンピューティングシステムを介してリモートでコンピューティングシステムまたは環境140に提供されてもよいし、コンピューティングシステムまたは環境140が自律的に動作してもよい。
メモリ146は、1または複数のプロセッサ(複数可)144によって実行または処理されたときに機能を提供するソフトウェアコンポーネント、モジュール、エンジンなどを格納し得る。これは、コンピューティングシステムまたは環境140のためのOS156を含み得る。モジュールは、アプリケーション特有のプロセスまたはその派生物を実行するためのカスタムモジュール158をさらに含み得る。コンピューティングシステムまたは環境140は、付加的な機能を含む1または複数の付加的な機能モジュール160を含み得る。例えば、エンティティエンジンは、モジュール158および160のうちの1または複数に実装されて、特定の構成およびツーリングロボティックプロセスオートメーション方法をコンピューティングシステムまたは環境140に提供し得る。
コンピューティングシステムまたは環境140は、サーバー、組み込みコンピューティングシステム、パーソナルコンピュータ、コンソール、パーソナルデジタルアシスタント(PDA)、携帯電話、タブレットコンピューティングデバイス、量子コンピューティングデバイス、クラウドコンピューティングデバイス、モバイルデバイス、スマートフォン、固定型モバイルデバイス、スマートディスプレイ、ウェアラブルコンピュータなどとして実行するように適合または構成され得る。
本明細書に記載された例では、モジュールは、カスタムの超大型集積(VLSI)回路またはゲートアレイ、ロジックチップ、トランジスタ、または他の個別部品のような既製の半導体を含むハードウェア回路として実装され得る。また、モジュールは、フィールドプログラマブルゲートアレイ、プログラマブルアレイロジック、プログラマブルロジック装置、グラフィックス処理ユニットなどのプログラマブルハードウェア装置に実装され得る。
モジュールは、様々なタイプのプロセッサによって実行されるためのソフトウェアに少なくとも部分的に実装され得る。特定された実行可能コードのユニットは、例えば、オブジェクト、プロシージャ、ルーチン、サブルーチン、または関数として編成され得るコンピュータ命令の1または複数の物理的または論理的なブロックを含み得る。特定されたモジュールの実行可能は、論理的に結合されるとモジュールを構成するように、異なる位置において共に配置され得るかまたは格納され得る。
実行可能なコードのモジュールは、単一の命令、1または複数のデータ構造、1または複数のデータセット、複数の命令などであり、複数の異なるコードセグメント、異なるプログラム間、複数のメモリデバイス間などに分散され得る。動作データまたは機能データは、本明細書中においてモジュール内において特定および図示され得、適切な形態において具現化され得、任意の適切なタイプのデータ構造内において組織化され得る。
本明細書で説明された例では、コンピュータプログラムは、ハードウェア、ソフトウェア、またはハイブリッド実装の様態で構成され得る。コンピュータプログラムは、互いに動作可能な通信を行い、情報または指示を渡すためのモジュールによって構成され得る。
特徴および要素は、特定の組み合わせで上に記載されているが、各特徴または要素は、単独で、または他の特徴および要素と任意の組み合わせで使用することができることが、当業者には理解されるであろう。さらに、本明細書に記載された方法は、コンピュータまたはプロセッサによって実行されるために、コンピュータ読み取り可能な媒体に組み込まれたコンピュータプログラム、ソフトウェア、またはファームウェアに実装され得る。コンピュータ読み取り可能な媒体の例としては、電子信号(有線または無線接続を介して送信される)およびコンピュータ読み取り可能なストレージ媒体が挙げられる。コンピュータ読み取り可能なストレージ媒体の例としては、読み出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、レジスタ、キャッシュメモリ、半導体記憶デバイス、内蔵ハードディスクおよびリムーバブルディスクなどの磁気媒体、磁気光学媒体、ならびにCD-ROMディスクおよびデジタル多目的ディスク(DVD)などの光学媒体が挙げられるが、これらに限定されない。
次に図2に目を向けると、1または複数の実施形態によるコンピューティングシステムまたは環境(例えば、図1Cのコンピューティングシステムまたは環境140)によって実行されるプロセスフロー200を示すブロック図である。プロセスフロー200は、開発またはデプロイメントプラットフォーム(例えば、図1Aのデザイナ104および/またはコンダクタ106)で実行するエンティティエンジンによる動作のための方法の一例の実施である。
一般的に、プロセスフロー200は、データ(例えば、記録、文書などの永続的な顧客関連ビジネスデータ)を安全に格納および管理することができる開発またはデプロイメントプラットフォームのための永続的なデータストレージサービス(例えば、ビジネスユーザーフレンドリーなエンティティ)を提供する。例えば、エンティティエンジンは、開発プラットフォームのコンテキスト中で、ユーザーが外部のビジネスカスタムクラスオブジェクトまたはインスタンス(例えば、エンティティ)を定義/修正し、それらのエンティティの記録を格納し、それらの記録/エンティティに関連する文書と共に格納できるようにする。その後、これらのエンティティはデプロイメントプラットフォームに統合され、ユーザーがこれらのエンティティを使用できるようにし、プロジェクトごとに必要な変数/引数の数を減らし、ワークフローのためのデータに一貫した構造を提供する。このように、プロセスフロー200は、統合された認証および認可と共に、エンティティおよびその中のデータを作成/定義/更新/読み取り/削除/問い合わせする1組のアクティビティを含む。
ブロック210では、エンティティエンジンは、1または複数のエンティティをモデル化する。各エンティティは、データ中の1または複数のプロパティ/フィールド/列に関して、当該データを保持または分類するように構成され得る。各エンティティは、データに関連する変数を定義するように構成され得る。1または複数のエンティティのそれぞれは、エンティティタイプおよび/または他のエンティティへのリンクを定義する構成可能な構造(例えば、エンティティ定義とも呼ばれる)を含み得る。1または複数の実施形態によれば、エンティティは、変数を定義するリッチオブジェクト/クラスであり、開発および/またはデプロイメントプラットフォームのネイティブプログラミングモデルで利用可能である。リッチオブジェクト/クラスとしてのエンティティの例は、限定されないが、「.NET」オブジェクト、「.NET」、クラス、JavaクラスおよびJSクラスを含む。エンティティによって保持または特定されるデータは、少なくともフォーム、文書、インボイス、および/または記録を、任意の量、文字、記号、および/または構造とともに含み、これらに対してコンピュータ動作が実行される。
ブロック220で、エンティティエンジンは、1または複数のエンティティのそれぞれを特定するリストを格納する。このリストは、一般的に1または複数のエンティティに対応する1または複数の識別子を含む/格納する任意のデータ構造を表す。このリストは、1または複数のエンティティに関してアクセス可能な1または複数のサービスインスタンスに対応する1または複数の識別子も含む/格納し得る。1または複数の実施形態によると、リストおよび1または複数のエンティティは、同じメモリに格納され得る(例えば、エンティティエンジンはまた、リストに対応して1または複数のエンティティを格納する)。ユーザーまたはプロセスは、エンティティエンジンからリストを要求し得ることに留意されたい。1または複数の実施形態によれば、リストは、エンティティストアとして実施され得る。エンティティストアは、ユーザーがリストされたエンティティを閲覧、編集および使用することを可能にするデジタル配信プラットフォームであり得る。エンティティストアは、各エンティティの1または複数のバージョンを格納/項目化/指し示し、バージョンの日付を特定し、バージョンの可用性を示し得る。
ブロック230および240において、エンティティエンジンは、1または複数のエンティティへのアクセスを認証および許可する。エンティティエンジンによる認証は、ユーザーまたはプロセスの特定など、何かが真であること、本物であること、または有効であることを証明する動作を含む。1または複数の実施形態によると、エンティティエンジンは、トークンに基づく認証操作を使用して、1または複数のエンティティへのアクセスを認証し得る。トークンに基づく認証操作は、セキュリティトークンを使用して、エンティティにアクセスしようとする使用またはプロセスを認証することを含む。エンティティエンジンによる認可は、何か(例えば、ユーザーまたはプロセス)が何にアクセスできるかを検証する操作を含む。
一例では、ユーザーは、エンティティを呼び出すプロセスをトリガし得る。これに関連して、ユーザーは、リスト中において項目化された1または複数のエンティティのうちの第1のエンティティを特定する選択入力を(セキュリティトークンと共に)提供し得る。別の例では、選択入力および/またはセキュリティトークンは、(例えば、図1Aの自動化エグゼキュータ106またはデザイナ102によって)自動的に提供され得る。ユーザーまたはプロセスは、選択入力を提出する前にリストを要求することができることに留意されたい。ユーザーは、外部システムを操作している場合がある。次に、リストは、エンティティエンジンによって外部システムに提供され得る。エンティティエンジンは、まず、セキュリティトークンを検証するなどして、ユーザーを認証する。次に、エンティティエンジンは、ユーザーが第1のエンティティにアクセスする権限を持っていることを決定することによって、ユーザーを認証する。認証および認可の両方が成功した場合、プロセスフロー200はブロック250に進む。
ブロック250では、エンティティエンジンは、1または複数のエンティティへのアクセスを提供する。このアクセスは、外部システムからの選択入力に応答して行われ得、リストに基づき得る。例えば、アクセスは、リストを外部システムに提供することと、第1のエンティティを特定する選択入力を受信することと、第1のエンティティをメモリから外部システムにエクスポートすることとを含み得る。
次に図3に目を向けると、永続的なデータストレージサービスを提供するエンティティエンジンのコンポーネントおよび操作が、1または複数の実施形態によって説明される。詳細には、図3は、エンティティエンジン301の1または複数のインスタンスを含むシステム300の説明図である。一般的に、エンティティエンジン301の動作は、限定されないが、開発/デプロイメントデータサービス、エンティティデプロイメント統合、統合スキーマおよびアクティビティ、エンティティのインポート/エクスポート、インポート/エクスポートされたエンティティ表現、およびエンティティ表示を含み得る。図3に示すように、システム300は、ユーザーデバイス305、開発プラットフォーム310、およびデプロイメントプラットフォーム315を含み、これらの各々は、(破線の矢印A、B、およびCで示すように)通信して、エンティティエンジン301のインスタンスを提供および/またはインタラクションする(例えば、エンティティエンジンの第1のインスタンスが開発プラットフォーム310に示され、エンティティエンジンの第2のインスタンスがデプロイメントプラットフォーム315に示されていることに留意されたい)。エンティティエンジン301のインスタンスは、開発プラットフォーム310およびデプロイメントプラットフォーム315(本明細書では、これらは、プラットフォームと総称され得る)にローカルなものとして示されているが、エンティティエンジン301は、ユーザーデバイス305にローカルなもの、またはシステム300の他のコンポーネントと通信するスタンドアロンのハードウェア/ソフトウェアの組み合わせにローカルなものとすることもできることに留意されたい。これに関連して、エンティティエンジン301の各インスタンスは、同一のものであってもよいし、その外部バージョンであってもよい。さらに、認証システム300の各項目またはコンポーネントについて単一のブロックが示されているが、その単一のブロックは、その項目またはコンポーネントの1または複数を表す。
ユーザーデバイス305は、それぞれが少なくともプロセッサ、メモリ、およびユーザーインターフェースを備えたディスプレイを含む、1または複数のユーザーデバイスを表す。ユーザーデバイス305の例は、限定されないが、パーソナルコンピュータ、PDA、携帯電話、タブレットコンピューティングデバイス、モバイルデバイス、およびスマートフォンを含む。ユーザーデバイス305は、ユーザーデバイス305のディスプレイ(例えば、ユーザーインターフェース)上に1または複数の画面を提供するローカルアプリケーション320(例えば、モバイルアプリケーション)および1または複数のロボティックプロセス325を実行し得る。ローカルアプリケーション320(ユーザーインターフェースを介したユーザーを介して)またはロボティックプロセス325は、選択入力330を生成し、選択入力330をセキュリティトークン335と通信させ得る。
開発プラットフォーム310および/またはデプロイメントプラットフォーム315は、1または複数のロボティックプロセス325を係合させ、少なくとも1つのエンティティ340および少なくとも1つのリスト345を含む、エンティティエンジン301(その第1または第2のインスタンスのいずれか)を実行するための1または複数のデバイス(例えば、パーソナルコンピュータ、タブレットコンピューティングデバイス、デスクトップデバイスなど)を表す。リスト345は、少なくとも1つのエンティティ340を特定する。少なくとも1つのエンティティ340は、保持データ348および/またはプロパティ349に関して、1または複数のフィールド347を含み得る。フィールド347に関連するプロパティ349は、フィールドタイプまたはフィールド347が保持する情報のタイプ(例えば、文字列、ブール値など)を定義し得る。また、プロパティは、フィールド347自体に格納されている情報であり得る。フィールドの組み合わせにより、1または複数の列、行、および/または表が生成され得る。
1または複数の実施形態によれば、開発プラットフォーム310および/またはオンラインプラットフォーム315は、ネットワーク、サーバー、ストレージサービス、オペレーティングシステム、データベースサービス、およびセキュリティサービスをユーザーデバイス305(例えば、エンティティエンジン330の1または複数のインスタンス)に提供する1または複数のソフトウェア、インフラストラクチャ、プラットフォームに基づくサービスを表す。例えば、開発プラットフォーム310は、グラフィカルユーザーインターフェースおよび構成を通じてアプリケーションソフトウェアを構築するために使用される作成環境を提供し、デプロイメントプラットフォーム315は、開発プラットフォーム310で構築されたアプリケーションソフトウェアが実施される実行環境を提供する。1または複数の実施形態によると、エンティティエンジン301は、(配置場所に関係無く)1または複数のプラットフォームに統合されて、一貫した構造を提供し、ユーザーが内部におけるワークフロー(例えば、リッチなネイティブプログラミングモデルオブジェクトを通じたRPA/ワークフロー)に関して少なくとも1つのエンティティ340を使用できることを可能にし得る。
例示的な動作において、ローカルアプリケーション320は(ユーザーインターフェースを通じたユーザーを介して)またはロボティックプロセス325は、エンティティエンジン301のエンティティ340を作成/定義/更新/読み取り/削除/問い合わせすることができ、一方で、エンティティエンジン301は、リスト345に対応して1または複数のエンティティ340を(例えば、開発プラットフォーム310および/またはオンラインプラットフォーム315のいずれかのメモリに)格納する。本明細書で述べたように、エンティティ340は、データ348と、データ348を操作する方法との両方を保持するカスタムクラスオブジェクトまたはインスタンスであり得る。さらに、エンティティエンジン301は、リスト345をローカルアプリケーション320またはロボティックプロセス325に提供する。リスト345を使用して、ローカルアプリケーション320またはロボティックプロセス325は、選択入力330をセキュリティトークン335と共に、エンティティエンジン301のいずれかのインスタンスに提出し得る。次に、エンティティエンジン301は、1または複数のエンティティ340の第1のエンティティを特定する選択入力330を受信し、第1のエンティティをメモリからローカルアプリケーション320またはロボティックプロセス325にエクスポートする。
次に図4に目を向けると、図4のエンティティエンジン401の操作が、図5~7に示されるユーザーインターフェースの観点から説明される。エンティティエンジン401は、コンピューティングシステムまたは環境(例えば、図1Cのコンピューティングシステムもしくは環境140ならびに/または図3のシステム300)によるプロセス動作へのルーティングを必要としかつコンピューティングシステムまたは環境の処理ハードウェア中へのルーティングを必要とするプロセッサ実行可能コードまたはソフトウェアであり、データ(例えば、永続的な顧客関連ビジネスデータ)を保存および管理するエンティティをモデル化および統合する永続的なデータストレージサービスを提供することに留意されたい。このように、1または複数の実施形態によれば、エンティティエンジン401は、コンピューティングシステムまたは環境のアプリケーション開発およびデプロイメントプラットフォームのための特定の構成およびツーリングロボティックプロセスオートメーション方法を提供する。この具体的な構成およびツーリングロボティックプロセスオートメーション方法は、開発およびデプロイメントプラットフォームの操作に関連して、エンティティおよびこれらのエンティティが指し示すデータの多段階の動作(例えば、エンティティおよびデータの多段階の作成/定義/更新/読み取り/削除/問い合わせ動作)を伴う。永続的なデータストレージサービスを提供するために、エンティティエンジン401は、サービス操作410(例えば、開発/デプロイメントデータサービス)、統合動作415(例えば、エンティティデプロイメント統合)、アクティビティ動作420(例えば。統合スキーマおよびアクティビティ)、インポート/エクスポート操作425(例えば、エンティティのインポート/エクスポート)、表現操作430(例えば、インポート/エクスポートされたエンティティ表現)、および表示動作435(例えば、エンティティ表示)を、エンティティとその中のデータに関して実装し得る。
サービス操作410(例えば、開発/デプロイメントデータサービス)の実施については、エンティティエンジン401が、開発および/またはデプロイメントプラットフォームにおいてシームレスにデータを生成、集中化、アクセス、および使用することで、開発者は、従来の外部サービスでは利用できなかった製品および機能(例えば、RPA、人工知能、長時間稼働するワークフロー、アプリケーション、分析など)をデータの周りに構築し得る。より詳細には、サービス操作410は、ユーザーがエンティティを定義/修正/拡張し、それらのエンティティのための記録/データを格納すること、開発および/またはデプロイメントプラットフォーム内の他の製品からエンティティ、記録、および文書にシームレスにアクセスすること、エンティティ上の関係、ルール、および属性などのリッチなメタデータをサポートすること、記録/エンティティに関連する文書を格納すること、権限を簡単かつ安全に設定すること、ならびに「アウトオブボックス(out of box)」エンティティを生成して提供することを可能にすることを含む。
例えば、ユーザーがプロセス、MLモデルまたはアプリケーションの構築を所望しておりかつそれぞれ生成された任意のデータの格納を必要としている場合、ユーザーは、まず外部のデータベースまたは記録のシステム(Salesforce、SAP、CRM、Excelなど)を位置確認し、次にその記録をそれらのプロセス/MLモデル/アプリケーションに統合してデータを永続化する。エンティティエンジン401は、それらの製品および機能利用の一環としてデータ(例えば、ビジネスデータ)を生成、格納および/またはアクセスする必要がある組織/クリエイター/ビジネスユーザーにソリューションを提供し、その結果、開発および/またはデプロイメントプラットフォームで「アウトオブボックス」利用できる永続的なデータストレージサービスにより、ユーザーはすべての彼らの使用ケースでそのようなデータをシームレスにモデル化、格納およびアクセスできるようになる。
エンティティエンジン401の技術的効果および利点は、シームレスな統合(例えば、開発および/またはデプロイメントプラットフォーム内でデータサービスを使用するための努力を最小限に抑えること)を含む。例えば、永続的なデータストレージサービスで定義されたエンティティは、開発および/またはデプロイメントプラットフォームにおいて、(本明細書に記載されている)リッチオブジェクト/クラスとして利用可能であり得る。また、エンティティエンジン401の技術的効果および利点は、限定されないが、プロセス/MLモデル/アプリケーションおよびデータを一緒に扱うことができるロールおよび権限を処理する機能を提供することと、ケース/インシデントのボリュームを追跡するための事前に構築された報告/分析/プロセスを提供することとを含む(例えば、記録のシステムが存在しない場合、ユーザーは新しいそれを作成する、またはデータを格納する場所を見つけたりする必要はなく、一方、製品は既存のエンティティに依存し、リッチな「アウトオブボックス」体験を提供することができる)。
統合動作415の実施に関して、エンティティエンジン401は、ユーザーが開発および/またはデプロイメントプラットフォームでエンティティを使用することを可能にし、それにより、プロジェクトで使用する必要のある変数および引数の数を減らし、また、ワークフロー全体で使用されるデータに、より多くの構造を与える。さらに、エンティティエンジン401のエンティティは、2つ以上のワークフローの間で取引されるであろうデータの構造を定義することにより、またはキューを介して、2つ以上のワークフローの間で共通の「契約」を確立し得る。
例示的な使用例では、ワークフローがモジュール化されており、ソフトウェア開発の最適な実践では、ワークフローを独立して動作することができる機能の小さな個々の部分に分解することが提案されているため、それらのワークフローとの間でデータを受け渡す必要がある。いくつかのワークフローの、複合的なデータ構造と共に動作し、その構造は、開発プラットフォームおよび/またはデプロイメントプラットフォームにおける実装が容易ではないため、引数のリストが長く場合がある。そのため、RPA開発者は、必要なデータをすべて受け渡すために複数の引数を使用することになり、さまざまな問題が発生する。すなわち、従来のプラットフォームでは、プロセスを連鎖させたり、「呼び出し側」および「呼び出し先」のワークフロー間の契約を定義したりするためのデータ構造を生成および利用する機能が提供されていない。詳細には、ワークフローおよびプロセス間で受け渡しが必要な引数および変数の量に起因して、プロセスの構築および維持が困難になり、従来のプラットフォーム内においてカスタムの複雑なデータタイプを使用およびインポートしたりすることは容易なタスクではなく、多くの制限があり、ワークフロー間での複雑なタイプの再利用がサポートされていない(つまり、複数のプロジェクトで同じタイプが必要な場合でも、複雑なタイプをすべてのプロジェクトに追加する必要があり)、既存のタイプおよび名前区間の検索は、負担が重い手順であり、ワークフロー内の複雑なタイプの自動インポートは、従来のプラットフォームではサポートされておらず、ワークフローの中および周辺でのデータの受け渡しは非常に複雑で、これはフォーム、文書、タクソノミ、オントロジーを扱うアクティビティにも当てはまり、そして、いくつかの必要とされる既存の構造はシリアル化(直列化)できないものがあり、孤立したワークフローは、シリアル化可能な引数のみ受信する。
従来のプラットフォームの欠点および懸念に鑑みて、エンティティエンジン401の統合動作415は、エンティティエンジン401が専用のエンティティウェブサービスであることを含む高レベルのアプローチを提供する。すなわち、エンティティエンジン401は、開発者が各エンティティの構造を定義し、複数のエンティティタイプを一緒にリンクさせることができる、専用のエンティティウェブサービスとして実施され得る。例えば、エンティティエンジン401は、専用のエンティティウェブサービスとして実施される場合、エンティティの管理全体が(本明細書に記載されているように)エンティティ定義で説明されることを要求し得る。また、エンティティエンジン401は、エンティティのためのストレージリポジトリ440と、開発者がアクセスできるすべてのインスタンス(例えば、エンティティエンジン401のインスタンス)と、その中で定義されたエンティティ(例えば、図3のエンティティ340)とをリストする手段(例えば、図3のリスト345)とを含み得る。エンティティエンジン401は、1もしくは複数のプラットフォームおよび/またはデバイスにわたって1もしくは複数のインスタンスとして複製、複写、および/または実行され得、それによって、それらの1もしくは複数のプラットフォームおよび/またはデバイスから一貫した「エンティティ」操作およびアクティビティを提供し得る。また、エンティティエンジン401は、それらの定義されたエンティティを任意のプラットフォームのカスタムデータタイプとしてインポートする手段と、インポートされたエンティティの現在のセットを更新および使用するためのツールと一緒に、そのセットを格納および表示する手段(例えば、ストレージリポジトリ440)と、エンティティエンジン401との間での各カスタムエンティティのインスタンスの取得および記憶を(例えば、専用のエンティティウェブサービスとして)処理することができる1組のアクティビティとを含み得る。
アクティビティ動作420の実施に関して、エンティティエンジン401は、ユーザー/開発者が任意のプラットフォームでリッチオブジェクト/クラス(すなわち、エンティティ)を操作して、エンティティのエンティティデータを生成、更新、インポート、問い合わせおよび/または削除することを可能にする。リッチオブジェクト/クラスとしてのエンティティの例(例えば、「.NET」クラス、Javaクラス、JSクラス)のいずれも、エンティティデータの作成、更新、インポート、問い合わせ、および/または削除に使用され得ることを留意されたい。次に図5に目を向けると、1または複数の実施形態によるユーザーインターフェースの図が示される。すなわち、図5は、ユーザーインターフェースの1または複数のパネル510および520を示す。パネル510は、ユーザーが、エンティティタイプを選択し、提示されたフィールドにエンティティデータを提供することによって、エンティティ記録を生成することができるアクティビティを示す。パネル520は、ユーザーが、エンティティタイプを選択/入力し、提示されたフィールドに問い合わせ情報を提供することによって、1または複数のエンティティ記録を問い合わせることができるアクティビティを示している。
例えば、アクティビティのセットの範囲に関して、エンティティエンジン401は、単一の記録を作成、更新、または削除し、単一の記録を読み取り、クエリフィルタに基づいて単一のエンティティから記録のセットを問い合わせ/読み取り、単一のエンティティタイプの記録のセットを生成、更新、または削除し、関連するエンティティを関連する記録のセットとしてフェッチし、多対多および/または親子関係をサポートし、そして記録に関連する/記録内のファイルのアップロード/ダウンロードをサポートすることができる。さらに、エンティティエンジン401は、関連するエンティティ、関連する記録のセット、多対多の関係、および親子関係を、ユーザーインターフェース内に表示し得る。
1または複数の実施形態によると、エンティティエンジン401は、自身の内部のエンティティのためのアクセス制御を提供する。例えば、エンティティエンジン401のアクティビティは、エンティティへのアクセスがテナント/RPA/ユーザーのコンテキストに限定されることを保証するために、アクティビティアプリケーションプログラム可能なインターフェースから生成された(または、図1Aのデザイナ102、オーケストレータ106、もしくはコンダクタ104によって提供された)セキュリティトークンを使用して、現在接続されている任意のテナント/RPA/ユーザーに対して最初に動作し得る。さらに、エンティティエンジン401は、現在接続されているテナント/RPA/ユーザーと同じデバイス上にある場合、エンティティエンジン401のアクティビティまたはセキュリティトークンのユニフォームリソースロケータ(URL)を別途提供する必要をなくすことができる。あるいは、エンティティエンジン401が、現在接続されているテナント/RPA/ユーザーと同じデバイス上にない場合、エンティティエンジン401は、統合された認証および認可を保証するために、エンティティエンジン401のアクティビティまたはセキュリティトークンのURLを(自動発見操作によって)提供し得る(そうでない場合は、URLが排除され得る)。現在接続されているインスタンスについて利用可能なエンティティエンジン401のエンドポイントがない場合、エンティティエンジン401は(シナリオによっては)エラーを発行することができることに留意されたい。
インポート/エクスポート操作425の実装に関して、エンティティエンジン401により、ユーザーは(エンティティインポートウィザードを介して)あらゆるプラットフォームまたはデバイスでエンティティを使用することができ、それにより、プロジェクトで使用する必要のある変数および引数の数を減らし、またワークフロー全体で使用されるデータに構造をさらに与える。エンティティインポートウィザードは、任意のプラットフォームで使用するためのエンティティを自動的に提供し得る。例えば、RPA開発者は、エンティティエンジン401とそれぞれのローカル環境(例えば、ローカル開発プラットフォーム)との間でエンティティおよびデータを移行する手段を必要とするため、エンティティエンジン401は、任意のプラットフォームのエンティティおよびデータを「インポートすること」を定義するエンティティインポートウィザードを提供する。エンティティインポートウィザードを通じてインポートされたエンティティは、変数、引数などおよび本明細書に記載されている1組のアクティビティの参照タイプの自動化において使用可能である点に留意されたい。
1または複数の実施形態によると、エンティティエンジン401は、エンティティインポートウィザードによってサポートされるプラットフォームアクティビティについて様々な依存関係があるため、エンティティインポートウィザードから1または複数の事前要件を設定し得る。1または複数の実施形態によると、任意のインポートされたエンティティは、それぞれのデータタイプで利用可能なすべてのプロパティ/フィールド/列を有することができ、新しいエンティティインポートウィザードを介してインポートされたすべてのエンティティは、受信プラットフォームのための単一のベースから継承することができ、ベースタイプのための名前(例えば、EntityBase)が提案され得、関係は強く型付けされ得る。
例えば、エンティティが(図1Aのデザイナ102、エグゼキュータ106、またはコンダクタ104によって)作成/定義されると、ユーザーは、エンティティインポートウィザードを起動し、(本明細書に記載される)エンティティストアに接続し得る。エンティティインポートウィザードがエンティティの識別子をロードした後、エンティティインポートウィザードは、特定のエンティティ自体への直接的なリンクを提示し得る。ユーザーは、エンティティインポートウィザードから、インポートすべきすべてのエンティティを選択し得る。(例えば、デフォルトではすべてが選択され得る)。あるエンティティのインポートを選択すると、その依存関係もすべてインポートされる(例:あるエンティティが関係を持つエンティティ、依存関係を持つエンティティなど)点に留意されたい。一般的に、依存関係とは、別のエンティティが関係を持つエンティティのことである(例えば、エンティティAがタイプBのフィールドを持つ場合、エンティティBはエンティティAの依存関係になる)。依存関係は、エンティティリストで選択されないままにされ得る。場合によっては、あるエンティティが、インポートを行うユーザーによって明示的に選択された場合、および/または、選択されたエンティティの直接的もしくは間接的な依存関係である場合などの基準を満たす場合に、そのエンティティがインポートされ得る。
表現操作430の実装に関して、エンティティエンジン401は、ユーザーインターフェースまたはその構成パネル内でエンティティ表現をレンダリングし得る。これに関連して、エンティティエンジン401は、迅速かつ容易な取り扱い、使用および管理のために、ユーザーインターフェースの専用パネル(例えば、構成パネル)内にエンティティを(エンティティ表現を介して)リストし得る。例えば、エンティティエンジン401は、デザイナ(例えば、図1Aのデザイナ102)のユーザーインターフェースと接続し、デザイナ102が使用するためのエンティティ表現をユーザーインターフェースのデザイナパネルに配置し得る。例として、RPA開発者がエンティティの古いバージョンを持っている場合、RPA開発者は、すべてのエンティティの表現(リストによって特定されるか、またはエンティティストアを通じて提供される)を視認し得、古いバージョンを利用可能な新しいバージョンと同期させ得る。
各エンティティの表現は、オリジン、バージョン、サブセットおよび名前空間名などの情報を含み得る。オリジンは、1組のエンティティのインポート元である(例えば、メタデータとして格納された)、エンティティエンジン401のエンティティストアである。バージョンは、当該1組のエンティティがインポートされた(例えば、メタデータとして格納された)時点においてエンティティエンジン401から提供されたエンティティストアのバージョンである。サブセットは、インポートされたバージョンに存在していた当該1組のエンティティ全体に対して、独立して(例えば、インポートされたサブセットに含まれない任意のエンティティを参照することなく)動作することが可能なエンティティの正確なサブセットである。名前空間名は、その特定の1組のエンティティのためにユーザーが選んだ名前である。
表示動作435の実施に関して、エンティティエンジン401は、エンティティエンジン401からのエンティティのリストが発見可能でありかつ操作可能であるオンラインエンティティ表示またはインターフェース(例えば、ウェブに基づくユーザーインターフェース)を提供する。この統合のコンテキストにおいて、RPA開発者は、エンティティエンジン401のインスタンスからそれらに利用可能なエンティティを発見する方法(例えば、それらが認証に使用するユーザー名を与えられてそれらがアクセスできるもの)を必要とする。
次に、エンティティエンジン401は、エンティティエンジン401を表示/図示する設定パネル(例えば、専用リソースパネル)またはエンティティストア(本明細書で説明する)を提供する。このエンティティエンジン401からのすべてのエンティティは、羅列および操作(例えば、インポート、デザイナパネルにドロップなど)され得る。任意の現在接続されているテナント/RPA/ユーザーのうち、エンティティエンジン401を有効にしていないものについては、当該テナント/RPA/ユーザーに関連するエンティティが表示/提供されない点に留意されたい。次に図6に目を向けると、1または複数の実施形態によるユーザーインターフェースの図が示される。すなわち、図6は、パネル601(例えば、本明細書に記載の設定パネル)を示す。パネル601のヘッダ611は、「エンティティ」が表示されていることを示す。各エンティティは、各エンティティと関連付けられた対応する1または複数のフィールドと共に、第1の列620内に示される。例えば、第1列620のエンティティは、カスタマーインボイス、カスタマー、インボイス、オーダー、ポートフォリオ、製品およびストックトラッカーを含む。さらに、カスタマーインボイスに関連付けられたフィールドは、作成者、作成時間、ID、更新者および更新時間を含む。フィールドと共に表示されるエンティティとそうでない他のエンティティがあるが、パネル601の表示例は限定することを意図したものではないことに留意されたい。第1の列620のエンティティに対応するのは、第2の列630のプロパティである。例えば、第2の列630は、各エンティティの記録数(例えば、インボイスエンティティは3つの記録を有する)、およびフィールドタイプ(例えば、作成者フィールドは文字列タイプのフィールドであり、一方でデジタルアクセスはブールタイプのフィールド0)などのプロパティを特定する。1または複数の実施形態によれば、パネル601は、コンテキストアクション(例えば、構成されたすべてのエンティティが選択された状態で、エンティティインポートウィザードを呼び出すインポートアクション)および定義に進むアクション(例えば、その特定のエンティティストアでエンティティエンジン401を開く)を提供/表示することもできる。
本明細書の実施形態に鑑み、エンティティエンジンおよびエンティティの技術的効果および利点は、ユーザーがビジネス関連データを開発プラットフォームおよびデプロイメントプラットフォームに格納して、いつでもオンデマンドでアクセスできる永続的なデータストレージサービスを提供することを含む。エンティティエンジンおよびエンティティの技術的効果および利点は、エンティティ/データモデルを生成/定義し、そのエンティティ/データモデルを任意のプラットフォームにインポートし、これらのインポートされたエンティティ/データモデルを提示または表示し、アクティビティのセットを介してエンティティ/データモデルに関連するデータを格納/取得する能力をさらに含む。エンティティエンジンおよびエンティティの技術的な効果および利点は、エンティティエンジンに確実なアクセス機能を提供するための(トークンに基づくアイデンティティを用いた)認証動作および認可動作をさらに含む。
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータプログラム製品の可能な実装のアーキテクチャ、機能性、および操作を示す。これに関連して、フローチャートまたはブロック図の各ブロックは、指定された論理機能(複数可)を実装するための1または複数の実行可能な命令を含むモジュール、セグメント、または命令の一部を表し得る。いくつかの代替実施例において、ブロックに記載されている機能は、図に記載されている順序とは異なる場合がある。例えば、連続して表示されている2つのブロックは、関係する機能に応じて、実際には実質的に同時に実行され得、またはブロックが逆の順序で実行され得る。また、ブロック図および/またはフローチャート図の各ブロック、ならびにブロック図および/またはフローチャート図のブロックの組み合わせは、指定された機能もしくは行動を実行するか、または特別な目的のハードウェアおよびコンピュータ命令の組み合わせを実行する特別な目的のハードウェアに基づくシステムによって実装され得ることに留意されたい。
特徴および要素は、特定の組み合わせで上に記載されているが、各特徴または要素は、単独で、または他の特徴および要素と任意の組み合わせで使用することができることが、当業者には理解されるであろう。さらに、本明細書に記載された方法は、コンピュータまたはプロセッサによって実行されるために、コンピュータ読み取り可能な媒体に組み込まれたコンピュータプログラム、ソフトウェア、またはファームウェアに実装され得る。本明細書で使用されるコンピュータ読み取り可能な媒体は、それ自体が一時的な信号であると解釈されるものではなく、例えば、電波またはその他の自由に伝播する電磁波、導波管またはその他の伝送媒体を伝播する電磁波(例えば、光ファイバケーブルを通過する光パルス)、または電線を介して伝送される電気信号である。
コンピュータ読み取り可能な媒体の例としては、電子信号(有線または無線接続を介して送信される)およびコンピュータ読み取り可能なストレージ媒体が挙げられる。コンピュータ読み取り可能なストレージ媒体の例は、限定されないが、レジスタ、キャッシュメモリ、半導体メモリデバイス、内蔵ハードディスクおよびリムーバブルディスクなどの磁気媒体、光磁気媒体、コンパクトディスク(CD)およびデジタルバーサタイルディスク(DVD)などの光媒体、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能プログラマブルリードオンリーメモリ(EPROMまたはフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ならびにメモリースティックを含む。プロセッサは、ソフトウェアと関連して、WTRU、UE、端末、基地局、RNC、または任意のホストコンピュータで使用するための無線周波数トランシーバを実装するために使用され得る。
本明細書で使用される用語は、ひとえに特定の実施形態を説明するためものであり、限定することを意図しない。本明細書では、単数形の「a」、「an」、および「the」は、文脈が明確に示す場合を除き、複数形も含むことを意図する。本明細書で使用される「含む(comprises)」および/または「含む(comprising,)」という用語は、記載された特徴、整数、ステップ、操作、要素、および/またはコンポーネントの存在を指定するが、1または複数の他の特徴、整数、ステップ、操作、要素、コンポーネント、および/またはそれらのグループの存在または追加を排除するものではないことがさらに理解されるであろう。
本明細書の様々な実施形態の説明は、説明のために提示されたものであるが、開示された実施形態を網羅的に、またはそれに限定することを意図したものではない。当業者であれば、記載された実施形態の範囲および精神から逸脱することなく、多くの修正および変形が明らかであろう。本明細書で使用される用語は、実施形態の原理、市場で見られる技術に対する実用化もしくは技術的改善を最もよく説明するため、または当業者が本明細書で開示されている実施形態を理解できるように選択されたものである。

Claims (20)

  1. コンピューティングデバイスであって、
    エンティティエンジンのためのプロセッサ実行可能命令を格納するように構成されたメモリと、
    前記メモリに結合されたプロセッサと、を含み、
    前記プロセッサは、前記エンティティエンジンを実行して、
    データを保持または分類するように構成された1または複数のエンティティを前記エンティティエンジンによってモデル化すること、
    前記1または複数のエンティティのそれぞれを特定するリストと、前記リストに対応する前記1または複数のエンティティとを前記エンティティエンジンによって前記メモリ中に格納すること、および
    外部システムからの選択入力に応答して、前記リストに基づいて前記1または複数のエンティティへのアクセスを前記エンティティエンジンによって提供することであって、前記アクセスは、前記リストを前記外部システムに提供し、前記1または複数のエンティティのうちの第1のエンティティを特定する前記選択入力を受信し、前記第1のエンティティを前記メモリから前記外部システムにエクスポートすることを含む、こと、
    を前記コンピューティングデバイスに行わせるように構成される、
    コンピューティングデバイス。
  2. 前記1または複数のエンティティは、1もしくは複数のプロパティ、1もしくは複数のフィールドまたは1もしくは複数の列について前記データを保持または分類するようにさらに構成される、請求項1に記載のコンピューティングデバイス。
  3. 前記エンティティエンジンは、1もしくは複数のプラットフォームまたは前記外部システムに統合されて構造を提供し、前記構造中のワークフローについて前記1または複数のエンティティの使用を可能にする、請求項1に記載のコンピューティングデバイス。
  4. 前記1または複数のエンティティは、前記データに関連する変数を定義するようにさらに構成される、請求項1に記載のコンピューティングデバイス。
  5. 前記プロセッサは、前記エンティティエンジンを実行して、前記コンピューティングデバイスに前記1または複数のエンティティへの前記アクセスを認証および許可させるように構成される、請求項1に記載のコンピューティングデバイス。
  6. 前記エンティティエンジンは、前記1または複数のエンティティへの前記アクセスを、トークンに基づく認証操作を用いて認証する、請求項5に記載のコンピューティングデバイス。
  7. 前記1または複数のエンティティの各々は、エンティティタイプを定義することができる各エンティティの構成可能な構造を含む、請求項1に記載のコンピューティングデバイス。
  8. 前記1または複数のエンティティの各々は、他のエンティティにリンクするように構成可能である、請求項1に記載のコンピューティングデバイス。
  9. 前記データは、フォーム、文書、インボイスまたは記録を含む、請求項1に記載のコンピューティングデバイス。
  10. 前記リストは、前記1または複数のエンティティについてアクセス可能な前記エンティティエンジンの1または複数のインスタンスを特定する、請求項1に記載のコンピューティングデバイス。
  11. 前記第1のエンティティは、前記エンティティエンジンからエクスポートされ、開発プラットフォームまたはデプロイメントプラットフォームにインポートされる、請求項1に記載のコンピューティングデバイス。
  12. 前記エンティティエンジンは、前記1または複数のエンティティを前記外部システムに表示するように構成されたエンティティインポートウィザードを含む、請求項1に記載のコンピューティングデバイス。
  13. 前記1または複数のエンティティは、リッチオブジェクトを含む、請求項1に記載のコンピューティングデバイス。
  14. エンティティエンジンのためのプロセッサ実行可能命令を格納するように構成されたメモリと、
    前記メモリに結合されたプロセッサと、
    を含む方法であって、
    前記プロセッサは、前記エンティティエンジンを実行して、
    データを保持または分類するように構成された1または複数のエンティティを前記エンティティエンジンによってモデル化すること、
    前記1または複数のエンティティのそれぞれを特定するリストと、前記リストに対応する前記1または複数のエンティティとを前記エンティティエンジンによって前記メモリ中に格納すること、および
    外部システムからの選択入力に応答して、前記リストに基づいて前記1または複数のエンティティへのアクセスを前記エンティティエンジンによって提供することであって、前記アクセスは、前記リストを前記外部システムに提供し、前記1または複数のエンティティのうちの第1のエンティティを特定する前記選択入力を受信し、前記第1のエンティティを前記メモリから前記外部システムにエクスポートすることを含む、こと、
    をコンピューティングデバイスに行わせるように構成される、
    方法。
  15. 前記1または複数のエンティティは、1もしくは複数のプロパティ、1もしくは複数のフィールド、または1もしくは複数の列について前記データを保持または分類するようにさらに構成される、請求項14に記載の方法。
  16. 前記エンティティエンジンは、1もしくは複数のプラットフォームまたは前記外部システムに統合されて構造を提供し、前記構造中のワークフローに関する前記1または複数のエンティティの使用を可能にする、請求項14に記載の方法。
  17. 前記1または複数のエンティティは、前記データに関連する変数を定義するようにさらに構成される、請求項14に記載の方法。
  18. 前記プロセッサは、前記エンティティエンジンを実行して、前記コンピューティングデバイスに前記1または複数のエンティティへの前記アクセスを認証および許可させるように構成される、請求項14に記載の方法。
  19. 前記エンティティエンジンは、前記1または複数のエンティティへのアクセスを、トークンに基づく認証操作を用いて認証する、請求項18に記載の方法。
  20. 前記1または複数のエンティティの各々は、エンティティタイプを定義することができる各エンティティの構成可能な構造を含む、請求項14に記載の方法。

JP2021569967A 2020-08-06 2021-07-30 コンピューティングプラットフォームのエンティティエンジン Pending JP2023536768A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/986,767 2020-08-06
US16/986,767 US11461374B2 (en) 2020-08-06 2020-08-06 Entity engine of a computing platform
PCT/US2021/043925 WO2022031539A1 (en) 2020-08-06 2021-07-30 Entity engine of a computing platform

Publications (1)

Publication Number Publication Date
JP2023536768A true JP2023536768A (ja) 2023-08-30

Family

ID=80113801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021569967A Pending JP2023536768A (ja) 2020-08-06 2021-07-30 コンピューティングプラットフォームのエンティティエンジン

Country Status (6)

Country Link
US (3) US11461374B2 (ja)
EP (1) EP3991062A4 (ja)
JP (1) JP2023536768A (ja)
KR (1) KR20230043025A (ja)
CN (1) CN114303133A (ja)
WO (1) WO2022031539A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220011734A1 (en) * 2020-07-09 2022-01-13 UiPath, Inc. Robot access control and governance for robotic process automation
US11733668B2 (en) 2020-07-09 2023-08-22 UiPath, Inc. Robot access control and governance for robotic process automation

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6708166B1 (en) 1999-05-11 2004-03-16 Norbert Technologies, Llc Method and apparatus for storing data as objects, constructing customized data retrieval and data processing requests, and performing householding queries
US6738077B1 (en) 2000-07-18 2004-05-18 Apple Computer, Inc. Dynamic generation and automated distribution of user interface from database model
US20040078434A1 (en) 2002-10-17 2004-04-22 Lockheed Martin Corporation Method, system and program product for automated document export control
AU2008101325A4 (en) 2007-05-08 2014-01-30 Sourcecode Technology Holding, Inc. Methods and apparatus for exposing workflow process definitions as business objects
US7934249B2 (en) 2007-08-27 2011-04-26 Oracle International Corporation Sensitivity-enabled access control model
US8554719B2 (en) 2007-10-18 2013-10-08 Palantir Technologies, Inc. Resolving database entity information
EP2461613A1 (en) 2010-12-06 2012-06-06 Gemalto SA Methods and system for handling UICC data
US10162491B2 (en) 2011-08-12 2018-12-25 Otoy Inc. Drag and drop of objects between applications
US8954441B1 (en) 2014-01-02 2015-02-10 Linkedin Corporation Graph-based system and method of information storage and retrieval
US9754117B2 (en) * 2014-02-24 2017-09-05 Northcross Group Security management system
US11347868B2 (en) * 2018-04-17 2022-05-31 Domo, Inc Systems and methods for securely managing data in distributed systems
WO2020086722A1 (en) * 2018-10-23 2020-04-30 Yext, Inc. Knowledge search system
US11620407B2 (en) * 2019-10-17 2023-04-04 International Business Machines Corporation Real-time, context based detection and classification of data
US11822913B2 (en) * 2019-12-20 2023-11-21 UiPath, Inc. Dynamic artificial intelligence / machine learning model update, or retrain and update, in digital processes at runtime

Also Published As

Publication number Publication date
US20230289371A1 (en) 2023-09-14
US11693891B2 (en) 2023-07-04
KR20230043025A (ko) 2023-03-30
US20220043842A1 (en) 2022-02-10
US20230026725A1 (en) 2023-01-26
US11461374B2 (en) 2022-10-04
EP3991062A1 (en) 2022-05-04
CN114303133A (zh) 2022-04-08
WO2022031539A1 (en) 2022-02-10
EP3991062A4 (en) 2023-08-09

Similar Documents

Publication Publication Date Title
KR102412237B1 (ko) 로봇 프로세스 자동화를 위한 테스트 자동화
US11494203B2 (en) Application integration for robotic process automation
US11693891B2 (en) Entity engine of a computing platform
JP2023534638A (ja) ロボティックプロセスオートメーション用のユーザーインターフェース(ui)記述子、uiオブジェクトライブラリ、uiオブジェクトリポジトリ、およびuiオブジェクトブラウザ
KR20210156192A (ko) 로봇 프로세스 자동화를 위한 애플리케이션 통합
US11334828B2 (en) Automated data mapping wizard for robotic process automation (RPA) or enterprise systems
KR20220007495A (ko) 제2 세션에서 실행중인 로봇 프로세스 자동화 로봇을 통한 제1 세션에서 실행중인 프로세스의 자동화
US20230373087A1 (en) Localized configurations of distributed-packaged robotic processes
KR20220007496A (ko) 제1 세션에서 실행되고 있는 프로세스의 제2 세션에서 실행되고 있는 로봇 프로세스 자동화 로봇을 통한 자동화
US11513499B2 (en) Web based viewing of robotic process automation (RPA) packages and workflows
US20230108145A1 (en) Cloud migration
US11618160B2 (en) Integrating robotic process automations into operating and software systems
US20220075603A1 (en) Dynamic robot tray by robotic processes
CN116262350A (zh) 用于机器人过程自动化的多目标库、项目和活动
JP2023539853A (ja) ロボティックプロセスオートメーション(rpa)パッケージおよびワークフローのウェブベースの閲覧
KR20240071419A (ko) 클라우드 마이그레이션
JP2023544277A (ja) アーティファクト参照(artifacts reference)作成および依存関係追跡