初探MDA模型转换

    因为想做MDA方面的研究,想找到一个研究点。所以最近一直在看关于MDA方面的资料,主要是OMG官方网站上的一些说明文档,都是英文的,看得我头大。看累了就去百度上搜索一些中文方面的论文,偶然看到一篇名为《一种模型转换的编织框架》的论文,感觉比较不错,拿来与大家分享一下。

     这篇论文中提出了一种基于QVT的模型转换编织框架QMTW,野心很强大,想成为一个通用的模型转换语言准则。不过就是不知道能不能坚持走下去。毕竟QVT也在摸索前进中。

     文中提到我比较感兴趣的有以下几个方面(主要是可以拿以下几个方面做文章)。

     1)模型编织方法:第1种类似于传统的AOP方法,在模型中引入model aspect,model pointcut和model join point,把转换规则写入一个模型编织定义文件,然后用model weaver读入源模型和编织定义文件,从而生成目标模型(参考文献《“Weaving” MTL model transformations》);第2种是将模型转换规则表达为有类型的模型元素连接,连接的类型代表了这种连接的语义,连接之间通过“联合”关联起来,这些联合表达了连接之间关系的语义(参考文献《AMW: A generic model weaver》)。

    2)一个模型转换方法应该具有如下功能:1) 访问源模型;2) 定义模型转换规则;3) 执行模型转换;4) 生成目标模型。

    3)用OCL描述约束。

    本来想偷懒,觉得OCL可有可无,但是看到一些对于模型转换的论文,尤其是PSM转换到代码这一块OCL显得尤为重要。

    唉继续看OMG的文档。

posted @ 2012-07-11 21:55  天子波波  阅读(466)  评论(0编辑  收藏  举报