InfoQ:模型驅動開發在哪裡成功了?

banq發表於2010-09-23
InfoQ: Model-Driven Development: Where are the Successes?

並不是不能大家使用MDD,而是告誡大家MDD的複雜性。並且提供了一些建議:
1.儘量保持領域模型更加緊湊和窄化。
2.領域要眾所周知。
3.對MDD要足夠重視,不要作為試點專案。
4.MDD最好形式是落地
5.Be careful of gains that are offset elsewhere
6.不要對程式碼生成迷惑
7.不是每個人能夠抽象思考。
8.大多數專案失敗在可伸縮上。
9.使用正確的工具和過程。

MDA誕生十年後,需要大家來總結和討論。

有人在回帖中對基於圖形(MDE)的和基於文字語言(DSL)的兩種MDD方式比較:
圖形化在架構基本虛擬抽象是有用處的,但是在物件元件構件級別沒有任何意義,相比基於文字語言,圖形化工具難於和環境以及開發過程進行整合。

為什麼不使用文字語言實現MDD呢?文字建模語言DSL已經有不少成功工業應用,當然還有些問題,比如削弱MDD的一些特點。

今天,好的程式語言不但在細節上執行有效,而且支援DSL構建,提供抽象層次,我也看到一些DSL用在元件和類似MDD任務上。

我們是否確實需要一種特定的MDD工具,是文字或者圖形?

所有MDD都是基於物件導向,但是,物件在構建可重用的元件構件標準上比較力不從心,我們知道的成功標準元件,如TCp HTTP都不是物件化的,而物件導向的元件標準如CORBA則證明帶來複雜性。

面向函式語言functional programming具備形成成功元件構件標準的特點。


相關文章