ども、皆川%桜の季節はぼんやりしてます@豆蔵です。
# 例によってメールの引用部分を一部削らせていただいています。
On Wed, 16 Mar 2005 14:51:21 +0900
tatsuta@....com wrote:
> もやもやが、まだ、とれないので、頭を整理しています。
>
> +------+ +------+ +------+
> | A | --------- | B |--------- | C |
> +------+ +------+ +------+
> | |
> | |
> | |
> |-----------------------------------|
>
> 上記のクラス図で、A,B,Cのクラスの関連が全て 1 であった場合、
> Bと関連しているインスタンスA,Cが 必ずしも関連するわけでは
> ないのですね。
実は、上図ですべての関連の両端の多重度が「1」である場合だけは推移的に
「Bと関連しているインスタンスA,Cが関連しないと存在できない」形になります
(つまりA,B,Cの各インスタンスの三つ組みで{独立した|閉じた}セットでないと
存在できない)。オブジェクト図を描いていただくと解かり易いのですが、仮にC
のインスタンスに対応するAのインスタンスとしてC.B.Aと辿れるAのインスタン
スとは別のインスタンスを充てようとした場合、そのAのインスタンスに対応す
る別のBのインスタンスが必要で、さらにそれに対応するCの別インスタンスが必
要で、またまたそれに対応するAの別インスタンスが必要で…という感じで無限
連鎖してしまって多重度を満たすネットワークが作れなくなってしまいます。
# 両端の多重度が「1」の関連というのは、かなり強いペアリングを示している
# ので、ちょっと特殊なんですね。
ちなみに、上記のクラス図ですべての関連の両端の多重度が「1」の場合、A-B
間、B-C間、A-C間のいずれかひとつの関連を削除するか派生関連としてもOKです
(他の2つの関連を辿って推移的に相手を特定することができるから)。
# 関連線の誘導可能性(ナビガビリティ)が関わってくると、単純に関連を削除す
# ることはできないかもしれませんが…。
以上、このメールが何らかのお役に立ちましたら幸いです。
--
/|/| ▲ 皆川 誠 @ 株式会社 豆蔵
/ ノ / } 「きつねはコンと鳴く」
|// ノ / | 会社用: kitsune@....com
=o=|\| / 自宅用: kitsune-san@....com
く | / 携帯用: kitsunex@....jp
■■■■