演習 2.6: 残高表示シーケンス図の作成

この演習では、残高表示シーケンス図を作成します。残高表示シーケンス図は、機能タスクのワークフローを示します。

残高表示参加プログラム図は、残高表示機能タスク内のクラスの構造をモデル化します。また、この図は各クラス間に存在する関係も表示します。ただし、機能タスクのワークフローは表しません。ユースケースの実現は、シーケンス図を利用してこの動的情報を表します。

残高表示シーケンス図は、ユーザーがメインメニューの「残高表示 (Display Balance)」をクリックしたときに発生するステップを表示します。この図は、ユースケース参加プログラムをライフラインとしてモデル化し、データ・フローをメッセージとしてモデル化して、ユースケースのワークフローを表します。シーケンス図は、データの一時フローを理解するのに必要な動的情報を表します。シーケンス図を作成すると、ユースケース内の各クラスのすべての操作を発見できます。

システムのモデル化は反復プロセスです。システムの詳細を発見すれば、いつでもシーケンス図を変更できます。ただし、このチュートリアルでは、完全な残高表示シーケンス図を作成することにします。

残高表示シーケンス図およびライフラインの作成

ワークフローをモデル化する前に、まずシーケンス図のライフラインをモデル化する必要があります。シーケンス図のライフラインは、ユースケース参加プログラムによって形成されます。

シーケンス図およびライフラインを作成するには、以下のようにします。
  1. 「モデル・エクスプローラー」ビューで、「口座処理 (Account Operations)」「«use case realization» 残高表示 («use case realization» Display Balance)」「«use case realization» 残高表示 - 基本フロー («use case realization» Display Balance - Basic Flow)」を展開し、「«use case realization» 残高表示 - 基本フロー («use case realization» Display Balance - Basic Flow)」図をダブルクリックします。
  2. 「モデル・エクスプローラー」ビューで、「ユースケース・モデル」を展開します。
  3. 「口座処理 (Account Operations)」パッケージで、「顧客 (Customer)」アクターをクリックして図にドラッグします。
  4. 「モデル・エクスプローラー」ビューの「分析モデル」の「口座処理分析要素 (Account Operations Analysis Elements)」パッケージで、MenuForm クラスをクリックして、「顧客 (Customer)」ライフラインの右方へドラッグします。
  5. 「モデル・エクスプローラー」ビューの「口座処理分析要素 (Account Operations Analysis Elements)」パッケージで、DisplayBalanceForm クラスをクリックして、「MenuForm」ライフラインの右方へドラッグします。
  6. 「モデル・エクスプローラー」ビューの「口座処理分析要素 (Account Operations Analysis Elements)」パッケージで、Account クラスをクリックして、「DisplayBalanceForm」ライフラインの右方へドラッグします。

残高表示シーケンス図のライフラインの作成が完了しました。このライフラインは、残高表示参加プログラム図で識別した参加プログラムを表します。ライフラインは連続して編成され、図の左側に 1 次メッセージ - 開始クラスを添えて整列されます。

メッセージ・フローのモデル化

この演習では、シーケンス図のメッセージ・フローをモデル化します。シーケンス図のメッセージは、システム内のクラス間におけるデータ・フローを表します。

残高表示メッセージ選択を作成するには、以下のようにします。
  1. パレットで、「非同期メッセージ」をクリックします。
  2. ダイアグラム・エディターで、「顧客 (Customer)」ライフラインをクリックして、「MenuForm」ライフラインへドラッグします。
  3. 「操作名の入力」ウィンドウで、メッセージに残高表示の選択 (select Display Balance) という名前を付けます。

表示メッセージを作成するには、以下のようにします。
  1. パレットで、「非同期メッセージ」をクリックします。
  2. ダイアグラム・エディターで、「MenuForm」ライフラインをクリックして、「DisplayBalanceForm」ライフラインへドラッグします。
  3. 「操作名の入力」ウィンドウで、メッセージに表示 (display) という名前を付けます。

findForCustomer メッセージを作成するには、以下のようにします。
  1. パレットで、「非同期メッセージ」をクリックします。
  2. ダイアグラム・エディターで、「DisplayBalanceForm」ライフラインをクリックして、「口座 (Account)」ライフラインへドラッグします。
  3. 「操作名の入力」ウィンドウで、メッセージに findForCustomer という名前を付けます。

getBalance メッセージを作成するには、以下のようにします。
  1. パレットで、「非同期メッセージ」をクリックします。
  2. ダイアグラム・エディターで、「DisplayBalanceForm」ライフラインをクリックして、「口座 (Account)」ライフラインへドラッグします。
  3. ダイアグラム・エディターで、任意の場所をクリックします。
  4. 「操作名の入力」ウィンドウで、メッセージに getBalance という名前を付けます。

ループ結合フラグメントを作成するには、以下のようにします。
  1. パレットで、「ループ結合フラグメント」をクリックします。
  2. ダイアグラム・エディターで、「getBalance」メッセージの右方をクリックし、「getBalance」メソッドの近くにボックスを作成します。

残高表示シーケンス図のモデル化が完了しました。この図は、ユーザーがメインメニューの 「残高表示 (Display Balance)」 をクリックしたときに発生するステップのシーケンスを示します。顧客がメインメニューの「残高表示 (Display Balance)」をクリックすると、MenuForm クラスが DisplayBalanceForm クラスの表示操作を呼び出し、その結果、Account クラスの findForCustomer 操作が呼び出されて、現在の顧客の差引金額が検索されます。DisplayBalanceForm クラスは、Account クラスの getBalance 操作を繰り返し呼び出して、口座の差引金額を返すように要求できます。作成した図は次のようになります。

残高表示シーケンス図

残高表示シーケンス図によって、残高表示ユースケースの実現が完成します。残高表示機能タスクの静的情報と動的情報のモデル化が完了しました。残高表示参加プログラム図を開くと、シーケンス図でメッセージとして作成した操作が含まれていることがわかります。残高表示参加プログラム図は、次のようになります。

残高表示参加プログラム図。
注意: 残高表示シーケンス図には、データ・フローが 1 つしか含まれないため、「モデル・エクスプローラー」ビューから「«use case realization» 残高表示 - 代替フロー n («use case realization» Display Balance - Alternative Flow n)」パッケージを削除できます。このパッケージはテンプレートに含まれていますが不要です。パッケージを削除するには、「モデル・エクスプローラー」ビューで、「«use case realization» 残高表示 - 代替フロー n («use case realization» Display Balance - Alternative Flow n)」パッケージを右クリックして、「モデルから削除」をクリックします。

継続する場合は、『演習 2.7: 振込参加プログラム図の作成』に進みます。

ご利用条件 | フィードバック
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved.