- リリース ノート
- 概要
- 基本情報
- Marketplace ベンダー
- Marketplace のお客様
- パブリッシング ガイドライン
- すぐに使えるオートメーションのパブリッシング ガイドライン
- ソリューション アクセラレータの公開ガイドライン
- Integration Service コネクタの公開ガイドライン
- セキュリティと IP 保護
- その他の UiPath コンポーネント
- Node-RED
- セットアップ
- Teams
- Microsoft Teams Scope
- Create Team
- チームをグループから作成する
- Get Team
- Get Teams
- Channels
- チャンネルを作成
- Delete Channel
- Get Channel
- Get Channels
- Update Channel
- Chats
- Get Chat
- Get Chats
- Get Chat Members
- Messages
- Get Message
- メッセージを取得
- Get Message Replies
- Reply To Message
- メッセージを送信
- イベント
- イベント/予定を作成
- イベント/予定を削除
- Get Event
- Get Events
- ユーザー
- Get User Presence
- 動作のしくみ
- テクニカル リファレンス
- はじめに
- 概要
- セットアップ
- テクニカル リファレンス
- Azure Form Recognizer Scope
- アクティビティ
- Analyze Form
- Analyze Form Async
- Get Analyze Form Result
- Analyze Receipt
- Analyze Receipt Async
- Get Analyze Receipt Result
- Analyze Layout
- Analyze Layout Async
- Get Analyze Layout Result
- Train Model
- Get Models
- モデル のキーを取得
- Get Model Info
- Delete Model
- コネクタ
- How to Create Activities
- 連携の独自開発
Marketplace ユーザー ガイド
高品質コンテンツの基準
Marketplace のすべてのコンポーネントは、以下の一般的なガイドラインを満たす必要があります。
ガイドライン | 詳細 |
モジュール式で再利用可能なコンポーネント |
|
設定可能なパラメータと設定 |
|
スケーラブルで適応性のあるアーキテクチャ |
|
統合機能 |
|
拡張性とカスタマイズ性 |
|
ソリューション アクセラレータは、これらの領域を通じて、効率的でスケーラブルな自動化ソリューションを構築するための、構造化された柔軟なフレームワークを提供する必要があります。 要約すると、ソリューション アクセラレータは、自動化の迅速な開発とデプロイを促進するために、モジュール性、適応性、ベスト プラクティスへの準拠、システムやアプリケーションとの容易な統合を促進する必要があります。
UiPath Marketplace でコンポーネントを公開するには、コンポーネントの説明に、オートメーションで使用される、またはオートメーションに対応した UiPath 製品の詳細情報と、それらの製品が果たす役割をすべて含める必要があります。
パートナーは、サードパーティからの明示的な承認なしに、サードパーティまたはサードパーティのアプリあるいは他のサードパーティ製品の名前を、UiPath Marketplace のコンポーネントまたは製品の説明のテキストに記載することはできません。
ソリューション アクセラレータの設計では、ビジネス ロジック層 (実装層) とアプリケーション 層 (必要に応じて GUI 対話層) の分離を実装する必要があります。 これは、さまざまなプロセス ワークフロー内で直接実現することも、再利用性が必要な場合はライブラリを使用して実現することもできます。
-
このレイヤーは、ソリューション アクセラレータのコア ビジネス ロジックとオートメーション ワークフローの実装を担当します。
-
特定のドメインまたはユース ケースにおいてソリューション アクセラレータが自動化を目指す特定のタスクやプロセスに焦点を当てています。
-
ビジネス ロジック レイヤーは、目的の自動化の成果を達成するために必要なルール、条件、およびアクションを定義します。
-
これには、データ操作、意思決定、外部システムとの統合、およびその他の処理タスクが含まれる場合があります。
-
このレイヤーはモジュール式でカスタマイズ可能なように設計されており、組織はソリューション アクセラレータを特定のビジネス要件に適合させることができます。
-
通常は、アクティビティ、ワークフロー、変数などの UiPath のオートメーション機能を利用して、オートメーション フローを調整します。
-
アプリケーション層は、自動化ワークフローと、自動化プロセスに関与するさまざまなアプリケーションやシステムのGUI(グラフィカルユーザーインターフェイス)またはAPI(アプリケーションプログラミングインターフェイス)との間のインターフェイスとして機能します。
-
このレイヤーは、ターゲット アプリケーションまたはシステム内のボタン、フィールド、メニュー、ダイアログなどのユーザー インターフェイス要素との対話を処理できます。 このレイヤーは、アプリケーションのユーザー インターフェイスを使用する代わりに、コード通信によるデータ入力など、ターゲット アプリケーションまたはシステム内のアプリケーション プログラミング インターフェイスの実装を処理することもできます。
-
このレイヤーには、UI 操作の自動化を実現するアクティビティやコンポーネント (画面スクレイピング、データ入出力、ナビゲーションなど) を含めることができます。 このレイヤーには、同じコントロールをプログラムで実装するためのアプリケーション ロジックを含めることもできます。
-
アプリケーション層は、特定のターゲットアプリケーションに適応できるように設計されています。APIやユーザーインターフェイスの更新は1か所で行われ、そのコンポーネントのすべての実装に適応する必要があります。
-
GUI 対話レイヤーは、UI 要素、画面レイアウト、ナビゲーション パスのバリエーションを柔軟に処理できる必要があります。
-
API 対話レイヤー内では、ワークフローの出力はワークフローの目的と一致している必要があります。 たとえば、ワークフローの名前が「Retrieve All Users」の場合、JSON ではなくユーザー オブジェクトのコレクションが返されることを期待する必要があります。その後、必要なユーザー データを抽出するためにさらに解析する必要があります。
-
ページネーションを使用し、ターゲット API によって実装されるたびに関連するフィルターを適用することにより、API 呼び出しの実行時間を最小限に保ちます。
ビジネス層とアプリケーション層を分離することで、オートメーションおよびプロセス ロジックと、アプリケーション固有の詳細を明確に区別できます。 これにより、GUIまたはAPIの変更をコアビジネスロジックとは別に管理できるモジュール式のスケーラブルなアーキテクチャが可能になります。 この分離により、メンテナンスの容易さ、ソリューション アクセラレータ内での再利用性または他のプロセスへの転送、およびソリューション アクセラレータのカスタマイズが可能になります。 ソリューション アクセラレータのエンド ユーザーは、アプリケーション レイヤーを簡単に置き換えて、基になるプロセス ロジックに影響を与えることなく、ターゲット アプリケーションの変更に対応できます。 同様に、ビジネス ロジックは、進化するビジネス ニーズに対応するために、アプリケーションから独立して変更または拡張できます。
これは、標準のディスパッチャー/実行者モデルです。 単純なトランザクションベースのプロセスの実装には、Robotic Enterprise Frameworkを使用する必要があります。
Robotic Enterprise Frameworkは、[ステート マシン] に基づくテンプレートです。ログ、例外処理、アプリケーションの初期化などに関するすべてのベスト プラクティスに適合するように作成されているため、複雑なビジネス シナリオに取り組む準備ができています。 このテンプレートには、アプリケーションの初期化、入力データの取得と処理、トランザクションの終了のために事前に作成された複数の State コンテナーが含まれています。 こうしたステートはすべて、複数の遷移条件を通じて接続され、標準的な自動化シナリオのほぼすべてのニーズに対応します。 また、複数の呼び出されたワークフローもあり、それぞれがプロジェクトの特定の部分の処理を行います。
ディスパッチャーと実行者モデルは、間にキューを配置することによってプロセスの 2 つの主要な段階を分離するために事前に設計されたソリューションです。 このように、トランザクション明細の生産は消費から完全に独立しています。 この非同期性により、ディスパッチャーと実行者の間の時間依存性が解消されます。
この標準的なアプローチにおけるディスパッチャーは、UiPath のキューにデータを読み込むオートメーションです。 1 つまたは複数のソースからデータを抽出し、これを使用して Performer ロボットが処理するキュー アイテムを作成します。 情報は 1 つまたは複数のキューにプッシュされるため、ディスパッチャーはキュー アイテムに格納されるすべてのデータに共通の形式を使用できます。 このデータは、後でオートメーション (実行者) で処理できます。 実行者は、キュー アイテムが一度に 1 つずつ処理されるときに、必要に応じてデータを処理できます。 処理された各アイテムに対してエラー処理と再試行のメカニズムを使用します。 実行者の主な利点は、そのスケーラビリティです (1 つのキューで複数の実行者を使用できます)。
ドキュメントを操作するプロセスのほとんどは、共通して、その内容も「理解」する必要があります。 そこで、Document Understanding に特化した専用のフレームワークとして、 Document Understanding (DU) Process Framework を用意しました。
このフレームワーク は、基本的には一般的なドキュメント処理フローチャートに基づく UiPath Studio プロジェクト テンプレートです。 このプロセスでは、ログ、エラー処理、再試行メカニズム、および DU ワークフローで使用する必要があるすべてのメソッドが提供されます。 このワークフローのアーキテクチャは、接続された他のオートメーションから切り離されています。
-
処理するファイルがどこから来たのか、何が実行をトリガーするのかは関係ありません - これはアップストリームプロセスの責任です。
-
抽出された情報をどこで使用するかは問題ではなく、これは下流プロセスの責任です。
-
フレームワークのアーキテクチャは、Attended ロボットと Unattended ロボットの両方に共通です。
-
Document Understanding ロジック (デジタル化、分類、データ抽出)
-
Unattended ロボットには Action Center を使用し、Attended ロボットにはローカル の検証ステーション を使用する人間参加型の論理 (検証)
これらのメカニズムとアーキテクチャの結果として、Document Understanding を使用するオートメーションの大半は、通常、ディスパッチャー/実行者モデルと、その間に Document Understanding フレームワークを組み合わせたものです。
-
ディスパッチャーは、処理するドキュメントをアップストリーム アプリケーションまたはシステムから収集します。
-
Document Understanding Process は、ディスパッチャー メソッドにより、スケーラビリティを備えながら、必要な情報を各ドキュメントから一度に 1 つずつ抽出します。
-
最後に、 実行者は ドキュメントから抽出されたデータを使用してプロセスを完了します。
このアーキテクチャは、ディスパッチャー - パフォーマー - ファイナライザー プロセスと人間参加型のプロセス、または長期実行ワークフロー プロセスで構成されます。 長期実行のワークフローの標準テンプレートは、 オーケストレーション プロセス テンプレートです。 長期実行のワークフローには、無人環境でのサービス オーケストレーション、人間の介入、および長期実行トランザクションをサポートするために従う必要のある ベスト プラクティス があります。
このアーキテクチャは、自動化の承認または監視に人間の介入が必要な場合に使用されます。 そのため、Action Center タスクの後のフローでは、受け入れと拒否の両方を考慮する必要があります。
オートメーションのニーズに基づいて、アーキテクチャ上の決定事項が存在し、適切である場合は他にもあります。
-
ファイナライザーは、プロセス内で必要なクリーンアップに対して常に考慮できます。
-
実行頻度の低い、またはアドホックなレポーターは、必要な関係者に自動化の統計情報を送信するものと見なすことができます
-
抽出、変換、読み込み (ETL) プロセスでは、複数のソースからのデータを大規模な中央リポジトリに結合できます。
-
プロセスに適用可能であれば、 UiPath Attended Framework などの他の自動化フレームワークも検討できます。
ソリューション アクセラレータ向けの UiPath プロセスを開発する際には、以下のベスト プラクティスに従う必要があります。
-
すぐに使える ワークフロー アナライザーのルールに従います。 このツールで分析すると、プロジェクトで発生する警告は、ゼロとは言わないまでも最小限に抑える必要があります。 命名規則、設計の ベスト プラクティス、 保守性と読みやすさの規則、および 使用規則 に従う必要があります。 これらのルールのいくつかの重要な例:
-
ハードコードされた遅延があってはなりません。
-
アクティビティに既定の名前を付けないでください。
-
ワークフロー内で 2 つのアクティビティに同じ名前を付けないでください。
-
引数は、in_、out_、および io_命名規則に従う必要があります。
-
深く入れ子にされたアクティビティは存在してはならず、ワークフローをより小さなコンポーネントに分割するための有力な議論材料と考える必要があります。
-
-
開発を開始する前に、プロセス要件を徹底的に分析し、特定のニーズに対応するソリューションを設計します。 プロセスを小さなタスクに分割し、依存関係を特定して、明確で効率的なワークフローを確保します。
-
他のプロジェクトで簡単に保守および再利用できる再利用可能なコンポーネントまたはワークフローを特定し、早い段階から分離します。 このモジュール式のアプローチにより、再利用性が向上し、デバッグが簡素化され、スケーラビリティが向上します。
-
堅牢なエラー処理メカニズムを実装して、例外とエラーを適切に処理します。 try-catch ブロックを使用し、トラブルシューティングに役立つエラー メッセージを提供し、プロセスの安定性を高めます。
-
エラーは具体的で、関連するエラー メッセージを表示する必要があります。 文字列を設定する必要があるが、アプリケーションの戻り値の結果ではない場合は、null ポインター例外をスローしないでください – 例外は、アプリケーションによって発生したビジネス ルール例外として分類する必要があります。
-
-
入力パラメーターなどの構成可能な設定をプロセスに組み込んで、柔軟性と適応性を実現します。 これにより、ユーザーはコア ワークフローを変更することなく、特定の要件に基づいてプロセスを簡単にカスタマイズできます。
-
入力を検証して、必要な基準を満たしていることを確認し、無効または予期しないデータの例外を処理します。 データのクレンジングや変換などの適切なデータ処理手法を実装して、正確で信頼性の高い処理を保証します。
-
プロセスの実行中に関連情報をキャプチャするためのログ メカニズムを組み込みます。 これはトラブルシューティングに役立ち、プロセスの最適化のための貴重な洞察を提供します。 デバッグ ツールを使用して、問題を効率的に特定して解決します。
-
レポートと UiPath Insights のログ記録メカニズムも考慮する必要があります。
-
-
プロセスを徹底的にテストして、その機能と信頼性を確認します。 テスト ケースとデータを使用して、期待される結果を検証し、エッジ ケースを処理します。 これは、デプロイ前にエラーや不整合を特定して修正するのに役立ちます。
-
UiPath Test Suite を使用して、オートメーションにテスト ワークフローを提供することを検討してください。
-
-
フィードバック、進化する要件、および技術の進歩に基づいて、プロセスを定期的にレビューおよび強化します。 プロセスを最適化し、効率を向上させ、新しい機能を組み込む機会を継続的に模索します。
ソリューション アクセラレータ用の UiPath ライブラリを開発する際には、以下のベスト プラクティスに従う必要があります。
-
すぐに使える ワークフロー アナライザーのルールに従います。 プロジェクトはワークフロー アナライザーに対して実行可能であり、警告はゼロとは言わないまでも最小限に抑えられる必要があります。 命名規則、設計の ベスト プラクティス、 保守性と読みやすさの規則、および 使用規則 に従う必要があります。 これらのルールのいくつかの重要な例:
-
ハードコードされた遅延があってはなりません。
-
アクティビティに既定の名前を付けないでください。
-
ワークフロー内で同じ名前のアクティビティがあってはなりません。
-
引数は、ライブラリの作成時にプロパティとして表示されるため、in_、out_、およびio_命名規則に従わないでください。 無効な引数名に関するワークフロー アナライザーの既定のルールは、ライブラリ作成時には無視できます。
-
深く入れ子にされたアクティビティは存在してはならず、ワークフローをより小さなコンポーネントに分割する場合に考慮する必要があります。
-
-
UI の操作は、オブジェクト リポジトリを通じてのみ行う必要があります。
-
ライブラリを、特定のタスクや機能に焦点を当てた小さなモジュール式のコンポーネントに分割します。 これにより、再利用性が促進され、メンテナンスと更新が容易になります。
-
使用手順、入力/出力の説明、依存関係や前提条件など、再利用可能なライブラリに関する包括的なドキュメントを提供します。 明確なドキュメントは、ユーザーがライブラリを効果的に使用する方法を理解するのに役立ちます。
-
エラー処理: ライブラリ内に堅牢なエラー処理メカニズムを実装して、例外とエラーを適切に処理します。 try-catch ブロックを使用し、トラブルシューティングに役立つ有益なエラー メッセージを提供します。
-
エラーはソリューション アクセラレータのプロセス内でキャッチし、ライブラリ内で処理しないでください
-
ビジネス例外は、ビジネス ルール例外をスローする必要があります。 アプリケーション例外はシステム例外をスローする必要があります
-
-
入力を確認し、エッジケースを処理して、ライブラリが正しく機能し、予期しないエラーや望ましくない結果を防ぐことを確認します。 適切な入力検証により、ライブラリの信頼性と安定性が向上します。
-
これは、すべての API オートメーションの出力にも当てはまります。
-
-
プロセスを徹底的にテストして、その機能と信頼性を確認します。 テスト ケースとデータを使用して、期待される結果を検証し、エッジ ケースを処理します。 これは、デプロイ前にエラーや不整合を特定して修正するのに役立ちます。
-
UiPath Test Suite を使用して、オートメーションにテスト ワークフローを提供することを検討してください。
-
-
ライブラリを定期的に確認および更新して、フィードバックを組み込み、バグに対処し、進化する要件に基づいて機能を強化します。 継続的な改善により、ライブラリの関連性と有効性が長期にわたって維持されます。
-
ライブラリを更新するときは、下位互換性を考慮して次の更新を設計します。