モデルへのコラボレーション図の追加

コラボレーション図では、シーケンス図と同様に、オブジェクト、オブジェクトのメッセージ、および特定のシナリオやユースケースでのオブジェクト間の関係を示します。シーケンス図では、メッセージの流れを強調し、送信または受信されたメッセージの時系列を示しますが、コラボレーション図は、オブジェクト間の関係を強調します。

このタスクについて

コラボレーション図は、分類子ロールとその相互作用、またはメッセージを関連ロールを介して示します。分類子ロールはクラス (または分類子) のインスタンスであり、協調動作の文脈でのみ定義されています。分類子は、オブジェクト、複数オブジェクト、またはアクターです。一方、関連ロール は、2 つのクラス間の関連のインスタンスであり、2 つの分類子ロール間でメッセージを伝えるリンクです。このリンクは、強調動作内でのメッセージ搬送の目的にのみ限定されます。つまり、分類子ロールおよび関連ロールは、その強調動作内でのみ意味を持ちます。あるオブジェクトは、異なるコラボレーションでは異なる分類子ロールを持つことができます。そして、分類子は異なる関連ロールを通じて異なるメッセージを交換できます。

さらにコラボレーション図は、関連ロールを通じて渡されるメッセージを表示します。メッセージは通常、クラスの操作のインスタンスであり、順序を示す番号が割り当てられます。1a.、1b.、1.1.2、1.1.3、2.3a.1.、2.3a.2.のような番号表記を使用して、同時に発生する複数のタスクや他のタスクを構成するようなサブタスクを示すこともできます。

並列性を示す番号付け方式は次の例のようになります。

1. サンドイッチを作る。

1a.ジャムを取り出す。

1b.パンを切る。

サブタスクを示す番号付け方式は次の例のようになります。

1. サンドイッチを作る。

1.1 ジャムを取り出す。

1.2 パンを切る。

1.3 パンにジャムをぬる。

分類子ロール、関連ロール、およびメッセージはブラウザーには表示されません。ただし、それらが実現化している元のクラスおよび操作は表示されます。以下に、コラボレーション図を示します。

コラボレーション図

フィードバック