以前、WinActorの講習会に参加した時のこと。

「完璧なロボットを作ろうとしないこと!」

そんな記述がテキストにあったのです。

 

思わず、「えっ!?」と目を疑ってしまいました。

何故、そんなことが書いてあるのでしょうか?

それは、ロボット作成の手順を見ていくと分かってきます。

 

■ロボット作成の手順

簡単に言えば、

①現在行っている手作業を書き起こす

②フローチャートに落とし込む

③実際にロボット作成(シナリオ作成)

となります。

問題はこのあとなのですが、通常の流れに合わせてロボットを作成し、「はい、出来た!おしまい!」とならないのがプログラミングの厄介なところなのです。

それは、

④通常以外の操作に対応させる

ということです。

 

■エラー対応

「通常以外の操作」を具体的に挙げてみます。

たとえば、

・「処理するファイルを選んで、OKを押してください」と表示しているにも関わらず、キャンセルボタンを押した場合の対応

・特定のホームページを開いて、そこからデータ抽出するのだが、上手くページが開かなかった場合の対応

・エクセルファイルを選ぶように指示しているのに、テキストファイルを選んでしまった場合の対応

・乗車駅に存在しない駅名を打ち込んでしまった場合の対応(参照元のエクセルファイルに記述間違い)

等など。

上記の操作を考慮せず、素直にロボットを作成すると、RPA側で対応できずにエラー表示を吐き出すことになります。

 

パッと思いついたことを書いてみましたが、これら以外にもエラー表示となるケースはあり得るでしょう。

それを全てを盛り込んだロボットを最初から作ろうとすると、とても困難であることは想像に難くないと思います。

よくあるミスを盛り込むことは必要ですが、あれもこれもと初期段階でロボットに入れていくと、効率の悪いロボット開発になってしまうのですね。

そういったこともあり、講習会のテキストには、

『ロボット開発は、80%の完成度を目指す』

と書かれていたのでしょう。

あとは、実際の運用の中で、思った以上に多いミスについては、その都度対応していくといった運用方法がベターと判断していると思われます。

 

よく「RPAのロボットが暴走したら、大変なことになるのでは?」という心配をされる方がいらっしゃいますが、現時点のRPAソフトにおいては、自己判断できるほど賢くありません。

なので、上記のような事象が発生した場合、エラー表示でロボットが止まりますのでご安心を。

ちなみに、特定のエラー事象が起きた場合、違う操作を実行する、もしくはスルーするといった対応も可能です。

多くのRPAソフトには、「例外対応」と呼ばれるフローが用意されており、事前に条件を指定することで、強制的に別のフローに進めることができます。

時折起こる、でもあまり気にしなくても良い事象に関しても、RPAでは対応可能なのです。