RPA開発という言葉を聞くと、RPAのツール導入に意識が向いてしまうかもしれませんが、重要なのはそこだけではありません。導入後に自動化したい作業を定義し、運用を決めることも重要なプロセスです。この一連の作業がRPA開発とされ、シナリオを作る、ロボットを作るなどを行ないます。
適用しづらい業務に無理やりRPAを導入すると、不要なトラブルやコストの発生につながる恐れがあります。さらに、運用方法が決まっていないと誰も管理せず、管理者不在の野良ロボットを作りかねません。
RPA導入の際には大きなコストがかかるかもしれませんが、長い目で見たときに、人件費などのコスト削減が狙えます。長期間使うことが想定されるだけに、RPA開発をしっかりと行なってコスト回収前に使えなくなるような事態を避けましょう。
Contents
RPA開発の準備

RPA開発の前には、事前準備をする必要があります。RPA開発をスムーズに進められるよう、しっかりと準備を行ないましょう。
RPAの適用範囲を決める
まずは現状の業務を洗い出して整理します。細かい作業の内容はあとから考えるので、いったん、RPA導入の範囲に含めるかの判断で構いません。一度決めたあとでも、RPA開発がはじまる前であれば、変更も比較的簡単です。
次に、洗い出した業務がRPA対象になるかを具体的に判断していきます。
判断基準は大きく分けて2つです。
- 業務手順が複雑ではなく、単純な繰り返し作業に向いているか
- 稼働削減によるコストメリットが出るか
複雑な業務を無理して、RPA開発に組み込む必要はありません。簡単な業務に対してRPA開発を行ない、必要があれば複雑な業務も組み込んでいきましょう。大量処理が発生する業務をRPA化できれば大きなコストメリットは出ますが、反対にコストが増大してしまうようなら、取り急ぎその業務は外してしまうほうが得策です。
プロセス・業務量の可視化
RPA開発を行なう際の業務範囲を決めるために、現状の業務を可視化します。一気に細分化しようとすると作業量が膨大になってしまうので、ある程度の単位で分割しましょう。そこからさらに細分化していくなど、段階的に行なうと混乱を招かずに済みます。どこまでの粒度で記載するかは、作業者の認識を事前に合わせておきましょう。
流れと同時に工数も可視化できると、導入後の分析もしやすくなります。コストメリットが出ると踏んでRPA開発を行なっているからには、実際の効果も図る必要があります。思うほどメリットがない場合は、あらためて導入方法を検討する必要があるでしょう。
ルールの決定
現場でメンテナンスできることはRPAのメリットの一つではありますが、枠組みとなるガイドラインは設定しておきましょう。各部署がバラバラに導入すると取り返しがつかなくなります。基本的に同じ方法で導入し、各部署固有のもののみ、裁量を認めるくらいまで決めておくほうが安全です。
また、ツール化した仕様をどのようにして資料で残しておくのか、変更があった場合の対応、担当者が代わったときの引継ぎをどうするのかといった運用ルールを、統一しておく必要があります。
RPA開発の方法
RPA開発には2種類の方法があります。
スクリプトベース
プログラミング知識があるユーザー向けとなるのが、スクリプトベースの開発です。ロボットが動作するためのコードを書いていく方法です。
独自言語の場合も汎用のプログラミング言語の場合もありますが、すべてを記載していくツールはほとんどなく、ライブラリやコード補完機能を使いながら、コーディングしていく形が一般的です。プロシージャ化や変数をうまく使いながらコードが書けると、メンテナンス性が上がりデバッグも簡単になります。
別プログラムとのデータ連携が必要になるレベルになると、スクリプトベースの開発は必須となります。コードが書ければ便利ですが、まったくプログラミング知識のないユーザーからすると、ハードルが高いと感じてしまうところでしょう。
テンプレート/フローベース
プログラミング知識がなくてもRPA開発ができるのがこの開発方法です。ドラッグ&ドロップで大まかなフローを作り、細かい設定はウィザードやプロパティ画面で順番に入れていきます。目で見ながら直接動作が入力できるので記録は簡単です。
ただし、プログラムの効率化やメンテナンス性はあまり考慮されていないので、あとからスクリプトベースで修正しようとすると困難なケースが多くなっています。複雑なロボットを構築するほどそれが顕著に出るので、安易にテンプレート/フローベースには飛びつかず、スクリプトのわかるエンジニアを手配することも検討してから判断しましょう。
RPA開発を自社で行なうメリット

