UTI UML教育研究所
OCUP(オーカップ)とは OCRES(オークレス)とは スキルアップ・キャリアアップのためのコンテンツはこちら 会社案内 お問い合わせ
ファンダメンタル
インターメディエイト
アドバンスト
模擬試験(メルマガ会員専用)
OCUPブログ
OCUP・UML関連ニュース
イベント・セミナー
企業導入事例
OCUP認定書籍
認定ユーザープログラム
資格取得までのステップ
受験申込み方法
バウチャーチケットの購入
FAQ
パートナープログラム
コラム
エキスパートインタビュー
メールマガジンのご案内
ブックプラス
キャンペーン
OCUPブログ 第10回

本日は、前回の言語アーキテクチャの続きで、コアパッケージにつて解説したいと思います。

コアパッケージ
UMLのアーキテクチャでは、モデル・レイヤーの上にメタモデル・レイヤーがあり、さらにその上に、メタメタモデル・レイヤーが存在するというお話をしました。
では、このメタメタモデルの言語仕様を定義する場としてメタメタメタモデルが存在するのかというと、そうではありません。実は、M2レイヤーとM3レイヤーの言語仕様はほとんど同じなのです。
これは、M1レイヤーの言語使用に関しても、ほぼ同じことが言えます。そのために、UMLでは、各レイヤーに共通する言語仕様を一ヶ所でまとめて定義し、それをコアパッケージと呼んで、各レイヤーで共通利用しています。また、このコアパッケージは、UMLだけではなく、他の言語を定義する際にも利用されています。
(図2-4参照)

(なぜ、言語仕様が同じなのに、レイヤーを分けるのかは、次回触れたいと思います。)

図2-4

このコアパッケージは、抽象度は高いのですが、逆に内容は極めてシンプルです。
例えば、可視性には、プロテクト(#)とかパッケージ(〜)がなく、単にパブリック(+)とプライベート(−)の2種類しかありません。そして、メタモデル図の表記もモデル図よりもずっとシンプルです。

このOCUPブログは株式会社ストラタジーナムのプロマネBlogでもご覧いただけます。