Skip to content

【UiPath】フローチャートとシーケンスの使い分け

Posted in ノート

Last updated on 2022年8月14日

どうも、エピックです。

UiPathの開発の最もベースとなるアクティビティであるシーケンスとフローチャートですが、それぞれどういう良さがありどう使い分けるがいいのか気になっている方は多いのではないでしょうか。

本記事では、そのような疑問を持っている方向けにシーケンスとフローチャートについてまとめてみたいと思います。

本記事では、UiPath Ver 2021.10.4 を使用しています。

シーケンス(Sequence)とは

シーケンスは、上から下への流れを示す単純な線形表現で処理を記述(アクティビティを配置)する自動化のベースとなるアクティビティになります。

自動化の処理についても、上から順番・順序通りに処理が行われます。

処理の流れが一方的でわかりやすいため単純な処理を記述するのに適しています。

ある程度のまとまった処理をブロック化しておくことで、処理全体の流れをまとめておくという使い方もできます。

一方、一つのシーケンス内で複雑な処理行ってしまうと画面上の情報量が多くなり見づらくなってしまったり、処理の内容が視覚的に理解しづらくなるというデメリットがあります。

シーケンスにおいて、順次・分岐・繰り返しの処理は次のアクティビティなどを利用するでことで実現できます。

処理区分 実現方法
順次処理 シーケンス内に配置したアクティビティは順次処理となります
分岐処理 [条件分岐] / [スイッチ] アクティビティ を利用することで実現可能です
繰り返し処理 [繰り返し (コレクションの各要素) ]/ 繰り返し (各行) アクティビティなど
繰り返し系のアクティビティを利用することで実現可能です

フローチャート(Flowchart)とは

フローチャートは、アクティビティを2次元の形で接続することで処理を記述(アクティビティを配置)する自動化のベースとなるアクティビティになります。

配置したアクティビティ間を矢印で結ぶことによって処理の順番を設定することができるため、処理の順序が視覚的にわかりやすいという特徴があります。

一方で単純な処理の記述に使用すると無駄に開発コストがかかったり、自由に記述できるが故に構造化されていない複雑な(第三者からみて理解が追いつかない)ワークフローとなってしまう場合があります。

加えて、[繰り返し (コレクションの各要素) ]アクティビティなどシーケンス型のアクティビティを使用した場合は、処理の詳細を確認するのにそのアクティビティを開かなければならないといった手間が発生します。

フローチャートにおいて、順次・分岐・繰り返しの処理は次のアクティビティなどを利用するでことで実現できます。

処理区分 実現方法
順次処理 アクティビティ同士を一方向の矢印で繋ぐことで実現可能です
分岐処理 [フロー条件分岐] / [フロー スイッチ]アクティビティ を利用することで実現可能です
繰り返し処理 アクティビティ同士を環状に繋ぐことで実現可能です。
[繰り返し (コレクションの各要素) ]/ 繰り返し (各行) アクティビティなど
繰り返し系のアクティビティを利用することもできます。

使い分けのポイント

シーケンスとフローチャート、ぞれぞれの特徴は次のようになります。

これを踏まえ実際の使い分けについてで考えてみます。

  • 業務の流れの記述はフローチャートを使う
  • 具体的な処理記述はシーケンスを使う
  • シーケンスからフローチャートを呼び出さない

(1)業務の流れの記述はフローチャートを使う

業務全体の処理ではさまざまな分岐が存在することがほとんどです。

「Aファイルがきたらこの処理」「Bファイルがきたらこっちの処理」といったようにその後の処理方法が分かれます。

これを分かりやすく表現するという点でフローチャートを活用することができます。

(2)具体的な処理記述はシーケンスを使う

具体的な処理の記述はシーケンスを利用します。

システムへの投入やエクセルへの記入などがこれにあたります。

業務においても具体的な処理は意外にもシンプルなものが多く、ほとんどの場合順序がきまっています。

シーケンスはこのような明確に順序が決まっている処理を記述するのに活用することができます。

(3)シーケンスからフローチャートは呼び出さない

できるできないで言えば、シーケンスからフローチャートを呼び出すことも可能です。

ただし、これは処理の視覚性の点からあまりおすすめできません。

このような場合は再度設計をすることで解決することがほとんどですが、どうしてもそうなってしまう場合は、ワークフローを分割し呼び出すようにします。

こちらに解説をしているのでご覧ください。


おまけ:ステートマシン

シーケンスとフローチャートについて書きましたが、実はUiPathにはもう一つステートマシンというワークフローの記述方法があります。

少し複雑な記述方法となり小規模では利用することはまずありませんが気になる方はチェックしてみてください。


最後に


今回はUiPathの開発の基本となるワークフローの記述方法についてでした。フローチャートとシーケンスがありますがそれぞれ一丁一旦があるので開発の際は使い分けをしてみてください。

最後までお読みいただきありがとうございました。

では。