Muika's Blog

プログラミング、ツールや英語の情報をつらつらと発信していきます。

【RPAツールの紹介】Uipath使ってみました、その①

f:id:mmm65536:20180729151756p:plain
色々調査して、Uipath Community EditionかWorkFusionのEA Expressかと迷ったのですが、
機能の豊富さと使いやすさで軍配の上がるUipath Community Edition(条件付き無償版)
を勉強してから、EA Express(完全無償版)を勉強すれば、何が不足しているのか、実現する上での
問題点等が比較しやすいと判断しました。
まずは、UipathのCommunity Editionを使ってみたいと思います。
最初動画のほうを見たのですが、いろいろのワードが説明もなく
出てくるので、???でした。

下のオンラインマニュアルを見ながら動作を理解していくようにしました。
studio.uipath.com


最初は、全体の処理の流れの制御部分の機能説明です。
1.シーケンス
2.フローチャート
3.ステートマシン(状態遷移)

1は真っすぐな一本道の処理の場合に利用します。
2は条件分岐が発生する場合に使用します。
3は条件分岐では複雑になりすぎる場合に状態遷移で表現します。
1→2→3とだんだん複雑で大規模な処理に対応できるようになっています。

大規模な処理だと、一番トップがステートマシンで記述され、その下がまたステートマシンになるか、
フローチャート、シーケンス等になるかと思います。
ここを説明の最初に持ってくるあたりが、レコーダーでパパっと記録、再現動作させて終わりではなく、
Uipathをシステムの基軸にして運用させようとする意気込みが感じられ好印象でした。

数年のキャリアのあるプログラマーにも結構いるのですが、ステートマシンで表現すべきところをフローチャート的に
フラグを一杯立てて処理作り、作った当人も訳が分からなくなってヘルプに呼ばれる事態を沢山経験してきました。
(※これにマルチスレッドが加わり、各スレッドで気ままにフラグを変更しているとアウトです。)
ステートマシンの概念、state, Trigger、Condition、Actionをプログラマでもおさらい(再勉強)するのに
良いですよ。
業務フローでも大がかりになると、分岐自体がフローチャートの単なる分岐ではなく、状態が遷移して
違う状態へと切り替わる場合があります。これをそのまま表現すると、複雑になりメンテナンスが
難しいものとなります。
そのため、状態遷移で表現するとすっきりします。
それでも複雑になる場合は、階層化して、親の状態遷移、それから呼ばれる
子の状態遷移、孫の状態遷移と作っていけば、複雑なシステムでも表現が爆発することなく、単純な塊として
管理できるものとなります。
またその過程で無駄な部分等が浮き彫りになる効用もあります。

ここらがしっかり実装されているので、CMSExcel,Wordの自動化といった軽い作業にとどまらず、
全社すべてのシステムを連係してUipathで管理、コントロールすることができます。
RPAの勉強ではじめたのですが、Uipathの統合的なシステム構築の考え方も学べて
一挙両得でした。
次回は、オンラインマニュアルの次のステップ VARIABLES(変数)について、書きます。