< 前へ | 次へ >

演習 3: サービス・インターフェースの作成

この内容は、バージョン 7.5.4 以降にあてはまります。現実のモデルなど、ほとんどの場合、設計と実装を行うサービス候補は多数あり、通常はそれらの優先順位付けを行います。 しかしこのチュートリアルでは、4 つのサービス候補すべての設計と実装を行います。

これらのサービスを IT 化するためにモデルを作成するには、サービス候補ごとにサービス・インターフェースを作成します。 各サービス・インターフェースは、そのサービスが提供する操作を定義するインターフェースとなります。 各サービス・インターフェースは、1 つ以上のインターフェースを使用する (必要とする) ことを宣言することもできます。 サービス・インターフェースから機能への追跡可能性を維持するには、それらの間に «expose» 依存関係を作成します。

サービス・インターフェースを保存するパッケージの作成

便宜上、このチュートリアルでは 1 つのパッケージにサービス・インターフェースを保存します。

パッケージを作成するには、以下のようにします。

  1. パッケージを Service モデルのメイン・ダイアグラムに追加し、「interfaces」という名前を付けます。
  2. メイン・ダイアグラムは interfaces パッケージに自動的に作成されますが、分かりやすくするため、必要のないダイアグラムを削除します。

SchedulingService サービス・インターフェースの作成

SchedulingService は、それが提供する操作を定義するインターフェースとなります。

SchedulingService サービス・インターフェースを作成するには、以下のようにします。

  1. 「プロジェクト・エクスプローラー」ビューで、interfaces パッケージを右クリックし、「UML の追加」 > 「パッケージ」とクリックします。
  2. Scheduling パッケージのメイン・ダイアグラムで、「Scheduling」機能を追加します。
  3. ダイアグラム・エディターで、Scheduling 機能を右クリックし、「サービス・モデリングの追加」 > 「サービス・インターフェース (単純)」とクリックします。
  4. インターフェースの名前を「SchedulingService」とします。 次の画像に、SchedulingService サービス・インターフェースと Scheduling 機能を示します。
    SchedulingService サービス・インターフェースおよび Scheduling 機能
    注: SchedulingService インターフェースには、Scheudling 機能への «Expose» 依存関係が含まれており、これが追跡可能性リンクを構成します。 SchedulingService インターフェースにも、この機能と同じ操作が自動的に含まれます。
  5. ファイル」 > 「保存」とクリックし、ダイアグラムを閉じます。

InvoicingService サービス・インターフェースの作成

InvoicingService サービス・インターフェースは、このインターフェースを提供するすべてのサービスにより実装される必要がある操作を表します。 このインターフェースの作成は、SchedulingService インターフェースの作成よりは若干複雑です。これは、さらにインターフェースを提供するサービス・コンシューマー が必要となるためです。
InvoicingService サービス・インターフェースを作成するには、以下のようにします。
  1. 「プロジェクト・エクスプローラー」ビューで、interfaces パッケージを右クリックし、「UML の追加」 > 「パッケージ」とクリックし、パッケージの名前を「invoicing」とします。
  2. Invoicing パッケージのメイン・ダイアグラムで、「Invoicing」機能を追加します。
  3. Invoicing 機能を右クリックし、「サービス・モデリングの追加」 > 「サービス・インターフェース (コラボレーション)」とクリックします。
  4. 新しいサービス・インターフェースの名前を「InvoicingService」とします。 次の画像に、InvoicingService サービス・インターフェースと Invoicing 機能を示します。
    InvoicingService サービス・インターフェースおよび Invoicing 機能
  5. ダイアグラム・エディターで、InvoicingService インターフェースの外向きのコネクター・ハンドルを、ダイアグラム内の何もない場所にドラッグします。
  6. 「次にインターフェース実現を作成 (Create Interface Realization To >)」 > 「新規要素: インターフェース」とクリックし、新しいインターフェースに「Invoicing」という名前を付けます。 InvoicingService サービス・インターフェースから Invoicing インターフェースへのインターフェース実現関係が作成されます。 Invoicing インターフェースは、InvoicingService サービス・インターフェースを提供するすべてのサービスにより実装される必要がある操作を表します。これにより、提供された操作は、より正しく Invoicing インターフェースにより定義されます。
  7. 「プロジェクト・エクスプローラー」ビューで、InvoicingService インターフェースの各操作を Invoicing インターフェースにドラッグします。 InvoicingService インターフェースでは、コールバックと同様に、リクエスターによる請求処理の要求が可能である必要があります。
  8. コールバックを表す別のインターフェースを定義するには、ダイアグラム・エディターで、InvoicingService 実装の外向きのコネクター・ハンドルを、ダイアグラム内の何もない場所にドラッグします。
  9. 「次に使用法を作成 (Create Usage To >)」 > 「新規要素: インターフェース」とクリックし、新しいインターフェースに「InvoiceProcessing」という名前を付けます。
  10. ダイアグラム・エディターで、InvoiceProcessing インターフェースを右クリックし、「UML の追加」 > 「操作」とクリックします。
  11. 操作の名前を「ProcessInvoice」とします。ダイアグラムは、次の図のようになります。
    Invoicing メイン・ダイアグラム
  12. ファイル」 > 「保存」とクリックし、ダイアグラムを閉じます。

