IBM® UrbanCode Deploy サーバーは、さまざまなサービスと提供します。例えば、ユーザー・インターフェース、コンポーネントやアプリケーションの構成ツール、ワークフロー・エンジン、およびセキュリティー・サービスなどが代表的です。
REST ベースのユーザー・インターフェースが、特に、コンポーネントの作成、プロセスの設計、プロセスの要求、セキュリティーおよびリソースの管理に使用される Web ベースのフロントエンドになります。
1 つのプロセスが要求されると、その要求の実現に多くのサービスが使用されます。 これらのサービスを以下の図に示します。

プロセス要求は、Web ベース・アプリケーションまたは CLI (コマンド行インターフェース) のいずれかのユーザー・インターフェースで開始されます。
| サービス | 説明 |
|---|---|
| ユーザー・インターフェース | 特に、コンポーネントの作成やプロセスの設計、プロセスの要求、およびセキュリティーやリソースの管理などに使用されます。 REST ベースです。 |
| ワークフロー・エンジン | ワークフロー (アプリケーションとコンポーネント・プロセス) を管理します。現行のプラグイン・ステップの実行を担当するエージェントを呼び出します。 ワークフローの終了時に通知サービスとインベントリー・サービスにアラートを出します。 デプロイメント・サービスにより呼び出されます。REST ベースです。 |
| エージェント | インストール済みエージェントをトラッキングし、プラグイン・コマンドを対象エージェントに送信します。 コマンドはプラグイン・ステップから取得します。ワークフロー・サービスにより開始されます。 REST ベースです。 |
| ワークアイテム | 承認サービスと連携して動作します。承認者にアラートを出し、承認者がワークフローの受け入れ、または拒否ができるようにします。 スケジュール済みワークフローが実行時に未承認のままの場合は、ジョブは自動的に失敗します。 REST ベースです。 |
| プラグイン・マネージャー | IBM UrbanCode Deploy は、拡張可能なプラグイン・システムを介して事実上すべてのシステムと連携できます。プラグインは、ツール機能を自動化ステップに分解して、各機能を提供します。 プラグインは、設計時と実行時に構成することができます。 プラグイン・ステップが実行されると、制御エージェントは、ステップを実行するために実行時プロセスを開始します。 新規コンポーネント・バージョンが使用可能になると、エージェントは現行のコンポーネント・バージョンと比較し、新規および変更された成果物のみをダウンロードします。 |
| イベント | イベント・サービスは、至るところで使用されます。さまざまなトリガー条件が発生したときに他のサービスにアラートを出します。 |
| デプロイメント・サービス | デプロイメントを管理します。デプロイメント・プロセスが要求されると、プロセスを実行するワークフロー・エンジンを開始します。 セキュリティー・サービスと連携して機能し、ユーザーが確実に必要なアクセス権限を持つようにします。 REST ベースです。 |
| 通知マネージャー | デプロイメントの状況をユーザーに通知します。E メール・サーバーを含むシステムが構成されていて、ユーザーが E メール・アドレスを持っている場合は、通知が承認者に送信されます。 ワークフロー・マネージャーにより開始されます。 REST ベースです。 |
| インベントリー・マネージャー | ワークフローが完了すると、インベントリー・マネージャーは影響を受けたインベントリー・レコードを更新します。 IBM UrbanCode Deploy はあらゆる環境のすべてのデプロイ済み成果物のインベントリーを維持します。これにより、環境全体にわたる完全な可視性が実現します。 REST タイプのサービスです。 |
| 承認エンジン | 承認を必要とするジョブと承認者の役割の作成を可能にします。 ワークアイテム・サービスと連携して機能して、スケジュール済みジョブの実行前に必要な承認が確実に行われるようにします。 REST ベースです。 |
| セキュリティー | ユーザーが実行および表示できる対象を制御します。 チーム、役割、アクティビティーなどにより組織的構造にマッピングします。REST ベースです。 |
| カレンダー | 将来のある時点にプロセスをスケジュール化する際に使用されます。承認およびワークアイテムのサービスと連携して機能します。 REST ベースです。 |
| CodeStation | 成果物バージョンを取り扱います。エージェントは、コンポーネント・バージョンをダウンロードした時点でこれを使い始めます。 REST ベースです。 |