<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    MDA之路

    MDA,UML,XML,Eclipse及Java相關的Blog
    posts - 53, comments - 494, trackbacks - 0, articles - 2
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    形式化關系型模型轉換方法的一些觀點

    Posted on 2006-04-06 23:00 wxb_nudt 閱讀(4983) 評論(17)  編輯  收藏 所屬分類: 技術雜談

    形式化關系型模型轉換方法的一些觀點

    本文主要分析了 Michael Wahler 的博士論文研究計劃書 [1] ,他是 IBM Zurich 研究室的一名走讀博士。他的導師是 David Basin 。他的研究題目是關系型模型轉換方法的形式化。我將其中有意義的部分摘錄出來。并加上了一些自己的想法和觀點。這份計劃書是 2004 年寫的,其中一些想法和觀點今天看來也不失偏頗。

    今天又搜索了一下 Michael Wahler 的論文,發現他除了這一篇以外,沒有以第一作者的身份發表論文。很是遺憾,他的博士論文計劃書做得很好,為什么沒有成果出來呢?

    (藍色部分是自己的觀點和評論。)

    Background and Definitions

    在第一部分 Background and Definitions 中,給出了四個概念 Model Transformation Consistency between Models Reconciliation 。這些概念和其它地方的概念有一些區別,解釋如下:

    Model ? A model is a representation of a part of the function, structure and/or behavior of an application or system. A representation is said to be formal when it is based on a language that has a well-defined form (”syntax”), meaning (”semantics”), and possibly rules of analysis, inference, or proof for its constructs. The syntax may be graphical or textual.

    模型是一個應用程序或者系統的功能,結構或者行為部分的一種表達方式。當一種表達方式基于一種含有良構的形式(語法),含義(語義),以及關于分析、推論或者證明其構造的規則的語言時,這種表達方式被稱為形式化的。其語法可以是圖形的或者是文本的。

    事實上,目前對于軟件模型的形式化表達,例如類圖的形式化表達還是沒有一個統一的標準或者語言。

    Transformation

    Functional View A transformation is a function that maps a tuple of models from one or more

    domains onto another tuple of models in the same or different domains.

    Operational View A transformation is a terminating algorithm that applies structural and/or

    semantic changes to a model or a set of models.

    對于模型轉換有兩種觀點:

    功能的觀點:一個轉換是一個函數,它可以將一組模型從一個或者更多的領域映射到相同或者不同領域中的另一組模型。

    操作的觀點:一個轉換是一個可停機算法,它將結構或者語義的變化應用到一個或者一組模型。

    描述性( declarative )的模型轉換語言就是基于功能的觀點;而命令性( imperative )的模型轉換語言則是基于操作的觀點。

    ?

    Consistency between models

    A set of models is consistent with respect to a consistency concept if the models fulfill the syntactic consistency conditions and the semantics of the models fulfills the semantic consistency conditions of the consistency concept.

    模型一致性:如果一組模型符合語法一致性條件并且其語義符合某種一致性概念下的語義一致性條件,則這組模型對于這種一致性概念是一致的。

    簡單的理解:如果一組模型符合某種語法和語義的規則,則認為它們對于這組規則是一致的,也就是規則是成立的。最簡單的語法一致性規則是, UML 類圖的構建規則,例如類可以包含屬性,但是屬性不能包含類。如果一個 UML 模型中屬性包含了類,則此模型不是良構的,破壞了 UML 語法一致性規則。

    Reconciliation

    Reconciliation is the process of making inconsistent models consistent according to a consistency concept and the intent and expectation of the user. Depending on its requirements, the reconciliation process may run automatically or interactively.

    消解(沖突消解):消解是一種過程,其目的是為了將不一致的模型根據一致性概念和用戶的決定和希望重新變為一致。根據其要求的不同,消解過程可以自動運行或者交互的運行。

    消解實際上就是模型轉換過程,對于一組模型轉換規則,如果源模型和目標模型是一致的,則它們符合規則,不需要轉換。如果不符合規則,則需要消解 / 轉換,通過將它們變為一致的過程(通常是對目標模型進行增、刪、改)達到模型轉換的目的。消解以后的模型則具有了一致性。

    這種方法在 MTF IBM 的模型轉換工具)中實現了。

    Running Example

    第二部分給出了一個模型轉換的實例如下:

    image001.gif
    然后給出了一個關系型的模型轉換代碼(可以看出,這就是
    MTF 的代碼):

    relate R (Class c1, Class c2) {

    relateAttributes(c1.attributes, c2.attributes), (1)

    relateMethods(c1.methods, c2.methods), (2)

    relateGetter(c1.attributes, c2.methods) (3)

    }

    當然,文中給出的代碼是不完整的,可能作者不想牽扯到太多 MTF 的細節,畢竟這是一個博士開題報告,在沒有對所有的關系型模型轉換語言進行分析之前,就使用 MTF ,也是不恰當的。因此他還給出了基于一階邏輯的轉換定義:

    image002.gif
    一階邏輯用來表示模型轉換的語義是足夠的,
    OCL 語言其實是一階邏輯的另一種表現形式,所以有一些研究者將 OCL 做為模型轉換語言。其實一階邏輯看起來還是很清爽的,比具體的模型轉換代碼更好理解。

    Related Work

    相關工作包括 MDA 、業務過程集成與自動化( Business Process Integration and Automation )、形式化語言的語法和語義、數據庫修訂理論( Database Revision Theory

    其中業務過程集成與自動化不太了解,數據庫修訂理論是和人工智能領域相關的,也不太理解。

    State of the Art

    這一節介紹目前模型轉換的研究現狀。一共有三點內容:第一介紹了模型轉換技術出現的動機;第二部分介紹了模型轉換技術的分類,分類方法來自 [2] ;第三部分介紹了目前的關系型模型轉換方法,其中最著名的是 [3] ,他第一次使用集合論中的關系來表示元模型間的轉換規則。

    Open Questions and Tasks

    這是本文最有意義的一節了,其中介紹了關系型模型轉換語言形式化領域中的兩個 open question

    1. The syntax and semantics of the expression language that is used to formulate the set comprehension predicate has to be defined and its logical properties have to be proved. As one single language will not be sufficient for the several use cases for transformations, several languages which map to distinct logical classes have to be investigated.

    用來闡明集合理解斷言( set comprehension predicate ,用來表達模型轉換規則的關系往往使用集合理解斷言來定義)的語言的語法和語義必須被定義好,它的邏輯屬性也必須驗證。因為單一的語言不足以表達模型轉換中的各種使用案例,所以必須研究多種語言,它們分別映射到不同的邏輯類型。

    總的來說,作者希望通過研究不同的語言來找到適合描述模型轉換規則的關系型語言,或者自己定義這種語言的語法和語義。這些語言都應該是基于某種邏輯的。

    2. An execution semantics needs to be defined for relations in the model transformation context. The semantics needs to support two mechanisms:

    (a) Two or more models have to be checked for consistency, i.e., that they form a valid tuple with respect to a relation that was defined on them.

    (b) Reconciliation has to be supported to be able to ”repair” models that are inconsistent with respect to a relation.

    在模型轉換環境中,必須定義關系的可執行語義。這種語義必須支持以下兩種機制:

    (a)??? 兩個或者更多的模型必須能夠進行一致性檢查。例如,根據定義在它們之上的一個關系來檢查他們是否構成了一個有效的組合。

    (b)??? 如果模型不符合一個關系定義的一致性,則必須有一個消解機制來“修復”模型。

    作者希望能夠定義一個基于關系的可執行語義,這個語義有兩種功能:一是檢查模型之間是否能夠保持一致性,這里的一致性使用關系來定義,即用關系定義的模型轉換規則;二是當模型不一致時,是否可以使用消解機制來修復模型從而重新達到一致。這里的消解機制相當于模型轉換的執行機制。而消解的過程就是模型轉換的執行過程。

    理想的關系型模型轉換語言的重要特征

    在這一節作者還列舉了關系型模型轉換語言應該具有的某些重要特征,主要包括:

    Termination (可停機性):模型轉換方法應該保證是可以停機的,不能包含死循環等。

    Confluence (匯合?):關系的執行順序是否對模型轉換的結果造成影響?在關系之間是否存在著顯式、隱式的控制流?兩個關系的域并行執行并且有交集時,是否會導致問題?

    一般的關系型模型轉換語言的執行順序是隱式的被定義的,例如 MTF ,它從第一個可以執行的 relate 語句開始,然后在語句中調用其它子語句。在 QVT 草案 [4] 中, Relation 語言將所有的 top Relation 語句依次執行,然后在語句中調用其它子語句。而在其它的一些模型轉換語言中例如 ATL ,則類似于一般的面向對象語言,是顯式定義執行順序的。

    Composition (組合):將關系組合起來時是否會導致問題?當然,由于關系是描述性的,所以它是沒有副作用的,因此組合關系應當是沒有問題的。但是這一點如何證明?

    OCL 也是描述性的語言,它最大的特點就是無副作用,并且它的計算都被認為是原子的,不存在并行和多線程等問題。但是如何證明關系的組合不會帶來副作用還真是沒有人想過。

    Correctness / Decidability (正確性 / 可判定性):如何處理轉換規范中可能存在的矛盾。集合理解斷言可能會含有一些矛盾,它們應該可以被靜態的檢測出來。

    Multi-Directionality (多向性):轉換是否能夠被雙向的執行,并且不丟失信息。雙向轉換要求關系必須是一個雙射( bijective ),對于某個語言,一個關系的雙射性質能否靜態的計算出來?

    In-Place Transformations (內置轉換(這個詞是我發明的,哈哈!)):內置轉換能否使用數學關系的方式表達出來?它可能會需要一個狀態的概念,一個關系型語言如何支持這種狀態的概念?

    內置轉換也被稱為模型進化,意思就是源模型與目標模型是同一個模型。當執行這種轉換時顯然要復雜一些,因為規則執行的時候是互相影響的,當某一條規則執行時,也許破壞了前面規則定義的一致性。所以可能會需要一個狀態來描述模型元素或者規則的執行情況。目前內置轉換的研究不多。

    Usability (可用性):一個模型轉換語言是否能夠適應多種不同類型的轉換?即使是很簡單的轉換規則,使用關系來表述也許是冗長的。語言能否提供一些語法上的簡化機制?

    目前看來,全部符合以上七點的關系型模型轉換語言還沒有出現, QVT 的規范 [4] 已經出臺,我認為它解決了 Confluence Composition Correctness/Decidability Muti-Directionality Usability 。沒有涉及到 Termination In-Place Transformations 。另外,它也沒有對這些性質做相關的證明。

    總結

    這篇文章的最大貢獻就是提出了那兩個 open question 。并進行了相關的分析。提煉如下:

    第一個問題是:如何定義或者選擇一個適于表達模型轉換規則的關系型語言?它是以某種形式化邏輯做為基礎的,并且具有上述的七個特性。

    第二個問題是:如果定義這種關系型模型轉換語言的執行語義?這里分為兩個子問題,第一是如何檢測模型之間的不一致性;第二是如何使用消解機制來修復模型。

    從去年年底開始使用 EndNote 來管理參考文獻了,這個東東真的不錯啊。現在隨手加參考文獻的感覺真是爽!

    [1]?????????? Wahler, Michael. Formalizing Relational Model Transformation Approaches. Zurich, 2004

    [2]?????????? Krzysztof Czarnecki, Simon Helsen. Classification of Model Transformation Approaches. In: Proceedings of the 18th International Conference, OOPSLA’2003, Workshop on Generative Techniques in the context of Model Driven Architecture. Anaheim, California, USA 2003?

    [3]?????????? Kent, David Akehurst and Stuart. A Relational Approach to Defining Transformations in a Metamodel. In: H. Hussmann J.-M. Jézéquel, S. Cook (Eds.). UML 2002 - The Unified Modeling Language 5th International Conference. Dresden, Germany: Springer-Verlag 2002 LNCS 2460.243-258

    [4]?????????? OMG, MOF QVT Final Adopted Specification. 2005.

    ?

    ?

    ?


    評論

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2006-05-25 17:24 by blueswing
    這片博士論文計劃書能否發給我一份,謝謝!
    dxzhou_nudt@163.com

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2006-05-28 16:56 by blueswing
    已經收到,十分感謝!

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2006-06-06 10:23 by xiaoli9214
    這篇博士論文計劃書能否發給我一份,謝謝!
    xiaoli9214@yahoo.com.cn

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2006-06-23 10:26 by Christine
    您好,這篇博士論文計劃書能否發給我一份,謝謝!
    jasmine_q_t@yahoo.com.cn

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2006-07-04 13:36 by jasmine
    您好,這篇博士論文計劃書能否發給我一份,謝謝!
    wangxy@jlu.edu.cn

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2006-07-07 09:07 by wxb_nudt
    都已經發送,請查收!
    好久不來了啊!應該更新了!

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2006-07-10 14:45 by fallson
    您好,這篇博士論文計劃書能否發給我一份,謝謝!
    wu_baiqing@yahoo.com.cn

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2006-09-07 12:35 by 三木
    您好,這里的東西真是新啊,在別的地方都看不到,看了你的評論,感覺收獲挺多的,能否將這篇博士論文計劃書給我也發一份,謝謝!
    jhs1205@163.com

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2007-07-27 22:42 by 太陽神
    你好!
    你分析的太好了 !
    這份計劃書 能否發給我一份?

    謝謝!

    liquandeimll@163.com

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2007-10-16 18:20 by fjj
    很經典的東西

    能否將這篇博士論文計劃書發給我一份

    謝謝!

    nqfjj_1983@163.com

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2007-11-12 17:44 by 張琛
    您好:

    內容很精彩,能否將這篇博士論文計劃書發給我一份

    謝謝啦!

    chenchen.zhang@163.com

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2007-12-18 18:32 by baihai
    您好:

    很需要,能否將這篇博士論文計劃書發給我一份

    多謝了

    bai_hai@163.com

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2008-09-01 19:11 by too81
    您好:
    我正在研究MDA方面的東西,很需要這篇博士論文計劃書,能否發一份給我,不勝感激!
    too81@sina.com

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2009-06-24 15:59 by zxz
    你好,我剛開始研究MDA,看了你的文章收獲很大,能否發一份博士計劃書給我,萬分感謝。
    zxztc@zju.edu.cn

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2012-11-24 12:13 by mcm
    您好,我剛開始研究MDA方面,希望從這篇文章中,得到更多擴展

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2012-11-24 12:14 by mcm
    您好,我剛開始研究MDA方面,希望從這篇文章中,得到更多擴展
    能發給我一份嗎?ydlccm@126.com

    # re: 形式化關系型模型轉換方法的一些觀點  回復  更多評論   

    2013-03-26 11:00 by Syboy
    您好,我現在開始研究模型的轉換及其驗證,希望從那篇博士論文中得到一些靈感,能給我發一份嗎?wnzklwj@163.com
    主站蜘蛛池模板: 亚洲免费一区二区| 亚洲最大av无码网址| 亚洲中文久久精品无码1 | 亚洲a一级免费视频| 亚洲国产精品va在线播放| 大地资源在线资源免费观看| 亚洲欭美日韩颜射在线二| 91成人免费观看在线观看| 久久亚洲国产中v天仙www| 无码国产精品一区二区免费式芒果 | 亚洲一级高清在线中文字幕| 国产在线观看免费观看不卡| 亚洲日本VA中文字幕久久道具| 拔擦拔擦8x华人免费久久| 黄色网址免费在线| 亚洲人成影院在线无码按摩店| 久久精品视频免费| 亚洲成人网在线观看| 成人免费无码视频在线网站| 成人婷婷网色偷偷亚洲男人的天堂 | 亚洲AⅤ无码一区二区三区在线| 一级全免费视频播放| 亚洲电影免费在线观看| 在线观看免费人成视频色| 精品免费AV一区二区三区| 中文字幕中韩乱码亚洲大片| 久久这里只精品99re免费| 亚洲一区二区三区国产精品无码| 精品国产免费一区二区| 一级一看免费完整版毛片| 亚洲狠狠久久综合一区77777| 久久久久免费看黄A片APP| 视频一区二区三区免费观看| 久久被窝电影亚洲爽爽爽| 黄色片在线免费观看| 国产福利电影一区二区三区,免费久久久久久久精| 中文字幕第13亚洲另类| 69天堂人成无码麻豆免费视频| 瑟瑟网站免费网站入口| 亚洲日本在线播放| 亚洲色婷婷综合开心网|