モデル駆動工学
[Wikipedia|▼Menu]

モデル駆動工学(モデルくどうこうがく、Model-Driven Engineering、MDE)とは、アルゴリズム的な概念よりも、ドメインモデルの作成と利用を中心とするソフトウェア開発方法論の一種である。ドメインモデルとは、特定の適応領域についての知識や活動を抽象化して表現したものである。

モデル駆動工学(以下、MDE)は、工学的ライフサイクルを通して、モデルをシステム的に利用する工学手法を意味する。また、MDEの適用範囲は、ソフトウェア、システム、データ工学などである。MDEでは、モデルを第一に考える。
目次

1 概要

2 歴史

3 ツール

4 脚注

5 参考文献

6 関連項目

7 外部リンク

概要

MDEは、以下の3つを目指している。
標準化されたモデルを再利用することで、システム間の互換性を最大化して生産性を向上させること。

適応領域で頻出する
デザインパターンのモデルを使用することで、設計工程を単純化すること。

適応領域における用語や「ベストプラクティス」を標準化することで、システムに関わる個人やチーム間での意思疎通を促進すること。

また、その領域に精通しているユーザーから見ても、そのモデルが意味をなしており、かつシステムを実装するときの基盤として利用できるなら、MDEのモデリング方法論は効果的であるといえる。モデルの開発には、管理者、設計者、ユーザーの十分な話し合いが必要である。モデルが完成すれば、ソフトウェアやシステムの開発が可能となる。

MDEを推進している有名な組織・団体として以下がある。

Object Management Group(OMG)は、モデル駆動型アーキテクチャ(MDA)を推進している。なお、MDAはOMGの登録商標である[1]

EclipseEclipse Foundation

歴史

MDEをサポートした最初のツールとしては、1980年代に開発されたComputer Aided Software Engineering(CASE)ツールがある。CASEツールを開発した初期の企業として Integrated Development Environments(IDE)、Higher Order Software(後のHamilton Technologies)、Cadre Technologies、Bachman Information Systems、Logic Worksなどがある。HTIの製品を除いて、CASEツールは、MDA/MDEと同じ問題を抱えていた。すなわち、モデルとアプリケーションが同期できなくなる問題である。

アメリカ政府は、モデリングを定義するため、IDEF規格の策定に関与した。モデリング定義にはさまざまなもの(Booch法OMTOOSEハレルの状態遷移図、など)があったが、最終的にそれらを統合した統一モデリング言語(UML)が生まれた。ラショナルは、UMLを実装した「Rational Rose」という製品を開発し、高い抽象レベルでのソフトウェア開発自動化への道を拓いた。抽象化によってモデルが単純化されたため、問題領域に集中して設計することが可能となった。また、実行可能な意味論と組み合わせることで、自動化レベルを高めることにも繋がった。Object Management Group(OMG)は、モデル駆動型アーキテクチャ(MDA)と呼ばれる標準規格群を開発し、この手法の基礎を築いた。

Douglas Schdmidtによると、モデル駆動工学技術は、プラットフォーム複雑性に対応しつつ、適用領域の概念を効率的に表現する能力が欠けている第三世代言語の問題への対処法として有望である[2]
ツール



AADL
(SAE International)

Acceleo

Actifsource(有償)

AndroMDA(オープンソース)

AtomWeaver(有償)

CoCoViLa(オープンソース)

CodeFluent Entities(有償)

DB-MAIN(個人利用は無償)

ECO (Domain Driven Design)(有償)

Eclipse Modeling Framework (EMF, Eclipse Foundation)

Enterprise Architect(有償)

ER/Studio(有償)

Epsilon(オープンソース)

GenerateXY(無償)

Generic Eclipse Modeling System (GEMS, Eclipse Foundation)

GeneXus(有償)

Graphical Modeling Framework (GMF, Eclipse Foundation)


MagicDraw(有償)

ManyDesigns Portofino(オープンソース)

MetaEdit+(有償)

objectiF(有償)

Rhapsody (IBM)

RISE Editor(無償)

Sculpture Toolkit(無償)

SimulinkMathWorks、有償)

Together Architect(ボーランド、有償)

Uniface(有償)

XComponent(有償)

YAKINDU Statechart Tools(オープンソース)


脚注^ Object Management Group (2006年5月24日). “ ⇒OMG Trademarks”. 2008年2月26日閲覧。
^ Schmidt, D.C. (2006年2月). ⇒“Model-Driven Engineering”. IEEE Computer 39 (2). ⇒http://www.cs.wustl.edu/~schmidt/PDF/GEI.pdf 2006年5月16日閲覧。. , "A promising approach to address platform complexity—and the inability of third-generation languages to alleviate this complexity and express domain concepts effectively—is to develop Model-Driven Engineering (MDE) technologies..."


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:12 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef