UML/模型工具Kermeta、Tefkat、QiQu、UMT-QVT介绍

以下为你介绍的UML/模型工具都可用在Linux系统上:Kermeta(元数据转换框架)、Tefkat(适合于Model-Driven开发与数据转换)、QiQu(支持MDA与MDSD方法的框架)、UMT-QVT(用于模型转换和从UML/XMI模型生成代码的工具)。

1、Kermeta(元数据转换框架)

Kermeta是一种面向模型的语言填补了元语言如MOF、EMOF和Ecore的空白,这些元语言主要是集中于结构上的规范说明没有内置支持对行为的定义。Kermeta是作为EMOF的一个扩展进行构建对它添加了可执行的语义。Kermeta能够模拟元模型,作为一种模型转换语言。Kermeta完全与Eclipse相集成提供了一个解释器,调试器,编辑器,prototyper和各种各样的导入/导出转换功能。

Kermeta 3(K3)是一种在Xtend编程语言之上构建的动作语言,主要用于实现Ecore元模型的执行语义。具体来说,K3允许使用简单的注释重新打开从Ecore元模型生成的类,以便编织新的功能和操作。

K3的主要功能包括:

可执行的元模型:使用K3,可以将新方法及其实现插入现有Ecore元类中。这些方法以解释器的形式定义相应元模型的执行语义。

元模型扩展:可以使用完全相同的机制以非介入方式扩展现有的Ecore元模型并插入新功能(例如,属性)。

完全Java兼容性:K3文件是纯Xtend文件。因此,K3文件最终被编译为纯Java代码。这意味着Java代码和API可以在K3文件中使用,反之亦然。

与Melange兼容:

Melange是一种语言工作台,支持语言扩展,编写和互操作性。在Melange中,语言设计人员可以定义其DSL的语法和语义,并使用高级运算符将DSL扩展和组合在一起。Melange依靠Ecore来定义DSL的抽象语法,并依靠K3来定义其操作语义。

下载地址:http://diverse-project.github.io/k3/

2、Tefkat(适合于Model-Driven开发与数据转换)

Tefkat是一种新型的宣告式模型转换语言适合于Model-Driven开发与数据转换。与XSLT不同,Tefkat有一套简单而且类似于SQL的语法,专门设计用于开发可扩展和可重复使用的模型转换规范。它利用高级Domain概念而不是直接操作XML语法。

Tefkat实现了适用于模型驱动开发(MDD)和数据转换的最新声明式模型转换语言。它作为Eclipse插件实现,该插件利用Eclipse建模框架(EMF)处理基于MOF,UML2和XML Schema的模型。

下载地址:http://tefkat.sourceforge.net/

3、QiQu(支持MDA与MDSD方法的框架)

UML/模型工具Kermeta、Tefkat、QiQu、UMT-QVT介绍

QiQu是根据Eclipse Public License-v 1.0发布的。

QiQu是一个支持MDA与MDSD方法的框架。它基于把UML(XMI文件)模型转换成源代码(Java、C#、Cobol等)的思想。可以利用QiQu开发自己的生成器,你可以依据你的系统设计来把模型转换成自己选择的代码。

由于QiQu高度依赖XML,因此您不仅可以从XMI(表示UML)转换为源代码,还可以从任何XML格式转换为其他任何格式。如果QiQu的转换功能不符合您的要求,则可以轻松创建其他功能,即将转换结果写入数据库或将UML-Model的信息与SQL-Query的结果合并。

下载地址:http://www.aloba.ch/qiqu/home_en.html

4、UMT-QVT(用于模型转换和从UML/XMI模型生成代码的工具)

UMT-QVT是一个用于模型转换和从UML/XMI模型生成代码的工具。UMT-QVT提供了一个可以加入新生成器的平台,生成器可以用XSLT或Java实现。

下载地址:http://umt-qvt.sourceforge.net/

注明

以上就是UML/模型工具Kermeta、Tefkat、QiQu、UMT-QVT的介绍内容,这些UML/模型工具都能使用在Linux操作系统中。

栏目相关文章