【保存版】RPA導入においてロボット構築の際に心がけることをマスターしよう!

こんにちは。
「RPA導入においてロボット構築の際に心がけること」について書いていきたいと思います。
今度ロボット作ることになったけど、どうしたらいいの?

ということをもう少し詳しく知りたい人には必見です!

RPAツールを導入し、業務を自動化する場合に、RPAツールを使ってロボットを開発しなければなりません。

簡単な業務であれば、RPAツールでマウスだけを使って、普段行っているパソコンの操作をRPAツールに記憶させることで、簡単にロボットを開発することもできます。

しかし、企業の中の業務は複雑で、ちゃんとした仕事をロボットにやらせようとすると、そう簡単にマウスだけでつくることはできません。

そこで必要になるのがプログラミングです。

RPAツールの中でプログラムをつくるのです。。

今回は「RPA導入においてロボット構築の際に心がけること」についてご紹介していきたいと思います。

1. 経営コンサルタントもロボットをつくるの?

「経営コンサルタントもロボットをつくったりするの?」と思われるかもしれません。

答えはYESです。

ロボットもつくりますし、ERPパッケージ等でプログラムを開発したりする場合もあります。

ERPとは?
Enterprise Resources Planningの頭字語。企業経営のリソースを適切に管理するためのシステムを指す。

ただ、通常は外部のシステム開発を専門に行うベンダーに依頼することが多いです。

一方で、今の世の中、経営コンサルタントも基本的なITのスキルやナレッジがなければ、

  • 新規事業の戦略を立案
  • 業務プロセスの構造改革

などを行うことはできません。

経営コンサルタントだからといってITを毛嫌いする人もいますが、ITのスキルやナレッジを身につけておくと、後々絶対役に立つと思います。

例えば、クライアントの社内には色々な情報システムが入っています。

SAPって聞いたことあるかもしれませんが、ERPという業務システムのパッケージが入っていることが多いです。

クライアントによっては、パッケージではなく、自社開発している企業も多くあります。

それらのシステムに蓄積されたデータを分析したりするためのデーターウェアハウスとか、データ分析や統計解析のツールなど様々なシステムが導入されています。

これらの情報システムの技術や考え方について、きちんとした基礎知識を持っていないと、クライアントの業務課題を分析するためにヒアリング等してもさっぱり分からないということになりかねません。

そのため、コンサルティングファームから他のコンサルティングファームへ転職をする場合でも、ITについてのスキルがあるかないかは結構重要になります。

2.ロボットをつくる時に心がけていることは?

ロボットをつくる際に心がけていることは、「きれいでやさしいロボット」をつくることです。

はじめに、「一度作ったロボットが働きだすと、日々の業務を一緒に実施してくれる仲間として長い付き合いになります」と書きました。

長い付き合いをしている間には、

  • 仕事の仕方の変更
  • 操作している会社の情報システムの変更

などは避けられません。

使っているEXCELのフォームが変わることなんてしょっちゅうです。

その時に、「保守」と言って、ロボットの中身を見直さなければなりません。

普段は従順に仕事をこなしてくれていたロボットの中を開いてみて、中身はぐちゃぐちゃで何をどこから手を付けて直せば良いか分からないなんてことはよくあります。

そこで重要になることが、「きれいでやさしいロボット」をつくることです。

  • 「きれいな」ロボットとは?
  • 「やさしい」ロボットとは?

について詳細をみていきましょう。

「きれいな」ロボットとは?

ロボットのお腹をあけてみて、あらびっくりなんとことはよくあります。

手術でお医者さんが患者さんの腹を開いたときと同じです。

思ったところに想定する臓器が配置されていなかったり、他の人と同じように理路整然と血管がつながっていなかったりすると、どんなに優秀な「ゴッドハンド」のお医者さんでも、そう簡単に手術をすることはできないですよね。

ロボットも同じで、ぱっと見てロボットの中身、つまりプログラムが「きれい」で直感的に理解できることが重要です。

「やさしい」ロボットとは?

やさしいとは、保守する人にとってやさしいということです。

つまり、保守がしやすいロボットということです。

「きれい」ということに近いところもありますが、どこを直せばこの業務の手順を直せると直感的に分かりやすいことが重要です。

ここを変更すると、他の処理手順も変わってしまうかもしれないという不安があると、中々簡単には直しにくいですよね。

