RPAを導入するときにハードルとなるのが、ツールの開発です。ITのノウハウがなければベンダーに任せなくてはいけません。しかし近年では、RPAツールを作成するためのアプリケーションも豊富に登場しているため、うまく活用すれば自社開発も可能です。本記事では、RPAツールの概要や開発手順などについて解説します。
いま注目のRPAとは?
「RPA」とは「Robotic Process Automation」の略称で、直訳すると「ロボットによるプロセスの自動化」を意味します。文字通りRPAは、これまで人が行っていた作業をロボットに行わせることをいいます。「仮想知的労働者」とも呼ばれており、まるで従業員が増えたかのように取り扱うことが可能です。
実際には、すべての業務を任せられるというわけではなく、作業の中で定型化されたものがRPAに向いています。たとえば、給与計算・経費生産処理・データ集計作業・経費精算処理などが定型作業に該当します。このうち時間がかかる業務は、繁忙期と重なると残業が発生することもあります。そこでRPAを導入すれば、こうした作業が自動化され、作業者の負担を減らしつつ効率的に作業を進められるわけです。
RPAツールの種類
RPAツールには、どのような種類があるのでしょうか。ここでは、実際に開発するにあたり、その難易度から大まかに分けて2つのタイプをご紹介します。
簡易型
「簡易型」は文字通り、開発が簡単に行えるタイプのRPAツールです。主に単純な定型作業向けのツールとなっています。RPAツールを導入するには、人が行っている業務と同じ行動をさせなければいけません。そこで簡易型のRPAツールでは、記録機能によって人の作業を覚えさせます。
単純な作業であれば、これだけで定型業務を覚えられるので、特別な知識は不要です。プログラムを組む必要がないため、多くの部門で取り扱えるのがメリットです。もっとも、これは裏を返せば、複雑な作業をさせられないというデメリットでもあるため、小規模運用を考えている企業向けのRPAツールといえます。
開発型
「開発型」は、定型作業をプログラミングによって組み込むタイプのRPAツールです。簡易型とは違って、複雑な作業に対応できるメリットがあります。
通常、RPAツールの開発時には、用意されているライブラリを使用してプログラムを組みます。しかし、複雑なプロセスに関しては、これだけで対応させるには難しいという側面があります。その点、開発型ではプログラミング言語を使用して内部機能を自作します。プログラミング言語に通じているほど、作業させられる幅も大きく広がるのです。
利用する言語はツールによって異なりますが、「Python」「C#」「VBScript」「Google Apps Script」などさまざまです。プログラミング言語を扱える人材がいる場合は、その人が扱える言語からRPAツールを探すとよいでしょう。
RPAツール開発の手順と流れ
ここからは、実際にRPAツールを開発するための手順について解説します。
要件定義
はじめに、通常のソフトウェア開発のように要件定義書を作成します。RPAの要件定義では、「ロボットに置き換える作業内容」と「予想されるロボットの動き」の2つを詰めていきます。
作業内容としては、まずデータフロー図を作成して、データがどのように流れていくのかを図案化します。その際、保管場所やプロセスの結果なども記載してください。入念に作り込む必要はなく、データフローがわかればそれで問題はありません。
続いて、ロボットの動きを実際に業務とすり合わせながら確認します。たとえば、作業中にExcelなどのソフトウェアが固まった場合どうするか、動きにずれが発生した場合どうするかなど、細かい部分を決めていきます。特に、ソフトウェアが重くなって思うように動作しないケースはよくあるので、確実に想定し設定しましょう。
対象業務のプロセス可視化
要件定義書の作成が終わったら、次はシナリオ設計を行います。ここでは業務プロセスを可視化させて、必要なツール・データ・システムを洗い出していきます。実際にロボットが行うための業務手順を定義するので、ここでミスすると正常に動作しなくなるおそれがあります。失敗しないためにも、業務担当者とともに慎重に進めたほうがよいでしょう。
また可視化の際は、無駄な業務を洗い出して工程から削除します。たとえば、複数ファイルなど統一できるものは1つにまとめておくと、導入後の作業が効率的になります。
運用マニュアル作成
導入後もしっかりとRPAを管理できるよう、新しいルールを設けなくてはいけません。ここを疎かにしてしまうと、後々トラブルの引き金となる可能性もあります。
たとえば、部門ごとにRPAツールを導入し、各部署の特定の人材に管理させていた場合、管理が属人化してしまいます。こうなると、管理者が何らかの形で不在となった際、RPAツールだけが取り残されることとなります。
この場合、トラブルが発生したときに対処できなかったり、システム負荷がかかったりと、さまざまな問題が発生しかねません。そのため運用マニュアルを作成し、RPAツールを適切に管理できるようにしておくことが大切です。
開発・動作テスト
ここまでの準備が整ったら、実際に開発を行います。開発を行う際は、ベンダーに依頼するか自社開発するかの2択となりますが、IT人材がいる場合や簡易型の場合は、自社開発したほうがよいでしょう。そうすればノウハウが蓄積されて、今後も開発が可能となります。一方、自社にIT人材がいない場合や、すぐにRPAツールを導入したい場合は、ベンダーに開発依頼します。
そして開発後は、実施検証です。テスト用のデータを使用して、正常に稼働するかモニタリングします。過去、同じ業務で不正なデータの取り扱いがあった場合は、それを利用してエラーとなるか確かめてみるのもよいでしょう。また、長時間稼働による耐久テストも必要です。これらが終わったら、本番に移ります。
リリース
本番での導入後は、状態を定期的に確認して、モニタリングと評価を行います。そして、問題が発生した場合は都度修正することで、よりよいオートメーションを実現することが可能です。
また、RPAの動作タイミングを確認するためには、作業スケジュールを組むことも重要です。スケジュールを組んで作業すれば、RPAがどのタイミングで動作するのかがわかります。たとえば、データが取得されたタイミングや日中の特定の時間など、動作タイミングがわかることで正常な動作を確認できます。
RPAをローコードで作成できる「Power Apps」とは
「Power Apps」は、Microsoftが提供するカスタムアプリ制作のためのプラットフォームです。通常のアプリケーションのようなプログラミング言語を使用した開発ではなく、ノーコード・ローコードでアプリケーションが作成できます。
たとえば、複数のExcelファイルで集計していたデータを、1つにまとめるアプリケーションを作成したいとしましょう。このとき、集計していたデータのテーブルを読み込ませるだけで、簡単に雛形を作成してくれます。あとは雛形をもとに、出力を作成するだけです。このように、簡単なアプリケーションから複雑なものまで手軽に作成できるのがPower Appsです。
このツールはMicrosoft製ということもあり、ExcelなどのOffice製品との連携性に優れるという特徴があります。特に、Microsoftが提供するRPA製品「Power Automation」とも連携可能で、これを活用すれば自社の業務に合わせたRPAツールを作成できます。
まとめ
RPAの開発においては、要件定義書やシステム設計を適切に作成することで、ミスのない導入が可能です。しかし開発では、プログラミング言語が使用できないと、複雑な動作をさせらないという問題があります。そこで利用したいのが、Microsoftが提供する「Power Apps」と「Power Automate」です。ノーコード・ローコードでアプリケーションを作成できるPower Appsと、ワークフローを自動化するPower Automateを組み合わせれば、簡単にRPAツールを作成できます。