RPAのシナリオを作成するには | ユーザー目線で見るRPA(3)

RPAのシナリオを作成するには | ユーザー目線で見るRPA(3)
ユーザー目線で見るRPA バックナンバー
RPAって何ができるの?
RPAに何をやらせるのか?

前回のおさらい

前回は「RPAに何をやらせるのか?」と題して、RPAの真価とどのような業務に適性があるかを考えてみました。

・RPAとは言語・動作環境に依存しないシステムをユーザー独自で構築できるツールである。
・個別のシステム導入が難しい小規模な業務をシステム化することができる。
・習熟の難易度は低くはないが、システム毎に異なる言語を習得するのと比べると容易。
・データ形式のOutputがあるものから、別のOutputを作成する「間の業務」に適している。

今回は実際に「間の業務」をRPAに実行させるためのシナリオ作りについてお話していきたいと思います。とはいえRPAのツールとしての使い方は製品によって異なるので、操作方法の説明ではありません。
あくまでRPAの適用を考える上での机上のシナリオ整理が中心のお話しです。

スポンサーリンク

RPAのシナリオを作成するには

RPA導入=ユーザー企業が内製するシステム導入

前回もお話ししましたが、RPAで構築するシナリオはミニシステムといって過言ではありません。「RPA導入は通常のシステム導入と分けて考えないと効果を見誤る」というような記事もありますが、「誰が導入・構築するか」を置き去りにした話になってしまっている気がしています。

通常のシステム導入はプログラミングや環境構築等のテクニカルな作業はベンダー主導、業務分析や運用の構築はユーザーとベンダーの共同作業です。ベンダーは程度によるとは言っても基本的にはシステム導入のプロです。システムを導入することが主業務であり、それを生業にしているのですから当然です。

RPAの場合、これをユーザー企業の(推奨としては)ライン部門に行わせようとします。いかに開発規模が小さくても、必要とする専門知識の量が少なくて済んでも、基本は素人です。「効率化の効果がでそうなところを」「トライアンドエラーで」なんていうのはシステム屋目線の方便であって、普段自分はシステムの利用者であると思っている人にとって、RPA導入はシステム内製の一大プロジェクトに匹敵する難易度です。よほどにうまく効果を訴求できないと「こんなに苦労したのに、これだけしかできないのか」となりかねません。

かといって専業の社内SEが置けるほどの規模の企業ばかりではありません。
社内リソースでどのようにRPAを導入・運用していくか、という大前提の「シナリオ」も考えておきましょう。

現行業務を整理する

システム導入にあたって、現行業務整理と新システム導入後の運用フローの作成に携わったことのある方ならイメージしやすいと思いますが、それをRPAでもやっておきましょう。
いきなりフローを作成しろと言われると、システム設計を行ったことが無い人にはやや難易度が高いかもしれませんが、考え方さえわかればさほど難しい話ではありません。

まず現在行っている業務の流れをスタートからゴールまで書き出していきます。
以下の例は「WebシステムからCSVを出力して、他のデータと結合させた上でファイル名を変えてメール送付する」という業務を表しています。


通常の運用フローであればこれを「登場人物」もしくは「役割」で区分けしていきますが、一人作業であるという想定の下で工程を使っているソフト単位で分けてみました。

ここらへんで「RPAでできそうなこと」を考えてみることにします。

ソフト単位でできることを確認する

まずWebブラウザの操作ですが、これは可能なRPAが多いです。
対象がWebブラウザではなくクラサバもしくはPC単体で動作するようなソフトの場合、RPAが認識するかどうか確認が必要です。

またシステムログインが必要な場合、ソフトによってはパスワードの文字列入力に制限をかけていることがあります。全部の仕様を事前に確認することは難しいので、RPAに行わせようとしている内容をイメージしてからピンポイントで確認していったほうが良いかもしれません。

次にExcel、と行きたいのですが、WebブラウザとExcelの間に実際にはエクスプローラーの動作が入ってきます。人間が操作すればダウンロードダイアログでダウンロード先を指定するのは簡単ですが、RPAの場合、標準の「ダウンロード」フォルダに落とした後に加工用のフォルダに移動させて処理を行ったほうが扱いやすいと思います。
その場合、エクスプローラーでのファイル移動をRPAにGUIで行わせるよりは、MS-DOSでコピーバッチを作ってRPAにはバッチをダブルクリックさせるだけにしたほうが間違いはないかもしれません。