RPAを自社内で開発するおもなメリットを3つ紹介します。導入当初から自社開発が難しい場合は、ベンダーに支援してもらいながら、少しずつ自社開発にシフトしてくことも可能です。
柔軟に対応できる
ベンダーに依頼して修正や追加を頼むと、どうしても費用と時間がかかります。保守契約のような包括契約がなく、改修ごとの随時契約の場合は、改修のたびに契約からスタートとなり、現場の修正希望の速度についていくことができません。
それに対し、自社開発であれば契約の問題は発生せず、担当者の稼働が空いている限りはすぐに対応できます。細かい変更がたくさん出たときでも、気軽に対応できるようになります。
現場業務を見ながら、逐一細かい変更をしていくような微調整は、自社開発だからこそできる方法です。
メンテナンスが容易
RPAを導入したあとは、細かい調整や改善を繰り返していくことになります。ベンダーに依頼すると手続きに時間がかかってしまいますが、自社開発ならすぐ対応できるのが魅力です。会社やプロジェクトによって細かい違いはありますが、ある程度のプロセスを踏まないと、ベンダーは改修に着手できません。認識の齟齬をなくすために必要なプロセスではありますが、スピード感に欠けることはしかたます。
自社でRPA開発を行なえば、ベンダーへの修正依頼などが不要になり、社内で様子を見ながら調整できるため、自社が使いやすいように改善できることもメリットです。自社開発で早く対応できる力をつけておくのが無駄なくRPAを稼働できるポイントの一つです。
低コスト
多くのRPAは業務担当が自分で自動化を進められるので、ベンダーに依頼して直してもらう必要がありません。特にテンプレート/フローベースの開発がされていれば、メンテナンスも業務担当が完了できます。
スクリプトベースの開発を行なっていても、情報システム部のような社内チームがRPA開発のノウハウを持っていれば、専門のエンジニアでなくとも、社内で対応することができます。
他社のエンジニアを雇おうとすると、自社で導入しているRPAの仕様を知っている人を抱えておく必要があるため、コストが高くなりがちです。ベンダーに人員を確保してもらうだけでも費用がかかるので、待機分の無駄が削れるだけでも低コストで運用を続けることができます。
RPA開発を自社で行なうデメリット
自社で確保できるエンジニアの多くはRPA開発専門のエンジニアではないため、開発ベンダーのエンジニアと比べるとRPAへの対応に不安があります。
また、仮にメンテナンスできるとしても、ある程度の教育コストが必要となる場合が多いでしょう。担当者が短期間で交代する事態が発生すると、教育コストがかかり続けてしまう懸念もあります。
1人が退職することも想定して、複数人教育しておく必要もあるため、わかる人を増やすほどコストも増えていきます。
RPA開発を外注で行なうメリット
RPA開発を外注で行なうメリットは、自社で行なうデメリットを解消できることにあります。外注する場合、プロのエンジニアが対応してくれるので、教育のコストはかかりません。
万が一、担当者が交代することになっても、会社としての契約が続いている限り、別の担当者を用意してメンテナンスが可能な状態は作り続けてくれます。
教育や担当者の交代など、人的リスクを回避してくれるのが外注で行なうメリットです。
RPA開発を外注で行なうデメリット
RPA開発を外注した場合は、特にコストの面でデメリットがでてしまいます。
もともと、エンジニア系の人材を使わなくても、自動化できる仕組みが整っているのがRPAです。もちろん、改修担当者の稼働は必要ですが、改修する内容がわかっているので、資料化したり、詳細に伝えたりといったプロセスが省けて、少ない稼働で動けます。
外注してしまうと、単なるエンジニアの修正コストのみでは足りません。改修仕様のすり合わせなど、外部に依頼するからこその作業も発生します。エンジニアの単価も高いため、単価の高いエンジニアを長時間使うことになれば、当然自社開発よりもコストがかかることになるでしょう。
RPA開発は自社でもできる
RPA開発は自社でも行なえるように作られていることが多く、教育にコストがかけられるなら、自社開発前提で導入するとよいでしょう。
業務担当者が自ら自動化の仕組みを作れることは、RPA開発の大きなメリットです。RPAツールの費用を高額に思うかもしれませんが、IT部門が本格的に介入せず、エンジニア系の人材を使わずに自動化を推進していくと、長い目で見たときにコストメリットを出すことができるでしょう。