平成25年度 春期 データベーススペシャリスト試験 午前Ⅱ 問4
テクノロジ/データベース“学生は,学期が異なれば同じ授業科目を何度でも履修できる”を適切に表現しているデータモデルはどれか。ここで,モデルの表記にはUMLを用いる。

出典:平成25年度 春期 データベーススペシャリスト試験 午前Ⅱ 問4
- ア図ア
- イ図イ
- ウ図ウ
- エ図エ
正解:エ
解説
“学生は,学期が異なれば同じ授業科目を何度でも履修できる”という状況を表すには,学生と授業科目の間の“履修する”という対応が,学期によって区別される必要がある。すなわち,学期は学生と授業科目の組合せに付随するもう一つの識別要素であり,学生・学期・授業科目の三者を同時に結び付ける関連(三項関連)として表現するのが適切である。図エは,学生と授業科目の間の“履修する”という関連をひし形(関連クラス)で明示し,そこに学期(多重度*)を結び付ける構造になっており,学生と授業科目の組合せが同じであっても,学期が異なれば別の履修記録(“履修する”のインスタンス)を何度でも作成できることを表している。図ア・図イ・図ウは,学期と“履修する”との結び付き方が不十分であり,学期が異なれば同じ授業科目を何度でも履修できるという状況を正しく表現できない。
選択肢ごとの解説
- ア誤り。学期(1)を学生(*)の上位に置いた構造になっており,一つの学期に複数の学生が対応するだけで,一人の学生が複数の学期にまたがって存在し,学期ごとに同じ授業科目を履修できるという状況を表現できない。
- イ誤り。学期は“履修する”という関連に対して点線(依存関係)で結ばれているだけであり,学期が履修の記録を区別する要素として組み込まれていない。そのため,学期が異なれば同じ授業科目を何度でも履修できるという多重性を正しく表現できない。
- ウ誤り。学生と学期の間は独立した1対*の関連になっているだけで,“履修する”という学生・授業科目間の関連そのものには学期が組み込まれていない。したがって,学生・学期・授業科目の組合せを一つの履修記録として区別できない。
- エ正しい。学生と授業科目の間の“履修する”という関連をひし形(関連クラス)として明示し,そこに学期(多重度*)を結び付けることで,学期ごとに独立した履修の記録を何度でも作成できる構造になっている。