2011年11月9日

1.5.1-MDA的主張

寫給SA的UML/MDA實務手冊
----------
第1章-Why系統分析師需要學習UML
1.5-MDA開發程序

1.5.1-MDA的主張

如何因應企業與技術的快速變動,一直是軟體界的專家學者們傷腦筋的問題。然而,此刻OMG(Object Management Group)所提出的MDA(Model-Driven Architecture),便是為了解決這個變動問題。

1.MDA欲解決的問題–如何因應企業與技術的快速變動?

2.MDA所用的工具–運用OMG現有的標準及技術,主要包括有:UML(Unified Modeling Language)、MOF(Meta-Object Facility) 、CWM(Common Warehouse Metamodel)、UML Profile、XMI(XML Metadata Interchange)以及CORBA。

3.MDA提出的解決方法–將企業及應用系統與實體技術平台分離,且以標準模式語言UML來表達與平台無關的PIM(Platform Independent Model),然後再設計出適用於特定平台的PSM(Platform Specific Model)。如此一來,因為分隔且封裝了企業與技術兩方面的變動,所以降低了兩者之間的牽動。

MDA主張將設計切分成PIM和PSM,除此之外,MDA其實沒有額外提出其他的標準或技術,取而代之的是,它善用且整合而多項已經存在的標準及技術。請看圖1-14,這是MDA官方網站(http://www.omg.org/mda/)首頁上的圖片,充分呈現了MDA的期望與相關技術。


圖1-14: MDA

從圖1-14最內圈看起,MDA主要使用了UML、MOF及CWM這三項建模標準(Modeling Standard),做為PIM及PSM的建模基礎。不過,對於一般的開發人員而言,只要熟知UML這套標準模式語言,就可以開發MDA專案了。

往外看圖1-14中的第二內圈,代表公開標準或私有的實體技術平台,有CORBA、XMI/XML、.NET、Java及Web Services等等。也就是說,MDA希望制定出各式獨特的實體平台專屬的PSM轉換規則,並且最好可以由廠商配合設計出MDA開發工具,以便能夠將中立的PIM自動轉出特定平台的PSM。

接下來再往外看到圖1-14中的第三內圈,代表跨平台的普遍性服務(Pervasive Services),有目錄服務(Directory Services)、交易服務(Transaction Services)、安全服務(Security Services)以及分散式事件及通知服務(Distributed Event and Notification Services)。OMG計畫定義四項普遍性服務,讓任何平台上的應用程式或Client端都可以透過MDA環境,取得跨平台的服務。

至於圖1-14中的最外圍,則代表MDA可以應用在各式不同的領域環境中,諸如電子商務(E-Commerce)、電信(Telecom)、運輸(Transportation)、製造(Manufacturing)、醫療保健(HealthCare)、金融(Finance)以及太空(Space)等等的領域。

沒有留言: