令和5年度 秋期 システム監査技術者試験 午前II 問題 問21
この問題は2023(R5)秋 システム監査技術者 午前IIに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。
本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。
UMLを用いて表した図のデータモデルを関係データベース上に実装する際の解釈のうち,適切なものはどれか。

図の説明テキスト
UMLのクラス図。以下の4つのクラスとそれらの関係、および制約ノートが記載されている。
クラス構成:
- クラス「顧客」: 属性として「顧客番号」「請求先」「主送付先」を持つ。
- クラス「注文」: 属性として「注文番号」「受注日」「数量」を持つ。
- クラス「品目」: 属性として「品目番号」「名称」を持つ。
- クラス「付加情報」: 属性として「識別番号」「副送付先」を持つ。
関連構成:
- 「顧客」(1) と 「注文」(*) の間に関連がある。顧客側のロール名は「注文主」。
- 「顧客」(1) と 「付加情報」(*) の間にコンポジション関連がある(顧客側に黒菱形)。
- 「付加情報」(0..1) と 「注文」(*) の間に関連がある。付加情報側のロール名は「指定送付先」。
- 「注文」(*) と 「品目」(1) の間に関連がある。
制約ノート:
- 「注文」クラスに接続されたノート: 『制約:“注文”のインスタンスが指定送付先をもつときは,その“付加情報”の注文主と“注文”の顧客は一致すること。』
- 「付加情報」と「注文」間の関連(指定送付先)に接続されたノート: 『制約:“注文”のインスタンスが指定送付先をもつときは,当該“注文”の“顧客”の主送付先ではなく,“指定送付先”の副送付先を用いること。』
解答・解説を読む
正解: 選択肢ウ
UMLのクラス図を関係データベース(RDB)に実装する際、クラスは「表(テーブル)」に、クラス間の関連は「外部キー」による参照制約として実装されます。
本問の「付加情報」は「顧客」に関連づけられ、従属するデータであると推測されます。一般的に、従属する側の表(付加情報)に、独立している親の表(顧客)の主キーを外部キーとして持たせ、参照制約を設定します。したがって、「付加情報」表には「顧客」表に対する参照制約を指定するのが適切な実装となります。
各選択肢の解説
- ア: 不適切。「指定送付先」を指定する際、対象となる注文を行う顧客に関連づけられた「付加情報」に絞り込む必要があります。無条件にどの行でも選択できる設計は不適切です。
- イ: 不適切。クラス間の関連の多重度が「1対0..1」や「1対多」などの場合、「顧客」表と「付加情報」表の行数は必ずしも一致しません。
- ウ: 適切。「付加情報」は「顧客」に関連するデータであるため、「付加情報」表には、対象の顧客を特定するための参照制約(外部キー制約)を「顧客」表に対して指定します。
- エ: 不適切。「付加情報」は「顧客」に関連するエンティティであり、「注文」表に対する参照制約を持つのは通常は誤りです。