モデル駆動工学
MDEは、以下の3つを目指している。
標準化されたモデルを再利用することで、システム間の互換性を最大化して生産性を向上させること。
適応領域で頻出するデザインパターンのモデルを使用することで、設計工程を単純化すること。
適応領域における用語や「ベストプラクティス」を標準化することで、システムに関わる個人やチーム間での意思疎通を促進すること。
また、その領域に精通しているユーザーから見ても、そのモデルが意味をなしており、かつシステムを実装するときの基盤として利用できるなら、MDEのモデリング方法論は効果的であるといえる。モデルの開発には、管理者、設計者、ユーザーの十分な話し合いが必要である。モデルが完成すれば、ソフトウェアやシステムの開発が可能となる。
MDEを推進している有名な組織・団体として以下がある。
Object Management Group(OMG)は、モデル駆動型アーキテクチャ(MDA)を推進している。なお、MDAはOMGの登録商標である。
Eclipse(Eclipse Foundation)
モデリング定義にはさまざまなもの(Booch法、OMT、OOSE、ハレルの状態遷移図、など)があったが、最終的にそれらを統合した統一モデリング言語(UML)が生まれた。ラショナルは、UMLを実装した「Rational Rose」という製品を開発し、高い抽象レベルでのソフトウェア開発自動化への道を拓いた。抽象化によってモデルが単純化されたため、問題領域に集中して設計することが可能となった。また、実行可能な意味論と組み合わせることで、自動化レベルを高めることにも繋がった。Object Management Group(OMG)は、モデル駆動型アーキテクチャ(MDA)と呼ばれる標準規格群を開発し、この手法の基礎を築いた。
Douglas Schdmidtによると、モデル駆動工学技術は、プラットフォームの複雑性に対応しつつ、適用領域の概念を効率的に表現する能力が欠けている第三世代言語の問題への対処法として有望である。