今回は情報処理技術者試験によく出題されるUMLのクラス図について解説していこうと思います。
この記事では、基本情報技術者試験対策として、過去問を用いてクラス図の基礎を解説していきます。
UMLのクラス図とは
そもそもUMLとは
そもそもUMLとは、Unified Modeling Languageの略で、オブジェクト指向のソフトウェア開発においてソフトウェアの設計を図示するための表記法です。
UMLという表記法は、以前までバラバラで統一されていなかったオブジェクト指向のソフトウェア開発の表記法を標準化するために考え出されました。
UMLで定義されている図には主に以下のものがあり、クラス図はその一つです。
- クラス図
- オブジェクト図
- アクティビティ図
- シーケンス図
今回はこの中で最も重要なクラス図についてのみ説明していこうと思います。
クラス図とは、クラス図の書き方
クラス図とは、クラス同士の関係を表す図のことです。
システムの構造を記述する静的な構造図です。
クラス図は以下のように長方形の枠の中にクラス名、データ(属性)、メソッド(手続)の3つを記入します。
クラス同士の関係には
- 汎化(継承)
- 関連
- 集約
- コンポジション
- 依存
- 実現
の6つがあります。
それぞれ以下のように表記します。(少し図が下手なのは許してください笑)
基本情報技術者試験対策としては、汎化のみ覚えておけば問題ありません。
また、クラス図には1や*などの多重度を表す記号が添えられることがあります。多重度とはクラス間の量の関係を表す度合いのことです。
多重度を表す記号には以下のものがあります。
1…1(そのまま)
*…任意の整数
0..1…0から1の範囲
1..*…1以上(1~任意の整数)
「..」は範囲を表します。
例えば下図のように表します。
車一つに対してタイヤが複数あるという意味になります。
基本情報技術者試験過去問
まず以下の2つの問題を解いてみましょう。
問1.
UMLのクラス図において、集約の関係にあるクラス図はどれか。
基本情報技術者試験ドットコムより
ア.クラスA と クラスB
イ.クラスA と クラスC
ウ.クラスB と クラスD
エ.クラスC と クラスD
平成18年春期 午前問39
問2.
UMLのクラス図に記述するものはどれか。
基本情報技術者試験ドットコムより
ア.アクティベーション, オブジェクト, ライフライン
イ.オブジェクト, メッセージフロー, リンク
ウ.初期状態, 終了状態, 遷移
エ.操作, 属性, ロール名
平成19年秋期 午前問45
問1.解答
UMLのクラス図におけるクラス間の関係は以下のようになるので、答えは「イ」となります。
問2.解答
ア.シーケンス図に記述するものなので誤り。
イ.コミュニケーション図に記述するものなので誤り。
ウ.状態遷移図に記述するものなので誤り。
エ.正しい。ロール名とは、関連におけるそれぞれのクラスの役割を示すものです。
まとめ
今回はUMLのクラス図について解説してきました。
UMLの中でもクラス図は特に重要で、基本情報技術者試験にもよく出題されるのでしっかりと抑えておきましょう!
ここまでご精読いただきありがとうございました。
コメント