MDAとExecutableUML(xUML)

MDA(モデル駆動アーキテクチャ)に関しては、そんなに詳しくないのですが、この思想が提供する
「モデルを管理するだけで、ソースコードは全て自動生成」
というのは実現できれば非常に素晴らしいと思います。
MDAやxUMLに関する説明は下の記事が結構詳しいです。
(実装寄りの話ですけど・・・ちなみに、今回参加したセミナーの講師は
 下の記事で書かれているiUMLiteを作っているKennedy Carterの創設者アラン・ケネディさん)


MDAをツールで体験する (前編)
http://www.atmarkit.co.jp/fjava/devs/mda_tool01/mda_tool01.html
MDAをツールで体験する (後編)
http://www.atmarkit.co.jp/fjava/devs/mda_tool02/mda_tool02.html


今回、iUMLiteの概要をxUMLの説明として、MDAの利点をF16の開発例を使いながら説明していたのですけど、
数年前からMDAの例はF16みたいだし、もう少し幅広い成功事例が聞きたいなぁ(^^;
実際には、ExecutableUMLにしてもASLという補足言語を書かなくては自動生成はできない。
完全にモデルだけ、は今のところ幻想。(他のMDAツールもラウンドトリップ手法の延長で、コードは自分で、だったり)
しかし、否定的な見方だけではなく、かなり未来はあると思っていて、
ASLもモデルとソースコードとのマッピングみたいな物なので、一度作ってしまえば幅広い応用は可能。
それに、PIM(プラットフォームに依存しないモデル)でモデルをチェックしながら、
PSM(プラットドームに特化したモデル)にツールで落とし込み、そこから更にソースコードに落とす
という流れはモデルとソースコードの不整合を無くしますしね。


ソフト開発でトヨタら先駆け 量産品に自動生成のコード
http://ne.nikkeibp.co.jp/free/article/20031217/101220/


この様な事例を考えれば、オブジェクト指向の次は、言語の優劣ではなくMDAだという話も
結構調査する価値はありますよね。