开源特定领域工具框架助力OSS的MDD
1. MDD工具框架比较研究
在模型驱动开发(MDD)中,元建模框架起着至关重要的作用。这里将对主要的元建模框架进行深入探讨,评估它们是否符合相关要求和流程。研究的框架包括两个研究工具:通用建模环境(GME)和领域建模环境(DOME);两个商业工具:MetaEdit+和XMF - Mosaic;以及开源框架项目AndroMDA。
1.1 各框架概述
- GME :支持基于UML类图符号的专有元建模语言MetaGME,用于创建新的特定领域语言(DSL)。元模型和模型以XML格式表示和导入/导出。MetaGME允许定义符合OCL 1.4的元模型级约束,还能在模型级定义OCL约束。不过,它不提供显式的模型到模型转换支持,代码生成功能受限,只能作为API插件集成自己的生成器。最近,GME被纳入了一个名为通用Eclipse建模系统(GEMS)的新Eclipse项目。
- DOME :有自己基于类似UML概念的专有工具规范语言。它能定义抽象语义,但对具体语义的支持较弱,图形外观不能可视化编辑。DOME不支持OCL语言,但通过Alter语言提供对某些常用元模型级约束的内置支持,还允许开发者基于定义的领域模型构建代码生成器。该工具不支持模型转换,模型和元模型也用XML语法表示。
- MetaEdit+ :包含多个组成MetaEngine的工具,提供一个能减少开发者工作量的框架。它实现了一种名为GOPRR的元元语言,允许定义概念和图形属性。从DSL定义可自动生成建模工具,包括绘图编辑器、浏览器