5分で絶対に分かるモデリング5分で絶対に分かる(6/6 ページ)

» 2011年12月27日 12時00分 公開
前のページへ 1|2|3|4|5|6       

5分 − クラス図とオブジェクト図

 さて、以上でクラス図とオブジェクト図の基礎は復習できたと思います。ただ、ここであらためて強調したいのは、人はまず具体的なものを理解してから、次にそれを抽象化するということです。最初から抽象的なものはなかなか理解できません。必ず具体的なイメージが必要です。

 その点、クラス図は一見単純なため理解できたような気になりますが、これまで説明したように実は抽象的なのものなので注意が必要です。 本当に理解できたかどうかを確認するためには、具体的なオブジェクトを使ってオブジェクト図を描いてみることが大切です。

 というのも、オブジェクト間の関係は単純ではない場合も多いからです。特に「AさんはU株式会社で働いている」といった具合に、オブジェクト間の関係が「なしか1つだけ」の場合は分かりやすいですし、オブジェクト図も書きやすいですが、「Aさんは複数のコミュニティに所属している」といったように、Aさんというオブジェクトと関係するオブジェクトが「いくつでも」となると、案外すっきりとは描けません。

 例えば、次の図6のような簡単なクラス図でも、オブジェクト図は複雑な内容になります。図中の「0..1」「*」は、オブジェクトがいくつのオブジェクトと関係しているかという「多重度」を示すもので、「0..1」は「なしか1つだけ」、「*」は「いくつでも」、「1..*」は「1つ以上いくつでも」を意味しています。

ALT 図6 クラス図がシンプルでも分かった気にならず、まずはオブジェクト図を描いてみよう

 まず、このクラス図では会社側の多重度が「0..1」なので、人は複数の会社で働くことはできません。しかしコミュニティ側の多重度は「*」なので、人は複数のコミュニティに所属することができます。よって、クラス図は非常にシンプルでも、オブジェクト図は複雑な形になるのです。


 さて、以上がモデリングの基本となりますが、皆さんの理解度はいかがだったでしょうか。ただ、今回本稿をまとめたのは、基本を説くためだけではありません。冒頭でも述べましたが、今回はモデリングの基本を振り返ることで、「必要なシステムを確実に作る」という開発の基礎も思い出していただきたかったのです。

 というのも、通常、仕様書にはクラス図が付きますが、オブジェクト図は付いてきません。そう、いまさら言うまでもありませんが、システム開発で一番陥りがちな失敗は、「分かったつもり」になってしまうことです。情報を誰もに正確に伝えるためのモデリングは、「分かったつもり」を防ぐためのものでもあるはずなのですが、多忙な開発業務の中では、そうした基本をないがしろにしてしまいがちなのではないでしょうか。

 ぜひモデリングを詳しく復習し、システム開発を行う際には、まずオブジェクト図を自分で描いて、きちんと納得してから着手することを心掛けてください。クラス図に含まれた誤解や問題点を早期に発見できれば、その後の余計な手間やコストを未然に防ぐことができるのですから。

参考リンク
モデリングの詳細については、ぜひ拙著をご一読ください
ゼロからわかる UML超入門(Amazon.co.jp)

前のページへ 1|2|3|4|5|6       

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