応用情報技術者試験 応用情報技術者試験 令和3年度春期 午前29: 商品の注文を記録するクラス(顧客,商品,注文,注文明細)の構造を概念データモデルで表現する。a〜dに入れるべきクラス名の組合せはどれか。ここで,顧客は何度も注文

応用情報技術者試験 令和3年度春期 午前
Q 2929 / 80
商品の注文を記録するクラス(顧客,商品,注文,注文明細)の構造を概念データモデルで表現する。a〜dに入れるべきクラス名の組合せはどれか。ここで,顧客は何度も注文を行い,一度に一つ以上の商品を注文でき,注文明細はそれぞれ1種類の商品に対応している。また,モデルの表記にはを用いる。
UMLクラス関連図(a—1—*b—1—*c—*—1 dの多重度付きクラス図)
この問の正解率:75.21%(944件)

問題本文

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

選択肢

  • .a: 顧客,b: 注文,c: 注文明細,d: 商品
  • .a: 商品,b: 注文,c: 注文明細,d: 顧客
  • .a: 注文,b: 注文明細,c: 顧客,d: 商品
  • .a: 注文明細,b: 商品,c: 注文,d: 顧客

正解

. a: 顧客,b: 注文,c: 注文明細,d: 商品

解説

図の多重度は a—1——b,b—1——c,c——1—d となっており,UMLの多重度は“相手側の数”で読む。aは1に対しbが複数(),つまり1人が複数を持つ側がa=顧客,複数発生する側がb=注文(顧客は何度も注文する)。次にbの1に対しcが複数なのでbの注文1件に対しc=注文明細が複数。最後にcの複数に対しdが1なので,複数の注文明細がd=商品1種類に対応する(注文明細はそれぞれ1種類の商品に対応)。よってa:顧客,b:注文,c:注文明細,d:商品のアが正解。

選択肢ごとの解説

  • .顧客1—注文,注文1—注文明細,注文明細—1商品となり,問題文の関係(顧客は何度も注文,1注文に複数明細,明細は商品1種類に対応)に全て合致する。正解。
  • .aを商品にすると“1商品が複数の注文を直接持つ”ことになり,注文明細を介する本来の関係と整合せず誤り。
  • .aを注文,cを顧客とすると最上位が注文になり,1人の顧客が何度も注文するという関係(顧客が1側)が表現できず誤り。
  • .aを注文明細,dを顧客とする並びは多重度と矛盾し,顧客が最も多側の1に置かれるなど関係が逆転して誤り。

応用情報技術者試験 令和3年度春期 午前過去問一覧へ戻る・問29