ここのところ「RPA」という言葉が色々なところでささやかれていて、IT業界だけではなく一般的な業界でもよく耳にされる言葉になってきているのではないでしょうか。
ここでもう一度「RPAとは何か」を簡単に振り返ってみます。
RPAとは
ソフトウェアのロボットにより、人の代わりにパソコン操作などを自動化することで、業務の品質向上、作業時間の短縮、業務変更対応性向上などの業務の生産性向上を実現するソリューション。
主な特徴
既存のシステムリソースをそのまま活用することが可能なことや、比較的簡単にロボットの作成が行えるなどにより、システム改修など比べると実施までの期間が短く、比較的低価格で導入が可能であると言われている。
現時点では「定型業務の自動化」が中心となっていますが、近将来的にはAIなどの技術と連携し「一部非定型業務の自動化」や「高度な自律化」の方向へ向かっていることも含めて大きな期待を感じていらしゃる方も多いのではないでしょうか。
しかしながら、RPAは導入さえすればそれだけで問題が解決する魔法のツールではないので、以下の側面からRPA導入で何ができるのかを考えていきたいと思います。
https://kashika.biz/sps_rpa_01/
1.RPAの機能的な側面
まず機能的な側面から見ますと、RPAツールは、もともとキーボードやマウスをシミュレートするソフトウェアロボットにより、人の代わりにパソコン操作などを自動化するところから発展しています
当然この部分の機能は非常に強力な仕組みを持っており、画面上の1項目単位の自動認識にくわえ、データスクレイピング(スクラッピング)技術などにより、表形式データ全体または指定した範囲を一括して取り扱う仕組みなどを持っているものも多いようです。
これらの機能より、一般的に以下のような作業を行わせることが多いようです。
- 電子データからシステムへの登録作業
- システム間でのデータ転記・登録作業
- システムからのレポート作成作業
- 複数Webサイトからの情報収集作業 など
01b_RPAのできることの例
但し、前回の記事にも書いた操作対象の認識方式の違いなどにより、RPAツール毎にWindows/Webなどの区分ごとに得意とするアプリケーションが異なります。またツールによっては、リモートデスク/DVI環境での利用ができないものもあるようなので注意が必要です。
また、上記機能を補完する意味で、オープン系RDBへの直接連携やAPI連携機能なども併せて提供しているものも多いようですが、RPAツールは、もともとキーボードやマウスをシミュレートするソフトウェアロボットが主体です。そのため、オープン系RDBへの直接連携やAPI連携機能だけを利用する場合には、データの関連性をマウスで設定するだけで簡単に設定が行えるような、ビジュアル系のデータ連携(ETL)ツールに軍配が上がるのではないかと思います。
01a_RPAのできることの例
2.RPAの業務的な側面
次に業務的な側面から見ますと、現時点では「ルールと手順がしっかり決められた定型処理作業」が得意とされており、特に大量のデータを短期間に処理することに非常にたけています。
また、ロボットを利用しての作業と言う観点から見ると日々や季節などで作業量が大きく変動するような業務や、営業時間外に行うなどの時間的に制約がある作業にも向いていると思われます。
一般的に導入効果が期待できそうな例としては以下のようなものがあるようです。
1)電子データからシステムへの登録作業の例
顧客や販売代理店から送られてきたExcelやPDFなどの形式で作成された定型フォーマットの注文書を、一括して社内システムへ転記・登録を行うような処理。
このような処理は、システムで対応している場合もあるようですが、処理量と開発費用の関係などで人手によって対応していることも多く、1種類の作業の処理量は大したことがなくても同様の処理が数多く存在する場合には、それなりの導入効果が期待されます。
さらに、メールソフトと連携して添付データの自動取出しを行うことで、データ収集の自動化を行うことやOCRソフトと連携させることにより、FAXや紙からのデータの電子化を行い、社内システムへ登録するなどの応用によりさらなる効果が期待されると考えられます。
2)システム間でのデータ転記・登録作業の例
外部販売会社が運用しているWebシステムなどからの注文情報を社内システムへ転記登録を行うような処理。
外部販売会社システムの仕様などにもよりますが、一般的に外部システムと社内システムはセキュリティの観点等の問題もありシステム連携ができていない場合が多く、また複数の販売会社を利用している場合などは販売会社毎に画面フォーマットが異なりますので、業務複雑性排除の面も含めて効果が期待されます。
さらに、社外・社内間のシステムだけではなく、社内間のシステムにおいても費用的な問題、技術的問題で連携できていない場合も多々ありますので、この部分も同様に効果が期待されます。
3)システムからのレポート作成作業の例
日々の締め処理後に行うレポート作成や、海外との時差の関係で相手国の時刻に合わせて行わなければならないレポート作成など、通常勤務時間外で行わなければならない定型作業をソフトウェアロボットに行わせることにより、作業者のメンタリティを含めた効果が期待されます。
4)複数Webサイトからの情報収集作業の例
特定商品や事象などの情報を、インターネット上で定型フォーマットにて公開している複数のサイト等から短い周期で繰り返し情報収集することにより、特定商品や事象の動向情報を提供するような処理。
従来このようなことを行う場合には、専用のシステムを開発するか大量の人手で対応しないと実現しなかったことを、短期間・低価格で実現することが可能となり、新しいビジネスに応用するなどの効果が期待されます。
また、視点を変えてシステムの視点で考えてみますと過去にシステム化の検討を行ったが、費用対効果の面などでシステム化が行えなかった業務や契約・技術などの面でシステム化を断念した業務はある意味対象となりやすいと考えられます。
3.RPA/ロボット作成ツールとしての側面
ITにお詳しい方の中にはご存知の方もいらっしゃると思いますが、実は、RPAツールを使わなくても開発ツールの「VisualStudio」や、Webテスト自動化ツールの「Selenium」などを利用することにより、同様のソフトウェアロボットを作成することは可能です。
しかし、必要とされる知識や作成にあたっての支援機能、さらに作成するための作業工数などが大きく異りますので、RPAツールを利用する意義は非常に大きいのではないかと思います。
そういった意味においてもロボットをいかに簡単に作成する事ができるかが大変重要な要素1つとなります。
一般的なRPAツールでは、ロボットの作成・動作検証機能として、対象アプリケーションに対する人間の操作を記録させる操作記録機能と、繰り返し・判断などの作業の流れ、エラーが発生した場合の処理などの業務ルールを、フローチャート形式などで絵的にわかりやすく作成したり、各操作で必要とされるデータ読み替え(事前に作成されたデータ変換関数などの呼び出し)などを属性情報として設定できる動作設定機能を持っていることが多いようです。
画面の構成や詳細機能などはRPAツール毎に異なりますので、UiPath(ユーアイパス)を例に説明しますとロボットの作成・動作検証に関しては「UiPath Studio(ユーアイパス スタジオ)」と呼ばれるツールにて行います。
02_UiPath Studio(ユーアイパス スタジオ)の動作設定画面イメージ
03_UiPath Studio(ユーアイパス スタジオ)の操作記録イメージ
さらにUiPath Studio(ユーアイパス スタジオ)では、ロボットの動作設定を階層化したモジュール構成で定義することが可能になっています。
例えば「Excelファイルを開いて1行毎に記述されている内容を元にデータ入力を行う」や「エラー画面が表示された場合のエラー処理」などの動作定義部分を、個別に異なる操作記録による動作設定部分と分離定義し、テンプレートとして再利用することで、より効率よくロボットの作成が行える仕組みなどを持っています。
04_UiPath Studio(ユーアイパス スタジオ)におけるテンプレート化のイメージ
また、UiPath Studio(ユーアイパス スタジオ)では、動作検証機能として動作定義の内容を確認しながら1ステップづつ実行したり、特定のステップ(ブレークポイント)まで一挙に実行を行ったりなどの多彩な実行がサポートされていて効率的な検証を行うことが可能です。
05_UiPath Studio(ユーアイパス スタジオ)の動作検証画面イメージ
4.RPAの維持・管理の側面
当然のことながら作成されたロボットは、業務やシステムの変更に合わせて維持管理を行っていく必要があります。
導入当初は、適応範囲も小さくロボットの数も少ないので、大した体制も作らずに必要な都度対応を行っていけば何とかなるかと思いますが、時間の経過とともに適応範囲が広がるに従ってロボットの数が急激に増えていき、きちんとした維持・管理体制を作らないと「業務やシステムの変更に対応済みロボットはどれで未対応はどれなのか」などが分からなくなったり、「業務変更で不必要となったロボットが認識できなく」なったりなどで、ロボットの有効稼働率が下がってしまうと共に、維持管理コストの増大が予想されます。
導入当初より、導入担当部署だけではなくシステム担当部署や関連する他部署など、将来的な管理体制を想定して進めることをお勧めいたします。
さらに、RPAツールによっては、ロボットの更新履歴やバージョンを管理したり、ロボット実行においての不具合をレポートしたり、ロボットが対象とするアプリケーション情報を管理することにより、アプリケーションの変更がどのロボットに影響があるかなどの情報を管理するなどの運用管理機能を持っているものもあり、それらの機能を有効活用することによって効率的な管理が図ることが可能となるようです。
【まとめ】RPAの仕組み/RPA導入でできる業務の自動化とは
RPAは万能ツールではありませんが、RPAに適合する「ルールと手順がしっかり決められた定型処理作業」の範囲で利用する分には、非常に有効なツールではないかと思います。
但し、RPAは業務の生産性向上の目的を果たすための1手段であり、RPAを採用すること自身が目的とならないように注意が必要です。
また、すぐに成果を上げることが期待される局面も多いので、現場の要望に合わせたボトムアップ的な視点でRPA化を実現していくことも必要と思われますが、ある程度の成果が見えてきたところで、トップダウン的な視点で業務を見直し、本質的な業務の改善を行いながら、システム改修や人的BPOもにらんで適材適所にRPAを適応させていく事が非常に重要なことだと思います。