【UiPath】ロボットタイプAttended・Unattendedを理解する【初心者】
UiPathの学習追体験記事です。
※あくまで学習中の脳内を記事にしたものなので、この記事で書かれてあることが”正しい”とは限りません。
参考:学習効率本5巻 「知識の自作」

0.動機

「UiPath RPA アソシエイト資格試験」を受けたい!
と思い、練習問題のプラクティステストを受けてみたが、正答率は半分にも満たなかった。徹底的にプラクティステストの復習をするしかない!
ということで、本記事では、プラクティステストで間違えた問題の復習の様子を書きつらねていきます。
まずは、間違えた問題の紹介。
次のユースケースがあります。
1.顧客が最新の支払い残高額を確認するためにコールセンターに問い合わせる
2.カスタマーサポート担当者が顧客IDを取得し、ウェブアプリケーションに入力する
3.データをウェブアプリケーションからスクレイピングする
4.計算を実行する
5.カスタマーサポート担当者が顧客に支払い残高額を提供するこのプロセスを自動化した場合、人による介入を必要とするステップは最低いくるありますか。
引用元:https://www.pearsonvue.co.jp/uipath
UiPath RPA アソシエイト資格試験 プラクティステスト
解説部分には、この問題で求めている知識が紹介されていた。内容は以下。※答えは明示されてない
トピック:自動化できるプロセスとワークロード、および異なるロボットタイプ(例:Attendedに対してUnattended)を理解し、説明する。
引用元:https://www.pearsonvue.co.jp/uipath
UiPath RPA アソシエイト資格試験 プラクティステスト

要するに、「自動化できるプロセスとロボットタイプを理解していますか。」ということだろう。
あと、「ワークロード」という単語を調べてみたが、特に目ぼしい情報はなかった。おそらく、「ワークフロー」の誤表記だろう。
今回は、「ロボットタイプについて」に着目して復習する。
1.全体像理解
全体像理解とは、理解する項目の位置づけを把握すること。
垂直的理解
理解する対象が、UiPathアカデミーの「どのコース」「どの章」にあるかを確認する。
今回の理解の対象であるロボットタイプについては、以下のコースの章に記載があった。
UiPathアカデミー>UiPath Orchestratorコース>ロボットの種類
では、ロボットタイプAttended・Unattendedの説明文をそれぞれ見てみる。
Attendedロボット
人の操作によって、プロセスを実行するロボット
引用元:https://academy.uipath.com/jp/learningpath-viewer/1956/1/153416/16
Unattendedロボット
人の介在なしにプロセス実行ができるロボット
引用元:https://academy.uipath.com/jp/learningpath-viewer/1956/1/153416/16

両者の大きな違いは、「プロセス実行の直前に人の操作が必要かどうか」ってことかな。
Attendedロボットは、人による合図が必要。
Unattendedロボットは、事前に組み込まれた設定があれば人の合図なしで動く。って感じかな。
そうなると、Unattendedロボットを動かすための設定ってどんな感じだろう。「毎朝7時に~」みたいな、実行の”予約”的な設定が必要なのかも。
水平的理解
他にもロボットタイプがあるか調べてみた。結果は以下。※要約
Studio StudioX (2019年以降) | 開発目的 |
NonProduction | 開発およびテスト目的 |

初心者すぎて悲しい疑問。
開発・テスト目的以外の用途ってある?
開発・テストの意味すら理解できていない気がする。


・メタファーを考える
メタファーとは、
メタファー(隠喩)とは、あることを表現するのに際して、他のものを喩えとして借りて示すこと
引用元:知識創造の方法論(書籍)
https://amzn.to/37aXQaj
Attended・Unattendedロボットの説明文から、メタファーを考えてみる。
Attended・Unattendedロボットを「クーラーの停止」で喩えると、
自分でクーラーのリモコンの停止ボタンを押して、停止させるのがAttendedロボット。
あらかじめ、指定の時間に停止するよう設定して、停止させるのがUnattendedロボット。

