Eclipse EMF与OMG MDA标准有多大关系?

时间:2013-02-17 15:42:01

标签: mda model-driven-development mde

我正在寻找一种新的MDA工具来尝试建模和代码生成。这不适用于任何与工作相关的项目,但用于测试目的。直到现在我才使用Merode方法(使用jMermaid进行建模和伴随的代码生成器)但是想尝试新的东西。

由于EMF集成在Eclipse中,我认为有很多积极的理由可以尝试。但在阅读了一些文档和在线文章之后,我想知道它采用了多少OMG MDA标准以及它没有多少。

例如,我找到了以下文字

  

另一方面,如果你已经接受了建模的想法,甚至模型驱动架构(MDA)的大图3,你应该把EMF看作是朝这个方向发展的技术,但更多缓慢而不是立即广泛采用。您可以将EMF视为训练轮上的MDA。

on http://www.informit.com/articles/article.aspx?p=1323360&seqNum=2

但是,我无法找到一份简明的清单,列出了OMG标准的哪些要点已经实施,哪些要求被忽略或解释不同。有人可以帮忙吗? (如果还有其他更多推荐的工具,我总是乐于接受建议。)

3 个答案:

答案 0 :(得分:2)

关系很少。 EMF是一个用于创建(元)模型的框架,具有非常基本的代码生成功能(基本上只是Java直接翻译)。 EMF的目标不是成为MDA框架,而是成为构建模块,其他工具可以构建更复杂的解决方案(例如,检查开放式的Eclipse Acceleo工具)。

MDA只是一种哲学。它本身甚至不是一种特定的方法。 MDA指南,即解释MDA的OMG标准文档,只是使用OMG技术进行模型驱动开发的一套原则,但没有更进一步(如果需要,您可能需要检查difference between all these MD* acronyms)。

因此,您可以找到遵循MDA原则的基于EMF的工具,但EMF本身并没有假装这样做。

答案 1 :(得分:1)

EMF对应于简化的OMG的MOF实现(http://www.omg.org/mof/),提供表达自定义元模型和生成java组件以实例化模型的工具。

MDA是一种特殊的模型驱动理念,基于几种模型(CIM,PIM,PSM ......),旨在提供一种从独特的功能模型(PIM)定位多种技术架构(PSM)的方法)。

您可以将EMF用于任何模型驱动的哲学MBE,MDE,MDD或MDA。它是基本构建块,允许您定义自己的元模型和模型。简单地说,EMF提供模型,您可以将它用于任何模型驱动的方法,包括MDA。

答案 2 :(得分:0)

在EMF常见问题中,有问题"What is the relationship of EMF to OMG MDA?"表示

  

"基本上EMF 支持使用模型作为输入的关键MDA概念   开发和集成工具,产生多个   编程语言(Eclipse EMF本身的Java)或数据   交换格式(XML)表示。"