…どうでしょう、ついてこれてますか?
このページに辿り着いた人の技術レベルは様々だと思うのですが、周辺ツール等まで説明すると本筋のRPAの話が進まないので端折ります。「RPA以前にMS-DOSのコピーバッチって何作ればいいんだ!?」という方は、そのものズバリ「MS-DOS コピー バッチ」でググってみてください。

Excel上の操作について、列の並び替えやVLOOKUPくらいならVBAでマクロで組んだほうが早い!という方はどうぞそうしてください。ゴールは「業務効率化」であって「RPAを使う」ことではありません。より簡単にできる別の方法があるのであれば無理にRPAを使う必要は無いのです。ダブルコーテーションの除去やファイルのリネームなんかMS-DOSバッチの方が私は断然楽です。最終的にコマンドラインでメール送信まで辿り着ければRPAの出番はファイルの出力くらいです。

しかしRPAのシナリオで処理を作成することにもメリットはあります。

RPAで作るメリット

VBAだとかMS-DOSだとか、知ってる人はさも簡単げに言いますが、これらがこれまで業務効率化において味方になったり敵になったりしてきました。

最初に作った人にとってはVBAやMS-DOSのほうが使いやすかったかもしれません。
しかし他の人が同じように扱えるわけではありません。
設計書も無いことが多く、ソースを直接見て仕様を理解するのは有識者でも結構大変です。
関数で自動計算されているExcelですら解読するのは大変ですから、プログラムなんて言わずもがなです。

最初に作った人が面倒を見なくなった瞬間から、効率化ツールは一転して非効率化ツールに変貌していきます。
だれも仕組みが分からない。でもそのツールを使った業務手順しか引き継いでいない。
処理結果の正しさを担保するために手計算結果と突き合わせをして…もうなんのためのツールかわかりません。

RPAのいいところは、「RPAだけ覚えれば良い」ところです。この場合はVBAで、この場合はMS-DOSで、とせずに「全部RPAで」としておけば、RPAさえ理解できるようになれば引継げるようになります。

「全部RPAで」とするか「周辺ツールと組み合わせて」とするかは上記も含めて検討しながら進めたほうが良いでしょう。

シナリオ整理の副次的効果

シナリオ整理をきちんとやることは、自分の作業を細分化して整理できるという副次的なメリットがあります。
RPAによる効率化だけではなく、「この作業はなんのためにやっているのか」「この作業は割愛できるのではないか」を考えることだけでも業務効率化には効果があります。
「とりあえず入れてみて、あとはトライアンドエラー」は、結局業務プロセスそのものは温存したまま、部分的な作業をRPAに肩代わりしてもらうことになります。

もちろんそれでも効果が無いわけではないのですが、そもそもの目的が「業務効率化」であるのに、より改善効果が出る方法を検討しないのは、「新入社員が配属されたので、手が空かないように適当な作業をやらせておく」のと同じくらい非効率的です。RPAのシナリオを作成する時間の方がもったいないかもしれません。

先ほど業務フローで検討してみた結果、「RPAでできることはWeb画面からファイルをダウンロードすること」くらいになったとします。しかし、現在行っている業務をMS-DOSやVBA等の技術で実現することになれば、RPA自体が効率化できた時間は大したことなかったとしても、全体として業務効率化が達成できれば良いのです。あるいはMS-DOSやVBAも使わずに、例えばダブルコーテーションを付けない保存方法を調べて編集の手間を一つ減らせることもできます。

シナリオを整理するだけでも業務効率化には大きな意味があるのです。

スポンサーリンク

あとがき

IF(分岐)とFOR(繰り返し)のあるシナリオまで作れたら一人前

今回例示したシナリオは、スタートからゴールまでとにかく一本道のとても簡単なものでした。しかし全ての業務がこのように単純化できるわけではありません。

シナリオは条件によって分岐したり、複数件のデータが無くなるまで作業を繰り返すようなことがあります。プログラム言語をほぼ問わず、IF分岐とFORループは存在します。RPAもシナリオ内に同様の分岐を作ることは可能です。

分岐と変数の扱いができるようになれば、もう立派な「こっち側の人間」です。

システム・サービス・ソフトカテゴリの最新記事