[UML Conference2002開催]
「Action Semantics」を知ることがUML2.0理解の早道

2002/9/13

 9月11日、「UML Conference2002」(主催:翔泳社)が開催された。キーノートセッションには、「エクストリーム・プログラミング&アジャイル開発プロセスセミナー」にでも講演した、アリスター・コーバーン氏(Alistair Cockburn)が、「ユースケースの実践活用テクニック」と題したセッションを行った。そのほか、実装レベルのテーマを中心としたUML関連のセッションが行われた。

 UMLの全体的な概要については、UMLの標準仕様策定活動を行うOMGから和田周氏(OMGジャパン テクニカルマネージャ)が登壇、UML2.0の最新動向を解説した。和田氏はまず、現在普及しているUML1.4の問題点に触れ、「仕様サイズが過度に大きすぎる、仕様が無意味に複雑すぎる、厳密性が低い、拡張性が低い、コンポーネントのサポートが甘い、ダイアグラム間の相互運用ができない」と指摘、これらの問題への対応を行うことがUML2.0策定の意図だとした。

 実際、UML2.0はOMGが提唱する4階層アーキテクチャ(上位層から、M3=メタメタモデル、M2=メタモデル、M1=モデル、M0=インスタンス)のうち、メタモデルの定義が大きく変更されることになる。つまり、UMLに登場する要素群の定義を厳密にすることを目指すもので、例えばクラスとは何か? クラス同士、あるいはクラスとインターフェイスはどのような関係が持てるのか? クラスはどのような要素を内部に持てるのか? といったこれまであいまいだった要素を再定義し直す。ただ、和田氏は「メタレベルの変更を知ることにほとんど意味はない」とし、UML2.0の仕様で最も重要な要素は、MDA(Model Driven Architecture)の実現によるシステム開発への適用性だと説く。

 MDAの第1目標は、モデルからコードの自動生成を行うことにある。コードを自動生成するにはモデルの厳密性が不可欠で、特に振る舞いのモデリングについて、UML1.4以前のバージョンは対応が遅れていた。さらに、UML Profile(特定産業やプラットフォーム向けのUML拡張セット)とのメタレベルでの整合性を合わせることも不可欠だ。UML Profileもメタモデルが定義の中心であるため、うまく組み合わせるにはUML自身の拡張性、柔軟性が不可欠であるという、つまりはメタモデルの再定義に帰結する。

 MDAを実現する最大の要素として、和田氏は「Action Semanticsを知ることが重要」と話す。Action Semanticsは、モデル上で動作のトレース、デバッグを可能とする、Executable UMLを実現するための仕様である。プラットフォームに依存しない形で、モデル上でアルゴリズムを記述できるのが特徴だ。ただし、現段階では、「UML2.0にどのような形でAction Semanticsが盛り込まれるのは未定」(和田氏)であるという。UML2.0 OCL(Object Constraint Language:モデル記述のための形式言語)の提案の中には、OCLに加えてAction Semanticsを盛り込んでいるものもあるという。

 MDAの実現によって、UML2.0がコードの自動生成が可能になる一方、その先には、インテグレーション技術への適用という目標が待っている。MDAが単なる自動コード生成技術から、モデルの再利用を促し、モデルベースのシステムインテグレーションが可能になるという目標に向けて、UML2.0の標準策定作業は現在行われている最中である。和田氏によると、標準化が確定するのは「早くて2003年春ころ」という。

(編集局 谷古宇浩司)

[関連リンク]
翔泳社

[関連記事]
UML2.0は開発手法を反映した存在へと進化する (@ITNews)
OMG会長、プラットフォーム非依存のMDAを語る (@ITNews)
OMG、新アークテクチャ「MDA」採用を発表 (@ITNews)
ボトムアップの民主的なプログラミング手法、XP (@ITNews)
悪循環を断ち切る効率的なシステム開発を考える (@ITNews)
ソフトウェアの重要性が増す中でUMLに大きな関心が (@ITNews)
UMLとMDAでシステム構築を根本から変える (@ITNews)

情報をお寄せください:



@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)