![見出し画像](https://assets.st-note.com/production/uploads/images/102162437/rectangle_large_type_2_a57c311fe42e69be1a3c124130d29019.png?width=1200)
【UiPath】ワークフローアナライザーからみる開発のヒント
この記事は「UiPath (produced with UiPath Friends) Advent Calendar 2022」に参加しています。
UiPath Studioには、ワークフローアナライザーという便利な機能があります。ワークフローアナライザーを使うと、作成したワークフローが、決められたチェック項目を満たしているか分析してくれます。
ワークフロー アナライザーは、プロジェクトが高品質と信頼性の基準を確実に満たせるようにする静的コード アナライザーです。静的コード アナライザーは、実行時にステップ インする動的アナライザーとは対照的に、プロジェクトを実際に実行せずに不整合がないかを確認します。
チェック項目はアレンジすることも可能ですが、デフォルトでは「オートメーションのベストプラクティス」に基づいて項目が設定されています。
今回は、ワークフローアナライザーのチェック項目をピックアップして、開発する上で気を付けるべきことをまとめてみました。
すべての項目を厳守する必要はありませんが、意識して開発することでベストプラクティスに近づくことができるのではないでしょうか。
「推奨」と記載している部分は、ワークフローアナライザーの既定値なのでご参考までに。
※ワークフローアナライザーの実行方法はこちらをご参照ください。
1. 誰が見てもわかりやすいワークフローにするには?
(1) 変数・引数
![](https://assets.st-note.com/img/1671000859767-RoAWqnWwJa.png?width=1200)
◆ 変数・引数の命名規則に則って設定する
推奨:半角英数のみ、30文字以下の名前を設定する
推奨:DataTable型は「dt_」を名前の頭につける
推奨:引数の入力値は「in_」、出力値は「out_」、入出力値は「io_」を名前の頭につける
◆ 引数が多すぎないようにする
推奨:1つのワークフローで引数は30個以下にする
◆ 1つのワークフローで、同じ名前の変数(または引数)を作らない
※スコープが異なっていても、同じ名前を付けない方がベターです。
(2) アクティビティ
![](https://assets.st-note.com/img/1671082475397-QjF43qgRyl.png?width=1200)
◆ アクティビティの表示名は、用途に合わせて変更する
推奨:全てのアクティビティの表示名を変更する
推奨:アクティビティの表示名が1つでも重複していたらNG
(3) ワークフロー
![](https://assets.st-note.com/img/1671082581371-nZT0jKy7td.png?width=1200)
◆ ワークフローの階層が深くなりすぎないようにする
推奨:入れ子にする場合は、7階層までにする
推奨:特に[条件分岐(if)] を入れ子にする場合は、3階層までにする
※ [条件分岐(else if)] を使用すると、複数の条件を設定できます。
◆ フローチャートを入れ子にしない
推奨:フローチャートを第2階層以下に配置しない
2. メンテナンスしやすいワークフローにするには?
(1) アクティビティ(プロパティ)
![](https://assets.st-note.com/img/1671095272578-OYdUIqcl9v.png?width=1200)
◆ アクティビティのプロパティはプロジェクトで一括設定する
プロジェクトパネルの歯車マークをクリックし、プロジェクト設定のメニューから一括で設定が可能です。
特に「タイムアウト」を個別に設定することは推奨されていません。
(2) ログ出力
![](https://assets.st-note.com/img/1671095358079-kgJrha4uB6.png?width=1200)
◆ 処理の途中でログを出力する
推奨:ワークフローごとに 1 回以上 [メッセージをログ] でログを出力する
◆ [1行を書き込み] を使用しない
[1行を書き込み] はデバッグ時に使用するアクティビティのため、パブリッシュする前に [メッセージをログ] に置き換えましょう。
3. セキュリティを考慮したワークフローにするには?
パスワード管理
![](https://assets.st-note.com/img/1671095507782-ERpDfJgJVN.png?width=1200)
◆ パスワードはワークフローの中に直接記載しない
Orchestratorのアセットを使用する、Windows資格情報を使用するなど、パスワードは外部の安全な場所に保管しましょう。
◆ SecureString 型の扱いに注意する
推奨:SecureString 型は、引数にしない
推奨:SecureString 型は、最小のスコープにする
推奨:SecureString 型は、String型に変換しない
まとめ
ワークフローアナライザーのチェック項目をピックアップしてまとめてみました。まだ使ったことのない方は、是非ワークフローアナライザーの実行も試してみてください。
最後まで読んで頂きありがとうございました。