演習 2.10: 小切手換金シーケンス図の作成

この演習では、小切手換金シーケンス図を作成します。小切手換金シーケンス図は、小切手換金機能タスクのワークフローを示します。

小切手換金参加プログラム図は、小切手換金機能タスク内のクラスの構造をモデル化します。また、この図は各クラス間に存在する関係も表示します。ただし、機能タスクのワークフローは表しません。ユースケースの実現は、シーケンス図上でこの静的情報を記述するために使用されます。

小切手換金シーケンス図は、ユーザーがメインメニューの 「小切手換金 (Cash Check)」 をクリックしたときに発生するステップを示します。この図は、ユースケース参加プログラムをライフラインとしてモデル化し、データ・フローをメッセージとしてモデル化して、ユースケースのワークフローを表します。シーケンス図でユースケースのワークフローをモデル化すると、それぞれのクラスに存在する操作を発見できます。小切手換金シーケンス図の操作を発見し作成しながら、小切手換金参加プログラム図を完成できます。

システムのモデル化は反復プロセスです。システムの詳細を発見すれば、いつでもシーケンス図を変更できます。このチュートリアルでは、完全な小切手換金シーケンス図を作成します。

小切手換金シーケンス図およびライフラインの作成

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

シーケンス図およびライフラインを作成するには、以下のようにします。
  1. 「モデル・エクスプローラー」ビューで、「勘定業務 (Account Operations)」「≪use case realization≫ 振り替え («use case realization» Transfer Money)」「≪use case realization≫ 小切手換金 - 基本フロー («use case realization» Cash Check - Basic Flow)」を展開し、「≪use case realization≫ 小切手換金 - 基本フロー («use case realization» Cash Check - Basic Flow)」図をダブルクリックします。
  2. 「モデル・エクスプローラー」ビューで、「ユースケース・モデル」「勘定業務 (Account Operations)」を展開し、「出納係 (Teller)」アクターをクリックして図にドラッグします。
  3. 「モデル・エクスプローラー」ビューで、「勘定業務分析要素 (Account Operations Analysis Elements)」を展開し、MenuForm クラスをクリックして、「出納係 (Teller)」ライフラインの右方へドラッグします。
  4. 「モデル・エクスプローラー」ビューの「分析モデル」「勘定業務分析要素 (Account Operations Analysis Elements)」パッケージで、CashCheckForm クラスをクリックして、「MenuForm」 ライフラインの右方へドラッグします。
  5. 「モデル・エクスプローラー」ビューの「勘定業務分析要素 (Account Operations Analysis Elements)」パッケージで、CashCheckSummaryForm クラスをクリックして、「CashCheckForm」ライフラインの右方へドラッグします。
  6. 「モデル・エクスプローラー」ビューの「勘定業務分析要素 (Account Operations Analysis Elements)」パッケージで、CashCheckControl クラスをクリックして、「CashCheckSummaryForm」ライフラインの右方へドラッグします。
  7. 「モデル・エクスプローラー」ビューの「勘定業務分析要素 (Account Operations Analysis Elements)」パッケージで、Account クラスをクリックして、「CashCheckControl」ライフラインの右方へドラッグします。
  8. 「口座 (Account)」ライフラインをクリックし、「プロパティー」ビュー内の「一般」ページで、ライフラインに貸方 (credit) という名前を付けます。
  9. 「モデル・エクスプローラー」ビューの「勘定業務分析要素 (Account Operations Analysis Elements)」パッケージで、CityBank クラスをクリックして、「口座 (Account)」ライフラインの右方へドラッグします。
  10. 「モデル・エクスプローラー」ビューで、「ユースケース・モデル」「勘定業務 (Account Operations)」を展開し、「CityBank」アクターをクリックして、「口座 (Account)」ライフラインの右方へドラッグします。

これで、小切手換金シーケンス図のライフラインの作成が完了しました。このライフラインは、小切手換金参加プログラム図で識別した参加プログラムを表します。ライフラインは連続して編成され、図の左側に 1 次メッセージ - 開始クラスを添えて整列されます。CityBank ライフラインが 2 つ存在します。最初の CityBank ライフラインは、PiggyBank 取り引きを検査するために使用される CityBank バンキング・システムを示します。2 番目の CityBank ライフラインは、ユースケース図に作成した CityBank アクターを参照し、CityBank 施設を示します。

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

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

小切手換金選択メッセージを作成するには、以下のようにします。
  1. パレットで、「非同期メッセージ」をクリックします。
  2. ダイアグラム・エディターで、「出納係 (Teller)」ライフラインをクリックして、「MenuForm」ライフラインへドラッグします。
  3. ダイアグラム・エディターで、任意の場所をクリックします。
  4. 「操作名の入力」ウィンドウで、メッセージに小切手換金の選択 (select Cash Check) という名前を付けます。

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

メッセージの記入および処理依頼を作成するには、以下のようにします。
  1. パレットで、「非同期メッセージ」をクリックします。
  2. ダイアグラム・エディターで、「出納係 (Teller)」ライフラインをクリックして、「CashCheckForm」ライフラインへドラッグします。
  3. 「プロパティー」ビュー内の「一般」ページで、メッセージに記入および処理依頼 (fill-in and submit) という名前を付けます。

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

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

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

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

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

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

これで、小切手換金シーケンス図のモデル化が完了しました。この図は、ユーザーがメインメニューの 「小切手換金 (Cash Check)」 をクリックしたときに発生するステップのシーケンスを示します。出納係が「小切手換金 (Cash Check)」をクリックすると、メッセージが CashCheckForm クラスに送信され、このクラスが画面上にフォームを表示します。出納係がフォームに記入し、次にこのフォームが CashCheckControl クラスに送信されて処理されます。CashCheckControl クラスは口座を検索し、取り引き情報を含むメッセージを CityBank に送信します。次に、CityBank は小切手を現金に換えます。CashCheckControl クラスは credit:Account クラスの deposit メソッドを呼び出し、PiggyBank 口座の小切手を現金に換えます。次に、ユーザーにメッセージが表示されます。 作成した図は、次のようになります。

小切手換金シーケンス図

小切手換金シーケンス図は、小切手換金ユースケースの実現を完了します。小切手換金機能タスクの静的情報および動的情報のモデル化が完了しました。小切手換金参加プログラム図を開くと、シーケンス図のメッセージとして作成した操作が含まれています。小切手換金参加プログラム図は、次のようになります。

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

継続する場合は、『演習 2.11: 分析クラスの文書化』に進みます。

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