ShippingService サービス・インターフェースの作成

ShippingService サービス・インターフェースは、サービス・コンシューマーへの出荷スケジュールの処理を要求します。
ShippingService サービス・インターフェースを作成するには、以下のようにします。
  1. 「プロジェクト・エクスプローラー」ビューで、interfaces パッケージを右クリックし、「UML の追加」 > 「パッケージ」とクリックし、パッケージの名前を「shipping」とします。
  2. Invoicing パッケージのメイン・ダイアグラムで、Shipping 機能を追加します。
  3. Shipping 機能を右クリックし、「サービス・モデリングの追加」 > 「サービス・インターフェース (コラボレーション)」とクリックします。
  4. 新しいサービス・インターフェースの名前を「ShippingService」とします。
  5. ダイアグラム・エディターで、ShippingService インターフェースの外向きのコネクター・ハンドルを、ダイアグラム内の何もない場所にドラッグします。
  6. 「次にインターフェース実現を作成 (Create Interface Realization To >)」 > 「新規要素: インターフェース」とクリックし、新しいインターフェースに「Shipping」という名前を付けます。
  7. ShippingService インターフェースから Shipping インターフェースに、requestShipping 操作のみを移動して、このサービスが提供する操作を表します。
  8. ShippingService 実装では、サービス・コンシューマーへの配送スケジュールの処理の要求が可能である必要があります。 これは、ShippingService インターフェースの外向きのコネクター・ハンドルを、ダイアグラム内の何もない場所にドラッグすることで表せます。
  9. 「次に使用法を作成 (Create Usage To >)」 > 「新規要素: インターフェース」とクリックし、新しいインターフェースに「ScheduleProcessing」という名前を付けます。
  10. ShippingService インターフェースから新しい ScheduleProcessing インターフェースに processSchedule 操作を移動します。この構造は、サービス・コンシューマーが実装する必要がある操作を表します。 Shipping ダイアグラムは、次の図のようになります。
    Shipping メイン・ダイアグラム
  11. ファイル」 > 「保存」とクリックし、ダイアグラムを閉じます。

PurchasingService サービス・インターフェースの作成

PurchasingService サービス・インターフェースは、プロセス全体が外部に対して公開または提供するサービスを表します。
PurchasingService サービス・インターフェースを作成するには、以下のようにします。
  1. 「プロジェクト・エクスプローラー」ビューで、interfaces パッケージを右クリックし、「UML の追加」 > 「パッケージ」とクリックし、パッケージの名前を「Purchasing」とします。
  2. Invoicing パッケージのメイン・ダイアグラムで、Purchasing 機能を追加します。
  3. Purchasing 機能を右クリックし、「サービス・モデリングの追加」 > 「サービス・インターフェース (コラボレーション)」とクリックします。
  4. 新しいサービス・インターフェースの名前を「PurchasingService」とします。
  5. ダイアグラム・エディターで、ShippingService インターフェースの外向きのコネクター・ハンドルを、ダイアグラム内の何もない場所にドラッグします。
  6. 「次にインターフェース実現を作成 (Create Interface Realization To >)」 > 「新規要素: インターフェース」とクリックし、新しいインターフェースに「Purchasing」という名前を付けます。 これで、PurchasingService サービス・インターフェースから Purchasing インターフェースへのインターフェース実現関係が作成されました。
  7. PurchasingService インターフェースから Purchasing インターフェースに、processPurchaseOrder 操作を移動することで、Purchasing サービスが提供する操作を表します。
  8. PurchasingService 実装では、scheduling サービスから scheduling を要求できる必要があります。 これは、PurchasingService インターフェースの外向きのコネクター・ハンドルを、ダイアグラム内の何もない場所にドラッグすることで表せます。
  9. 「次に使用法を作成 (Create Usage To >)」 > 「既存の要素」とクリックし、SchedulingService サービス・インターフェースをクリックします。Purchasing ダイアグラムは、次の図のようになります。
    Purchasing メイン・ダイアグラム
  10. ファイル」 > 「保存」とクリックし、ダイアグラムを閉じます。

演習のチェックポイント

4 つのサービス候補をすべて作成しました。
以降の演習で、これらのサービスのビルドを行います。
< 前へ | 次へ >

フィードバック