理解度10%程の段階で、メタファーを活用してみた。
なんとなくだけど、それぞれのロボットタイプの役割や概略が見えてきた気がする。
現段階の理解では、AttendedロボットよりUnattendedロボットの方がややこしそう。プロセスを実行する条件などを決める必要があると思われるため。
となると、先にAttendedロボットを理解した方が難易度的に良いのかな。
2.実践理解
実際に手を動かすことで理解を深める。
Attended・UnAttendedロボットの実行
Attended・UnAttendedロボットをそれぞれ実行してみる。
・AttendedとUnAttendedを探す
AttendedとUnAttendedロボットは、
UiPathアカデミー>UiPath Orchestratorコース>ロボットの種類
上記のコース・章で説明されていたため、まずは、UiPath Orchestratorの中で両者を探してみる。
UiPath Orchestrator↓
テナント>ロボット
上記のロボット一覧の「種類」の欄に「UnAttended」という表記を偶然見つけた。

ロボット一覧のページからロボットタイプの変更を試みたが、できる気がしなかった。もう少し、調べてみよう。
マイフォルダーのDefaultに「ロボット」の欄があった
「種類」の選択から「Attended」を見つけられそうだ。
あった。
一旦、Attendedに変更。

実行するプロセスを用意せねば。
・実行するプロセスを用意
UiPath Studioで実行するプロセスを作成する。
メッセージボックスが表示されるプロセスを作成し、パブリッシュ。
UiPath Orchestratorに戻る。
テナントのパッケージから、パブリッシュしたプロセスの存在を確認。
マイフォルダー>Default>プロセス
をクリック。
パブリッシュしたプロセスを追加する。
「+」ボタンをクリック。
パブリッシュしたプロセスを選択し、作成をクリック。
新しくプロセスが追加された。
Uipath Assistantから実行してみる。
正しく実行された。

ここがスタート地点だね
・相違点を探す

Attended・Unattendedロボットの相違を探す際に着目する点は、時間指定のプロセス実行をそれぞれできるかどうか。まずは、ここをはっきりさせたい。
その前に、説明・設定欄に違いがあるか確認。
Attendedロボット
UnAttendedロボット
設定欄に違いはない。説明欄は若干の違いがある。

UnAttendedロボットには、資格情報とパスワードが必要。
なぜ、UnAttendedロボットには、それらが必要なのだろう。
時間指定の設定を試みる。
マイフォルダー>Default>オートメーション>トリガー
上記に移動する。
「+」ボタンをクリック。
上記画像のように設定。1分毎にプロセス実行する設定。
(ロボットタイプはAttendedのまま)

「トリガー」ってのが、プロセス実行の詳細を決めるところなのかな。
ロボットタイプAttendedなのに、時間指定の設定欄がある。まさか、Attendedロボットで時間指定のプロセス実行ができてしまうのか。
1分待つ……
エラーとなった。

Attended・UnAttendedの違いがエラーの原因なのかな。
UnAttendedロボットに変更して、再度、時間指定のプロセス実行を試してみる。
問題なく、実行結果が返ってきた。

ってことは、やはり、時間指定のプロセス実行はUnAttendedロボットでしかできないのか。

これまで、UnAttendedロボットをUipath Assistantから手動で実行してきた。
UnAttendedロボットは手動も時間指定もできる。Attendedロボットは手動のみ。となるのであれば、Attendedロボットの利点はなんだろう。
大きな疑問が残ってしまった。が、一旦、ここで区切る。
3.まとめ
ロボットタイプAttended・UnAttendedの理解に努めたが、正直分からないことだらけだった。
図で分からないところを表すと以下になる。
とにかく、Attendedロボットの利点が不明だ。
もしかすると、以下の図のようになるのかもしれない。
ちなみに、UiPathアカデミーにこのような文章があった。
基本的には、Attended ロボットでなければならない理由がある場合以外は
Unattended ロボットの使用を推奨します

Attendedロボットでできて、かつ、UnAttendedでできない範囲はかなり狭いのかも。Attendedロボットの深堀りは、避けた方が良いかもしれない。
4.補足
2点補足。
・「ロボットの追加」でエラー発生
「ロボットの追加」を試みたが、エラーとなった。
原因はライセンスにありそうだ。

・cron式
「トリガーを編集」でプロセス実行するタイミングを決める際、「cron式」というワードに出会った。
頻度を定義するための式らしい。詳細は以下。
コメント