平成23年度 特別 応用情報技術者試験 午前 問45
テクノロジ/開発技術図は“顧客が商品を注文する”を表現したUMLのクラス図である。“顧客が複数の商品をまとめて注文する”を表現したクラス図はどれか。ここで,“注文明細”は一つの注文に含まれる1種類の商品に対応し,“注文ヘッダ”は複数の“注文明細”を束ねた一つの注文に対応する。

出典:平成23年度 特別 応用情報技術者試験 午前 問45
- アクラス図ア
- イクラス図イ
- ウクラス図ウ
- エクラス図エ
正解:ア
解説
“注文ヘッダ”が複数の“注文明細”を束ねる構造にするには,注文ヘッダを1,注文明細側を1..*(1以上)とするコンポジション(◆)で表現し,かつ注文明細が個々の商品(1種類ごと)に対応するように商品と1対多で関連付ける必要があります。選択肢アの図は,注文ヘッダ(1)が注文明細(1..*)を束ね,各注文明細が商品に対応する構造を正しく表現しています。
選択肢ごとの解説
- ア正しい。注文ヘッダ(1)が複数の注文明細(1..*)を束ね,各注文明細が1種類の商品に対応する構造を正しく表現しています。
- イ誤り。多重度が注文ヘッダ側1..*,注文明細側1となっており,1件の注文明細が複数の注文ヘッダに属せることになってしまい,「一つの注文をヘッダが束ねる」という関係と逆になっています。
- ウ誤り。注文明細が顧客と直接結び付き,注文ヘッダが商品と直接結び付く配置になっており,“注文に含まれる商品明細”という業務の意味と対応が取れていません。
- エ誤り。ウと同様に,注文ヘッダと商品,顧客と注文明細の対応関係が入れ替わっており,業務上の意味と整合しません。