平成26年度 秋期 午前Ⅱ 問21
システム要件定義・ソフトウェア要件定義
クラス図に関する問題
階層構造をもつ組織と社員の所属を表すUMLのクラス図のうち,“社員は組織階層中のどの組織にも所属できるが,兼務はしない”とするものはどれか。
- ア(原典は図。クラス「組織」を汎化(白抜き三角)して「上位組織」と「末端組織」の二つのサブクラスがある。「上位組織」と「組織」の間に関連があり,上位組織側の端に役割名「上位」・多重度「0..1」,組織側の端に役割名「下位」・多重度「1..*」。「末端組織」と「社員」の間に関連「所属する」があり,末端組織側の多重度「1」,社員側の多重度「*」)
- イ(原典は図。クラス「組織」を汎化して「上位組織」と「末端組織」の二つのサブクラスがある。「組織」に自己関連があり,一方の端に役割名「上位」・多重度「0..1」,もう一方の端に役割名「下位」・多重度「*」。「組織」と「社員」の間に関連「所属する」があり,組織側の多重度「*」,社員側の多重度「1」)
- ウ(原典は図。クラス「組織」を汎化して「上位組織」と「末端組織」の二つのサブクラスがある。「組織」と「社員」の間に関連「所属する」があり,組織側の多重度「*」,社員側の多重度「1」。組織の自己関連はない)
- エ(原典は図。クラス「組織」に自己関連があり,一方の端に役割名「上位」・多重度「0..1」,もう一方の端に役割名「下位」・多重度「*」。「組織」と「社員」の間に関連「所属する」があり,組織側の多重度「1」,社員側の多重度「*」。サブクラスはない)
答えと解説を見る
✓ これが正解エ(原典は図。クラス「組織」に自己関連があり,一方の端に役割名「上位」・多重度「0..1」,もう一方の端に役割名「下位」・多重度「*」。「組織」と「社員」の間に関連「所属する」があり,組織側の多重度「1」,社員側の多重度「*」。サブクラスはない)
解説
社員から見た組織側の多重度を1にし、関連の相手を組織全体にした図です。
条件は二つあります。一つ目の、どの組織にも所属できるという条件は、社員との関連の相手が、上位組織や末端組織といった特定のサブクラスではなく、組織というクラス全体であることを意味します。二つ目の、兼務はしないという条件は、社員一人から見て所属する組織がちょうど一つ、つまり関連の組織側の多重度が1であることを意味します。両方を満たすのは、組織に上位0..1・下位*の自己関連で階層を持たせ、組織と社員の関連を組織側1・社員側*とした図です。多重度は相手側の端に書かれた数を読む、という読み方を押さえると判断できます。
ほかの選択肢はなぜ違うのか
- ア(原典は図。クラス「組織」を汎化(白抜き…:社員との関連が末端組織につながっているため、社員は階層の末端の組織にしか所属できません。どの組織にも所属できるという条件を満たさず、上位組織に直接所属する社員を表せません。
- イ(原典は図。クラス「組織」を汎化して「上…:組織と社員の関連で、組織側の多重度が*になっています。社員一人が複数の組織に所属できることになり兼務を認めてしまううえ、社員側が1なので一つの組織に社員が一人しかいない形になります。
- ウ(原典は図。クラス「組織」を汎化して「上…:組織側の多重度が*で社員側が1なので、社員の兼務を許し、組織には社員が一人だけという関係になります。さらに組織どうしの自己関連がないため、組織の階層構造も表せていません。
この問題の用語
- 組織目的を果たすために、人が役割を分けて集まったまとまりのことです。分け方には機能別、事業部制、マトリックスなどの形があります。
出典:平成26年度 秋期 システムアーキテクト試験 午前Ⅱ 問21
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)