修了試験 2021-12-12実施分 基本情報技術者試験 問25
UMLを用いて表した図のデータモデルのa,bに入れる多重度はどれか。 〔条件〕 (1) 部門には1人以上の社員が所属する。 (2) 社員はいずれか一つの部門に所属する。 (3) 社員が部門に所属した履歴を所属履歴として記録する。

正答4
解説
正解は4です。 UML(Unified Modeling Language)のクラス図で、関連の両端に付ける多重度を条件から求める問題です。 図では、部門と所属履歴、所属履歴と社員がそれぞれ関連で結ばれ、部門側と社員側の端には1が書かれています。 空欄aは部門1つに対応する所属履歴の数、空欄bは社員1人に対応する所属履歴の数を表します。 【選択肢別解説】 1:× aを0..*とすると、所属履歴が1件もない部門を認めることになります。 条件(1)では部門に1人以上が所属するので、aは1..*です。 bも0..*ではなく1..*です。 2:× bは1..*で正しいのですが、aを0..*としている点が誤りです。 部門には必ず1人以上が所属し、その所属は履歴に記録されるので、aは1..*です。 3:× aは1..*で正しいのですが、bを0..*としている点が誤りです。 条件(2)により社員は必ずいずれかの部門に所属し、異動すれば履歴は増えるので、bは1..*です。 4:○ 部門には1人以上の社員が所属するので、部門1つに対して所属履歴は1件以上あり、aは1..*です。 社員は必ずいずれかの部門に所属し、異動のたびに履歴が増えるので、社員1人に対して所属履歴も1件以上あり、bは1..*です。 【ポイント】 多重度は「相手側の1つに対して、こちら側がいくつ対応するか」を、こちら側の端に書きます。 「必ず存在する」なら下限は1、「存在しないこともある」なら下限は0です。まとめて解く
修了試験 2021-12-12実施分を通しで解く(80問)→