見出し画像

Blue Prism Captureのベストプラクティス ‐ その2: 設計フェーズ及び構築フェーズ

Blue Prism公式ブログをご覧いただき、誠にありがとうございます。
プロフェショナルサービスのAkiです。

最近日本でもBlue Prism Captureを使用するお客様が益々増えてきました。
1つのボタンをクリックしてからいつもの業務処理を行うだけで、勝手に業務フローのスクリーンショットも取り、簡単なアクションの説明も自動生成されるだけでなく、生成された業務フローを自由自在に編集してから要件定義書としてエキスポートできるので、要件定義書作成には非常に有効的なツールです。

さらに、各アクション毎にオブジェクト作成の指定や最終的にはリリースファイルをエクスポートし、Blue Prismでプロセスとオブジェクト作成のたたき台としても使用できるため、自動化プロジェクト全体の時間削減効果がございます。

要件定義フェーズから、設計フェーズ、構築フェーズまで応用できるので、Blue Prism Captureが非常に便利なツールだとは言うまでもございません。
ただし、Blue Prism Captureはあくまでも要件定義、設計、構築をサポートするツールだと意識しながらご使用いただく必要があります。

この「Blue Prism Captureのベストプラクティス」シリーズは、Blue Prism Captureを効果的に利用していただくためのBlue Prismプロフェショナルサービスの観点から作成された活用のベストプラクティスをご紹介致します。

本稿では、設計フェーズ及び構築フェーズでの応用及びベストプラクティスをご紹介します。

Blue Prism Captureのベストプラクティス ‐ その1: 要件定義フェーズは、下記から確認いただけます。


① Blue Prism Captureの設計・構築をサポート機能

ベストプラクティスをご紹介する前に、Blue Prism Captureの設計・構築をサポートする機能をご紹介します。

Business objects にあるオプションを有効にしましょう

上記の図のように、Settings → Business Objectsの全てのオプションを有効化することにより、下記の機能を利用することができます:

  • アプリケーションモデラーの自動生成:「Enable Blue Prism Application Modeller spying」を有効化することにより、Blue Prism Captureで業務フローをレコーディングすると同時に、各要素が自動的にUIAモードとWIN32モード両方で識別されます。

  • オブジェクトの自動生成:Blue Prism Captureの「Auto-generate business object fields」を有効化し、アクションの説明にオブジェクトの設定及び「Create object」のチェックを入れると、自動的に下記のようなBlue Prism オブジェクトが生成されます。

「Create object」のチェックを入れると、
自動的にBlue Prism オブジェクトが生成されます
  • プロセスの自動生成:Blue Prism CaptureのプロセスはBlue Prismリリースファイルとしてエキスポートできます。そのリリースファイルをBlue Prismにインポートすると、Blue Prismでプロセスを修正し、さらには実行もできます。
    自動生成されたプロセスはデフォルトとしてBlue Prismプロセステンプレートが使用され、Blue Prism Captureで定義されたプロセスフローはメインページの「Work」のサブページに格納されます。

ゾーン、ブランチ、ステップのグループはそれぞれ親子孫関係のサブページになり、ステップグループに含まれたステップの各アクションはオブジェクトアクションで表示し、ステップはステップに含まれるアクションを囲むブロックで表示されます。

② 設計フェーズにおけるBlue Prism Captureのベストプラクティス

設計フェーズにおいて、要件定義フェーズで作成した業務フローにオブジェクトアクションの追加及びBlue Prismプロセスに最も近い形にするためにゾーン、ブランチ、ステップグルーピングを行います。
このフェーズでBlue Prism Captureを利用する時、下記のベストプラクティスを遵守していただく必要があります:

  • 「Solution Designer」を有効化すること:「Solution Designer」を有効化することにより、ブランチとグループの他に、ゾーンを利用することができ、よりレイヤーが多いプロセスの設計ができます。

