■『基礎からわかるMDA (モデル駆動型アーキテクチャ) なぜモデリングするのか?』
MDAの目的は、「開発資産の経年劣化の予防」です。
プログラム言語の寿命は短い。フレームワークの寿命はもっと短い。
システム設計を実装技術に依存してしまうと、設計の寿命まで短くなってしまいます。
コンパイラのおかげで、C言語で書かれたプログラムがあたらしいプラットフォームでも動作するので、プログラムを長く使用することができます。
MDAも同じです。
プラットフォームに依存しないことで、実装技術が変化しても開発資産の経年劣化を最小限に抑えます。
データベースの設計を概念設計・論理設計・物理設計に分けることと、よく似ていると思いました。
MDAというと「ソースコードの自動生成」の話題が取り上げられやすいですが、MDAの本質はそこではありません。
本書を読んで、MDAの目的・考え方がよくわかりました。
MDAを短期間で評価することはできないと思いました。
システムをいくつかのプラットフォームに移植して、長い間システムを使い続けて、それでようやくMDAの価値を実感できるのではないでしょうか。
本書の最後の章「第6章 MDAの将来」では、Steve Cook氏のMDA批判の論点と、Mechael Guttman氏の反論が紹介されています。
MDAび長所ばかりでなく、短所・欠点・課題について知ることができ、より広い視点を持つことができるところも良いです。
本書は、MDAに興味関心のある技術者が、MDAの基礎・概要を知るのにおすすめの本です。
■参考
- プラットフォーム独立の誤用
Martin Fowler 氏のMDAに関する記事の日本語訳。