このように、保守する人が安心して簡単に直せる「やさしい」ロボットをつくることは重要です。

3.きれいでもやさしくもないロボットとは?

きれないでもやさしくもないロボットは、簡単にいうとスパゲッティみたいなロボットです。

あまり聞いたことがないかもしれないですが、「スパゲッティプログラム」という言葉があります。

これはまさしく、コンピューターのプログラムがスパゲッティのようにぐちゃぐちゃに絡まり、プログラムのどこが始まりで、どこが終わりか分からないようなプログラムになってしまっていることを指しています。

おそらくそのプログラムを書いた本人ですら、時間が経つと理解できなくなってしまいます。

RPAで業務を自動化した場合、日々の業務の見直しなどで、一般の情報システムよりも頻繁にロボットの中身を見直すことがあります。

このようなスパゲッティのような状態だと、ロボットの処理の仕様を少しだけ変えたい場合でもどこから手を付け始めて良いか分からなくなります。

また、ロボットで障害が発生するとプログラムの中身を確認して、どこにバグがあるか探さなければなりません。

しかし、ロボットの中身がスパゲッティ状態だと、バグがどこにあるのか探すのはとても困難です。

密林の中で、小さな虫を探すようなものです。

また、バグだと思って直してはみたけど、直したことで正しく動いていたプログラムに影響が出て、違うバグを作ってしまうなどということは、スパゲッティプログラムではよく起こります。

そこで、私たちはプログラムを手直しした際は回帰テストを必ず行います。

回帰テストとは?
コンピューターのプログラムに手を加えたことで、手を加えていないところに影響が出ていないかどうかを確認するテストのこと。

自分以外の人が書いたプログラムを直さなければならなくなった時に、そのプログラムがスパゲッティだったら悲劇です。

果てしなく回帰テストをし続けなければならなくなります。

4.「 きれいでやさしい」ロボットを作るには?

「きれいでやさしい」ロボットをつくるということは、簡単に言えば「誰が見ても何が書いてあるかすぐにわかるプログラム」を組むことです。

例えば、レゴを想像してみてください。

ブロックを組み合わせて、積み上げていくことで様々なものを作ることができます。

写真のように、東京スカイツリーも作ることができます。

ここで重要なことは、“どのように大きくて複雑なレゴの作品も、必ず小さいブロックの組み合わせで、一つ一つのブロックがきっちりと結び付いている”ということです。

プログラムを開発する際も同じだと思っていただいて構いません。

ブロックではなく、

  • モジュール
  • コンポーネント

などと言ったりしますが、一つ一つの小さいプログラムの塊を組み合わせて、プログラムを開発するのです。

小さいというのは、ツールや言語にもよりますが、一目見て内容が分かる量で、20-30行くらいでしょうか。

4、5行とかだとちょっと小さすぎて、わざわざ分ける意味はないかもしれません。

一つ一つのブロックがブロックごとに完結していれば、修正時は、小さいブロックの中身に集中すれば良いだけです。

以下の図では、どこを直すと、どのように処理が変わるのかが、一見分からないですよね。

図 絡み合ったロジック

<図 絡み合ったロジック>

でも、上記の処理も、基本的には以下のような3つのパターンの組み合わせで表現することができます。

以下のように表現されていると、どこをどう直せばよいか分かりやすいですよね。

図 3つの基本ロジック

<図 3つの基本ロジック>

つまり、見た目がきれいないロボットは、保守する人にもやさしいということです。

4.まとめ

比較的簡単に導入ができて、効果がすぐに出るようなことがメディア等で紹介されていますが、紹介されているほど簡単ではありません。

効果が十分に出るようなまとまった業務の自動化を行うには、どうしてもロボットの中のプログラムを作る基礎知識は必要になります。

そのためには、eラーニングや座学の研修等を受ける必要が最低限あります。

また、研修を受けたからと言って、すぐに色々なロボットを作り始めることも難しいです。

初めは、ネット等でサンプルやTipsとかを検索したりして、まずは「真似る」ことから始めてみるのが良いと思います。

「システム設計のセオリー」はシステムを設計する時の考え方を分かりやすく解説しているので、コンサルタントの方も必読です。

シリーズで出ているので、余裕ができたら他のシリーズも読んでみて下さい。

「だまし絵を描かないための– 要件定義のセオリー 」

「――システム構築の大前提―― ITアーキテクチャのセオリー」