ただし、現時点でのバージョンの機能においては「Solution Designer」を有効化すると.jsonファイル及び.bpreleaseファイルにしかエキスポートできません。
また、2つ以上のゾーンが存在するともうSolution Designerを有効化しないことができなくなるため、有効化する前に、要件定義フェーズでできた業務フローを.jsonファイルにエキスポートし、保存することを推奨します。

  • サブページを大きすぎないように設計すること:ゾーン、ブランチ、グループはそれぞれサブページになります。各サブページは大きすぎないかを確認しましょう。プロセスがとても複雑で、サブページはどうしても大きくなる場合、プロセス分割を推奨します。

  • 命名規則を遵守すること:ゾーン、ブランチ、グループ及び各ステップとステップアクションはBlue Prismでサブページ及びアクションになり、オブジェクトもそのままBlue Prismオブジェクトとして生成されるため、必ず命名規則を遵守する必要があります。

  • 「Step Note」はグループのサブページの説明に表示するため、今までの各プロセス設計書(PDI)に記載したサブページの内容のように記入することを推奨します。

  • 新規作成オブジェクトのみ、「Create Object」のチェックを入れること: 「Create Object」を選択すると、新規オブジェクトになるか、既存オブジェクトを上書きしてしまうため、既存オブジェクトにアクションを追加する場合、「Create Object」のチェックを入れず、オブジェクトの自動生成させないようにしましょう。

  • Blue Prism Captureでできることはあくまでも設計の一部を意識すること:設計フェーズではソリューション設計書(SDD)、プロセス設計書(PDI)及びオブジェクト設計書(ODI)を作成する必要があります。
    Blue Prism Captureでできるのはメインプロセスのプロセス設計書(PDI)のプロセス詳細の説明の部分のみです。
    プロセス分割(例えば、ワークキューにデータを格納するプロセス、メイン業務処理のプロセス、レポート作成等のアウトプットプロセスなど、最低でも3つのプロセスに分割する、など)の設計や、各プロセスを繋ぐワークキューの使用を加えたうえで、その他のドキュメント及びメインプロセスのPDIの他の部分を補足する必要があります。
    Captureには、「Solution Designer」有効化という機能がありますが、これはソリューション設計を行うものではありません。ソリューション設計は、あくまでも、人間が叡智を用いて行うものです。

③ 構築フェーズにおけるBlue Prism Captureのベストプラクティス

設計フェーズが完了したら、Blue Prismリリースファイルをエキスポートでき、そのファイルをBlue Prismにインポートすれば、ゼロからプロセスとオブジェクトを構築することが必要なくなり、非常に手間と時間を削減できます。
ただし、Blue Prism Captureからエキスポートしたリリースファイルは完全なプロセスとオブジェクトではないので、慎重に検証及びBlue Prism構築ベストプラクティスを遵守するように修正を行う必要があります。

本稿では、一般のBlue Prism構築ベストプラクティスを全部記載するつもりではなく、あくまでもBlue Prism Captureを利用する時に要注意のベストプラクティスを挙げます:

アプリケーションモデラ―及びオブジェクトのベストプラクティス:

  • 要素の名前は必ず命名規則を遵守するように変更すること:アプリケーションモデラーで自動生成された要素の名前はデフォルトとして「【識別モード】【エレメントタイプ】‐Element」の形になっています。その要素の名前は皆さんで提議した開発規約に規定された命名規則を遵守するように変更する必要があります。

  • 要素を相応しい識別モードで再度識別すること:Blue Prism Capture 4.0ではデフォルトとしてUIAモードとWIN32モードで要素を識別しています。ブラウザーアプリケーションの場合はブラウザーモード、Javaアプリケーションの場合はJavaモード等で必要に応じて要素を再び識別することを推奨します。

  • オブジェクトアクションの操作・実行が正常に完了したことを確認する、条件付きの待機ステージを追加すること

  • オブジェクトアクションを見直すこと:デフォルトとして書込みアクション等も含めて全部のアクションは操作(Navigate)ステージで実行するようにエキスポートされています(例:書き込みは、書き込みステージではなく、操作ステージ内のグローバルキー送信アクションで実行されるようになっています)。必要に応じてより効率的なアクションタイプ(例えば、書き込みステージなど)に変更することを推奨します。

  • オブジェクトアクションの説明及び前提条件、事後条件を記入すること

プロセスのベストプラクティス:

  • プロセステンプレートの準備:デフォルトとしてBlue Prismの英語のプロセステンプレートでプロセスをエキスポートします。
    カスタマイズテンプレートを使用したい場合、一度プロセスを.bpreleaseとしてエキスポートし、そのプロセスを編集し、テンプレートとしてアップロードすることができます。ただし、メインページにはかならず「Work」と名付けるサブページをそのままに残す必要があります。Captureで編集されたプロセスはその「Work」サブページに入れられるからです。

    ※現在のバージョンではテンプレートに日本語が含まれると、エキスポートする時、そのテンプレートの日本語の部分が文字化けになっている問題があります。プロセスで記入する日本語は文字化けされません。
    そのため、暫く英語のテンプレートを使用することを推奨します。

  • 耐障害性を向上するため、グループのサブページ(アクションが含まれているサブページ)にリトライロジックを追加すること:リトライロジックのテンプレートは「Example Work Page」サブページに格納されていますので、参考にして下さい。

以上、Blue Prism Captureを使用する時の設計フェーズ及び構築フェーズにおける活用のベストプラクティスをご紹介しました。

上手にBlue Prism Captureを使用すれば、要件定義フェーズから導入までの時間を75%までも削減できると言われています。是非ベストプラクティスを遵守しながら、Blue Prism Captureをご活用いただきたいと思います。