平成25年度 春期
高度情報技術者試験問題と解答
問16
図は“顧客が商品を注文する”を表現したUMLの
クラス図である。“顧客が複数の商品をまとめて注文
する”を表現したクラス図はどれか。ここで、“注文明細”は
一つの注文に含まれる1種類の商品に対応し、“注文”は
複数の“注文明細”を束ねた一つの注文に対応する。

  ┌────┐     ┌────┐     ┌────┐
  │ 顧客 ├─────┤ 注文 ├─────┤ 商品 │
  └────┘1 0..*└────┘0..* 1└────┘

 凡例                  多重度
  クラス   関連  コンポジション 1   必ず1
 ┌────┐             0..* 0以上
 │    │ ──── ◆───   1..* 1以上
 └────┘


 ア┌────┐     ┌─────┐
  │ 顧客 ├─────┤  注文  │
  └────┘1 0..*└─────┘
                ◆1
                │1..*
             ┌──┴──┐     ┌────┐
             │ 注文明細 ├─────┤ 商品 │
             └─────┘0..* 1└────┘

 イ┌────┐     ┌─────┐
  │ 顧客 ├─────┤  注文  │
  └────┘1 0..*└──┬──┘
                │1..*
                ◆1
             ┌─────┐     ┌────┐
             │ 注文明細 ├─────┤ 商品 │
             └─────┘0..* 1└────┘

 ウ           ┌─────┐     ┌────┐
             │  注文  ├─────┤ 商品 │
             └─────┘0..* 1└────┘
                ◆1
                │1..*
  ┌────┐     ┌──┴──┐
  │ 顧客 ├─────┤ 注文明細 │
  └────┘1 0..*└─────┘

 エ           ┌─────┐     ┌────┐
             │  注文  ├─────┤ 商品 │
             └──┬──┘0..* 1└────┘
                │1..*
                ◆1
  ┌────┐     ┌─────┐
  │ 顧客 ├─────┤ 注文明細 │
  └────┘1 0..*└─────┘



【正解】 ア

コンポジションは集約の一種で、なくてはならない集約である。
例えば自動車とタイヤような関係である。
なお、自動車とカーエアコンのような関係は集約である。

■顧客と注文の関係
 顧客から見ると注文はしない場合もあるし、複数注文する場合もある。
 また、注文からみると、顧客は必ず1人である。
 従って 
顧客 1  0..* 注文 の関連となる。

■注文と注文明細の関係
 注文からみると注文明細は、1行以上なければならない。
 注文明細からみると注文は必ず1つである。
 従って、 注文 1  1..* 注文明細 の関連となる。
 また、 注文明細 is part of 注文 であるから、
 注文 ◆─── 注文明細 である。

■注文明細と商品の関係
 注文明細からみると商品は必ず1つである。
 商品からみると、注文明細にない商品も存在するし、
 1つ以上の注文明細が存在する場合もある。
 従って、 
注文明細 0..*  1 商品 の関連となる。

EXCEL VBAのご相談なら ファーストマクロ 



問15 目次 問17
ファーストマクロ TOPページ