クラス図(くらすず)

UMLの構造図の一つで、クラスごとの名前・属性・操作と、クラスどうしの関連・集約・汎化といった静的な関係を描く図。ある時点のインスタンスの結びつきを描くオブジェクト図とも、時間とともに変わる振る舞いを描く図とも役割が異なる。

詳細解説

1つのクラスは長方形の枠で描かれ、枠内を上からクラス名、属性(保持するデータ)、操作(振る舞いやメソッド)の3つの区画に分けて記述します。目的や工程によっては、クラス名だけ、あるいはクラス名と属性だけを書いて概念データモデルとして用いることもあります。

ストラテジパターンを用いた帳票出力のUMLクラス図
クラスをクラス名・属性・操作の3区画で表した例です。全体と緩やかな部分の関係を示す集約(白抜きのひし形)や、上位クラスと下位クラスの汎化・継承関係(白抜き三角の矢印)が描かれています。 出典: 令和4年度 春期 システムアーキテクト試験 午前II 問5 の図

クラスどうしを結ぶ実線は関連を表し、線の両端に書く多重度(例えば1や0..*)で、片方のインスタンス1つに対して相手側のインスタンスが何個対応し得るかを「下限..上限」の形式で示します(*は上限なし)。全体と部分の関係は集約と呼ばれ、全体側の端にひし形を付けます。特に、全体が消滅すると部分もともに消滅するような強い結びつきはコンポジション(複合)と呼び、塗りつぶしたひし形で区別します。

クラス間の関連と多重度、および凡例を示した図です。線の端に添えられた数字や記号を、反対側のクラス1つから見た対応数として読み取ります。 出典: 平成29年度 秋期 システムアーキテクト試験 午前Ⅱ 問3 の図

多重度を読む際は、どちらのクラスを起点に見ているかを取り違えないことが重要です。また、対応する相手が1つも存在しない状態を業務条件が許容するかどうかによって、下限が0になるか1になるかが決まります。

クラス図が問われた過去問

  • 2017(H29)秋 午前II 問3図は“顧客が商品を注文する”を表現したUMLのクラス図である。“顧客が複数の商品をまとめて注文する”を表現したクラス図はどれか。ここで,注文
  • 2021(R3)秋 午前 問48図は,ある図形描画ツールのクラス図の一部である。新たな形状や線種で図形を描画する機能の追加を容易にするために,リファクタリング“継承の分割”
  • 2022(R4)秋 午前II 問2社員と年との対応関係を UMLのクラス図で記述する。二つのクラス間の関連が次の条件を満たす場合,a,b に入れる多重度の適切な組合せはどれか
  • 2024(R6)秋 午前II 問6階層構造をもつ組織と,従業員の組織への所属を表すUMLのクラス図のうち,“従業員は組織階層中のどの組織にも所属できるが,兼務はしない”とする

クラス図が登場する過去問

  • 2025(R7)春 午前II 問13要件定義において,システムが提供する機能単位と利用者又は外部システムとの間の相互作用や,システム内部と外部との境界を明示するために使用される
  • 2024(R6)秋 午前I 問25UMLの図のうち,業務要件定義において,業務フローを記述する際に使用する,処理の分岐や並行処理,処理の同期などを表現できる図はどれか。
  • 2024(R6)秋 午前 問66UMLの図のうち,業務要件定義において,業務フローを記述する際に使用する,処理の分岐や並行処理,処理の同期などを表現できる図はどれか。
  • 2022(R4)春 午前I 問25UMLの図のうち,業務要件定義において,業務フローを記述する際に使用する,処理の分岐や並行処理,処理の同期などを表現できる図はどれか。
  • 2022(R4)春 午前 問66UMLの図のうち,業務要件定義において,業務フローを記述する際に使用する,処理の分岐や並行処理,処理の同期などを表現できる図はどれか。

関連する分野

システム開発技術 モデリング記法(UML・DFD・状態遷移) データベース データモデル・E-R/UML・キー

用語集の一覧へ