どの分野においても、それなりに知識のある人がちょっと見ただけ分かる、「あっ、この人凄いな!」という基準というか、雰囲気があるものです。
剣道なんかでも、達人と対峙しただけで、「あぁ、この人には勝てないな」というのが分かるとか。
そんな感じで、RPAツールにおいても、人が作ったフロー(シナリオ)を拝見すると、ある程度作成者の技量が分かったりします。
それは半年前、もしくは1年前に自分が作成したフローを見る時も、同じです。
多くの場合、修正した方が良い箇所が目につき、多少なりとも恥ずかしく感じるものなのです(苦笑)
まあ、修正した方が良い箇所が見えること自体、自分の「成長の証」としてポジティブに受け取るべきなのですが。。。
■どこを見て、技量を推し量っているのか?
以下は、私個人の見解ということになりますが、同僚も同じようなことを言っていたので、恐らく大きくは間違っていないはずです。
(その1)コメントの解説が分かりやすい
要所要所にコメントが入っていることは当然ですが、そのコメントの内容自体が簡潔で分かりやすいものを見ると、「上手だな」と思わされます。
一般的なプログラマーは、圧倒的に男性が多いですが、RPAエンジニアは女性も結構多いです。
男女を比較すると、女性が書いたコメントの方が丁寧で分かりやすい傾向があると思います。
「気遣い力」という意味で、女性の方が優れていると感じます。
(その2)サブフローに上手く切り出してある
フローには、「メインフロー」と「サブフロー」があります。
初心者のうちは、どうしても「メインフロー」一辺倒に作ってしまいがちです。
慣れてくると、可読性・メンテナンス性を考慮した造りを意識するようになり、必然的に「サブフロー」に切り出す方が綺麗だということに気づきます。
ループとして2回、3回と繰り返す部分を切り出すのは当たり前ですが、1回しか使わない部分でも切り出した方が良い場面は多いです。
結果として、「メインフロー」では、全体図として何を作っているのか?が分かるレベルでありながら、出来るだけシンプルに見せているものが良いと感じます。
モジュール(※1)として切り出せる部分は、基本すべて「サブフロー」として切り出した方が、見た目が綺麗になりますね。
※モジュールとは・・・機能単位、交換可能な構成部分などを意味する英単語。機器やシステムの一部を構成するひとまとまりの機能を持った部品。
(その3)変数名だけで、用途がある程度想像できる
Power Automate Desktopに関しては、変数名に結構な制限があります。
アルファベットと数字のみしか使えないとか、数字を頭に持ってくることができないとか。
英語圏であれば、そのまま単語を当てはめれば良いのでしょうが、日本においては勝手が違います。
全部英単語として処理すると、多くの人にとって頭に入りずらい場面が少なくありません。
例を挙げると、「請求書」のファイルを、「Invoice」とするよりは、「Seikyusho」とした方が一般の事務職の人が見た場合に優しいと感じるでしょう。
この点に関しては、社内において取り決めをしておくのが、本来は良いと思います。
良く使う単語については、ドキュメント化して保存し、社内の人にはそれに沿ってフローを作ってもらうというのが、理想的ですね。
以上となります。
「良いロボット(フロー)」を自分ひとりの頭や発想だけでは、限界があります。
一番良いのは、人が作ったフローを実際に見ることでしょう。
そして、良いと思った部分はどんどん取り入れていきましょう!