BlogJava 聯系 聚合 管理  

          Blog Stats

          隨筆檔案

          文章檔案


          年度最佳UML/MDA工具

          trufun Plato/Kant

          模型驅動架構(Model Driven Architecture,MDA)是由OMG定義的一個軟件開發框架。它是一種基于UML以及其他工業標準的框架,支持軟件設計和模型的可視化、存儲和 交換。和UML相比,MDA能夠創建出機器可讀和高度抽象的模型,這些模型獨立于實現技術,以標準化的方式儲存。MDA把建模語言用作一種編程語言而不僅 僅是設計語言,MDA的關鍵之處是模型在軟件開發中扮演了非常重要的角色。Trufun Kant系列產品就是一款非常便捷的MDA工具,它是基于Trufun Plato UML2.x建模工具基礎上開發出來的,因此它的可以實現整個項目的分析、設計、開發過程。可以實現與平臺無關的模型,并可將此模型轉換為平臺相關模型。 (:Trufun Kant系列產品有Trufun Kant for Java ,Trufun Kant for vs.net, Trufun Kant for C++以及涵蓋了以上三個產品功能和數據庫建模的Trufun kant Studio大集成產品)
                MDA源自于眾所周知的把系統操作的規范從系統利用底層平臺能力的方式細節中分離出來的思想,MDA工具提供了一種途徑(通過相關的工具)來規范化一個平 臺獨立的系統、規范化平臺、為系統選擇一個特定的實現平臺,并且把系統規范轉換到特定的實現平臺。Trufun Kant系列產品則是完全遵照這些規范的MDA工具,為系統提供了一個統一的實現平臺。MDA的三個主要目標是:通過架構性的分離來實現輕便性、互操作性 和可重用性。
               模型驅動架構(MDA)是OMG組織近年來一直熱炒的一個新的技術體系,也是眾多搞軟件模型研究人員的一個新熱點,其核心的思路是希望通過對商業模型(比 如企業信息化或建筑領域的解決方案)的領域研究。進而提煉出一個相對核心的領域模型,同時抽象出一個PIM(平臺無關模型)。之后根據不同的開發平臺(例 如.net或Jave),應用平臺(windows或unix)形成相應的 PSM(平臺相關模型)。Trufun Kant 系列MDA工具已經可以完整地生成相應的代碼框架,保障了項目從需求開始到后面的實現框架的統一和穩定。
                模型驅動架構(MDA)的發展階段理論還處在一個探索期,很多工具的也是跟著MDA的思想在一步步完善,從目前的趨勢而言,要完全實現OMG提出的MDA 思想,MDA工具至少還需要數年的努力才能完全成熟。目前MDA工具的實現還局限于類圖與代碼的對應,代碼框架的生成,但是大多數工具還無法實現兩者之間 的反復正反向同步,而Trufun Kant產品則已經很好的解決了這一問題,使無論修改模型還是修改已經生成的代碼都能夠保障實時同步到另一邊,保障項目過程中模型和開發的始終統一。
                 MDA目前在以下領域得到了應用:
                *銀行業
                *保險業
                *公共企業(特別在金融管理領域)
                *嵌入式系統
                *后勤保障系統
          目前Trufun Kant系列產品的應用已經基本覆蓋以上領域。
                您也會看到,MDA的確在其中起到了作用。MDA的實現主要集中在以下3個步驟:
                1 首先,您用UML對您的應用領域進行高度抽象的建模,這個模型和實現它的技術(或者底層技術)完全沒有關系。這個模型我們稱之為平臺無關模型(PIM)。 Trufun Kant 系列產品是基于UML2.1最新標準的UML建模工具——Trufun Plato實現的,因此對于這一點的支持是毋庸置疑的。
                2 然后,PIM將被轉換為一個或多個平臺相關模型(PSM)。這個轉換過程一般是自動實現的。PSM將用一個特定的實現技術來描述您的系統。Trufun Kant系列產品實現這一過程的自動轉換,并且可以將PIM模型轉化為10多種面向對象的語言相關的PSM。這一步是MDA流程中最難的,它要求您對您要 應用的基礎技術具有豐富且鞏固的知識,另一方面,源模型(PIM)必須具備自動生成PSM所要求的足夠信息量。
                3 最后,PSM將被轉換成源代碼。Trufun Kant 系列產品利用了橋接器技術和代碼框架技術來實現這塊功能,其中代碼框架可以正向完成模型到代碼的轉換,而橋接器則保障了模型和代碼的實時同步。
                使用MDA的前提
                * 業界(甚至是整個世界)一個被廣泛接受的事實是:只有變化是永恒的。技術永遠在革新。這在中間件領域尤其明顯,當然還有數據庫技術,操作系統,甚至是編程語言都經常變化。這些技術明顯比應用領域的基本概念要變化的快。
                * 如果您在某一特定的應用領域工作,在這個領域中的項目都具有一定的相似性。整個應用程序族或者不同的項目都屬于同一個應用領域,那么,MDA或者生成流程將特別適合于您。
                MDA的優點
                * 您對建模的投資將更加持久的有效--遠長于您目前實現它所應用的技術。這將更有利于保護您的投資。
                * 您具有了技術上的靈活性。
                * 您將不再受技術或應用所具有的不同變化周期的影響--在MDA的幫助下,您可以中立的保持兩方面的多樣性。
                MDA的缺點
                * MDA意味著更多的"組裝"而不是"開發"--在為一個應用建立PIM的時候,您基本上沒有技術上的周旋空間。這對于今天的很多開發人員來說,還是難以想象的。
                * 軟件開發的創造性在一定程度上減弱了。開發人員常常覺得,就一種新技術展開爭論,在技術的前沿工作,是十分吸引人的。可是在MDA流程下,大量的工作是建立模型,這和具體的技術相距甚遠,但符合OMG的建議。
                * 潛在的不成熟性。UML2.x初長成,基于此的MDA工具出現的時間也相對較短,后期的發展還會不斷。
          MDA的軟件開發周期
               在MDA中軟件開發過程是由軟件系統的建模行為驅動的。下面是MDA的軟件開發周期:

                MDA生命周期和傳統生命周期沒有大的不同,主要的區別在于開發過程創建的工件,包括PIM(Platform Independent Model,平臺無關模型)、PSM(Platform specific Model,平臺相關模型)和代碼。PIM是具有高抽象層次、獨立任何實現技術的模型。PIM被轉換為一個或多個PSM。PSM是為某種特定實現技術量身 定做。開發的最后一步是把每個PSM變化為代碼,PSM同應用技術密切相關。傳統的開發過程從模型到模型的變換,或者從模型到代碼的變換是手工完成的。但 是在Trufun Kant系列MDA工具中,這些變換都是工具自動完成的。從PIM到 PSM,再從PSM到代碼都可以由工具自動實現。PIM, PSM,和Code 模型被作為軟件開發生命周期中的設計工件,在傳統的開發方式中是文檔和圖表。重要的是,它們代表了對系統不同層次的抽象,從不同的視角來看待我們的系統, 將高層次的PIM 轉換到PSM 的能力提升了抽象的層次。能夠使得開發人員更加清晰地了解系統的整個架構,而不會被具體的實現技術所“污染”,同時對于復雜系統,也減少了開發人員的工作 量。
                MDA的出現,為提高軟件開發效率,增強軟件的可移植性、協同工作能力和可維護性,以及文檔編制的便利性指明了解決之道。MDA被面向對象技術界預言為未 來兩年里最重要的方法學。當今建模的主要問題在于,對于很多企業來說它只是紙面上的練習。這就造成了模型和代碼不同步的問題,代碼會被不斷修改,而模型不 會被更新,或者,需求變動了,模型也修改了,但是代碼修改不是從模型過來的,這樣模型和代碼就無法保障從始至終的統一,模型不能反映系統,不是代碼最終的 實現,模型也就失去了意義,這方面的問題一方面是開發過程管理問題,一方面是有些MDA工具還無法保障這兩者的統一,而Trufun Kant系列工具則已經很好了解決后者這個問題,為我們實現這一操作提供平臺。彌補建模和開發之間的鴻溝的關鍵就在于將建模變為開發的一個必不可少的部 分,并且使其成為我們可以重新利用和參考的有價值的部分,是我們的開發不因為代碼因為開發人員的變動而增加額外成本。MDA 是模型驅動開發的框架,MDA 的愿景是定義一種描述和創建系統的新的途徑。MDA 使得UML 的用途走得更遠,而不僅僅是美麗的圖畫。很多專家預言MDA 有可能會帶領我們進入軟件開發的另一個黃金時代。 
          MDA最大的好處就是業務模型的持久價值,但是付出的代價是增加了抽象層,Trufun產品在建模技術方面,提供了OCL最新版本的精確建模支持,可擴展更多的機制來支持精確建模和分析模型。也可以根據用戶的實際需要進行業務模型的定制。
          MDA的相關標準
                為了實現MDA這一宏大構想,OMG制定了一系列的標準:
                UML:UML被MDA用來描述各種模型。它并不是為MDA而生,但是作為目前最為風行的建模語言,UML已經占據了全球建模語言領域90%的市場份額, 成為了建模語言事實上的標準,因此OMG將它作為MDA技術的基礎是自然而然的明智選擇。它是MDA的基礎,也是MDA最有力的武器。
                MOF:MOF(Meta Object Facility 元對象機制)是比UML更高層次的抽象,它的目的是為了描述UML的擴展或者其它未來可能出現的類UML的建模語言。雖然MOF也不是為MDA而生的,但 是我們可以體味到OMG的工程師們良苦的用心和長遠的目光。
                XMI:XMI(XML-based metadata Interchange)是基于XML的元數據交換。它通過標準化的XML文檔格式和DTDs(Document Type Definitions)為各種模型定義了一種基于XML的數據交換格式。這使得作為最終產品的模型可以在各種不同的工具中傳遞,這一點是非常重要的,它 保證了MDA不會在打破了一種束縛之后再被加上一層新的束縛。Trufun Kant系列產品支持生成標準的XMI文檔,并且可以導入標準的XMI文檔,也可以通過它的轉換來導入其他uml模型。
                CWM:CWM(Common Warehouse Metamodel 公共倉庫元模型)提供了一種數據格式變換的手段,在任意級別的模型上都可以使用CWM來描述兩種數據模型之間的映射規則,比如將數據實體從關系數據庫變換 為XML格式。在MOF的框架下,CWM使得通用的數據模型變換引擎成為可能。
                在OMG的藍圖中,UML、MOF、XMI、CWM等一系列標準分別解決了MDA的模型建立、模型擴展、模型交換、模型變換這幾個方面的問題。OMG試圖 通過標準化的定義,擴大MDA的應用范圍。同時通過這樣一個可擴展的建模語言環境,IT廠商可以自由實現自己的建模語言,以及語言到可執行代碼的映射,然 而不管怎么樣,都必須處于OMG的標準化框架之下。
          posted on 2009-03-03 13:01 trufun 閱讀(321) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 永昌县| 寻甸| 东兴市| 海兴县| 赫章县| 蓬莱市| 宕昌县| 句容市| 襄城县| 遵化市| 桐庐县| 昌乐县| 原平市| 邳州市| 宜兴市| 平乡县| 都安| 禄丰县| 苍南县| 赫章县| 珲春市| 清水县| 洛浦县| 黄大仙区| 平山县| 九龙城区| 尼勒克县| 九江市| 浪卡子县| 措勤县| 木兰县| 布尔津县| 临夏市| 永丰县| 盐源县| 玉龙| 凉山| 将乐县| 缙云县| 巫溪县| 蒲江县|