N項関連
3 項以上の関連
極めて動的な関係にある複数のクラスは
開発者も管理者も、扱いが難しくなるため避けるべきではありますが
それでも、複数の分類子が複雑な関係を形成することがあります
A が B に C を D するというような関係を持つ場合
従来の 2 項関係ではうまく表現できないことがしばしばあります
そこで、複数項の関係は N 項関連として記述します
N 項関連も多重度を指定することができますが、その意味はあまり重要にはなりません
2 項関連とは異なり、その関係が明確ではないからです
N 項関連は、中央に大きなダイヤモンド型のアイコンを記述し
ダイヤモンドの各頂点や側面の中間から経路を記述します
関連名はダイヤモンドの側に書き、役割は分類子の側に記述します
この図は、例えば再利用可能なシステムの基本的な分類子の関係です
Data は情報を管理し、Model は機能を公開した API であり
View はユーザーインターフェイスを抽象化した型を提供します
これらが互いに関連し合い、必要なときにお互いを呼び出しあいますが
無秩序に情報を操作された場合、整合性やセキュリティに問題が発生します
そこで、Control 関連クラスがこれらの関連を制御します