2021年06月19日

令和3年度春期 応用情報技術者試験問題 問29

問29

商品の注文を記録するクラス (顧客、商品、注文、注文明細) の構造を概念データモデルで表現する。a〜dに入れるべきクラス名の組合せはどれか。ここで、顧客は何度も注文を行い、一度に一つ以上の商品を注文でき、注文明細はそれぞれ1種類の商品に対応している。また、モデルの表記にはUMLを用いる。

 ┌───┐   ┌───┐   ┌───┐   ┌───┐
 │   │1 *│   │1 *│   │* 1│   │
 │ a ├───┤ b ├───┤ c ├───┤ d │
 │   │   │   │   │   │   │   │
 └───┘   └───┘   └───┘   └───┘


   ┌────┬────┬────┬────┐
   │  a  │  b  │  a  │  b  │
 ┌─┼────┼────┼────┼────┤
 │ア│ 顧客 │ 注文 │注文明細│ 商品 │
 ├─┼────┼────┼────┼────┤
 │イ│ 商品 │ 注文 │注文明細│ 顧客 │
 ├─┼────┼────┼────┼────┤
 │ウ│ 注文 │注文明細│ 顧客 │ 商品 │
 ├─┼────┼────┼────┼────┤
 │エ│注文明細│ 商品 │ 注文 │ 顧客 │
 └─┴────┴────┴────┴────┘





正解


解説

a 1 − * b はaからみるとbは1つ以上対応し、bからみるとaは1つ対応するということである。

顧客は何度も注文を行うが、注文からみると顧客が1つ決まるため、
顧客 1 − * 注文 である。

一度に一つ以上の商品を注文できるので、注文明細も一つ以上になる。逆に注文明細からみると、注文は1つ対応する。よって、
注文 1 − * 注文明細 である。

注文明細はそれぞれ1種類の商品に対応しているが、商品からみるといくつもの注文明細に対応しているため、
注文明細 * − 1 商品 である。

したがって、以下の関係となる。
顧客 1 − * 注文 1 − * 注文明細 * − 1 商品

posted by ファーストマクロ at 08:31| Comment(0) | R03春応用情報技術者
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。