MOF or EMF, GMF and GEF
For the time being, a very, very interesting proposition exists from the Eclipse consortium around the metamodeling framework.
This project is the GMF (Graphical Modeling Framework) project from Eclipse.
It is a very ambitious project and this GMF project can change totally the modeling tools business.
The foundations are EMF for the meta-modeling (a kind of MOF) and GEF (2-D drawing graphical facilities).
We can look on web, some animated discussions between the different approaches:
- existing tools with a large set of CASES, but with previous meta-technologies (several key actors of existing UML CASE tools vendors like MetaCase)
- New approach for the future based on GMF (IBM Rational, etc…)
Today we can look the requirements, with an evaluation of existing donations like:
- Borland (Together UML CASE tool belongs to Borland)
- IBM (Rational Rose CASE tool belongs to IBM)
- Others contributors with graphs editors generators with a coupling between GEF and EMF.
What is the current GMF’s timeframe?
- The initial GMF project proposal
- First draft of the GMF requirements
- Propositions concerned by a validation by experts like Markus Voelter, known for the delivery of a MDA CASE tool.
MOF and EMF:
In the battle between MOF and EMF, there are some materials to read and so to appreciate and understand the perspectives for each player.
Materials produced by the Pegamento team are very interesting, with for example the Jane DSL editor generator and some papers.
On this url, we can find a serious study of EMF and about a mapping between MOF and EMF and a paper on a Request language for the meta level:
- Anna Gerber, Kerry Raymond, MOF to EMF: There And Back Again, Proc. Eclipse Technology Exchange Workshop, OOPSLA 2003,
. Anaheim , Oct 2003, pp 66-70. USA
- David Hearnden, Kerry Raymond, Jim Steel, MQL: a Powerful Extension to OCL for MOF Queries, Proc. 7th IEEE International Enterprise Distributed Object Computing Conference (EDOC 2003), Brisbane, Sept 2003, pp 264-276
- Keith Duddy, Anna Gerber, Kerry Raymond, Eclipse Modelling Framework (EMF) import/export from MOF / JMI, DSTC Technical Report, May 2003
Eclipse Development using the Graphical Editing Framework and the Eclipse Modeling Framework IBM redbook
The complete list of EMF document exists on the Eclipse consortium web site.
Another IBM's article is an illustration of GEF: Create an Eclipse-based application using the Graphical Editing Framework.
The UML2 project is an Eclipse Tools sub-project and is an EMF-based implementation of the UML™ 2.0 metamodel for the Eclipse platform.
The objectives of this project are to provide a useable implementation of the metamodel to support the development of modeling tools, a common XMI schema to facilitate interchange of semantic models supported by different tools providers.
We can find a good introduction to UML2 with the Getting started to UML2.
The UML2 specifications are published on the OMG web site.
BPEL and process:
BPEL4WS has a defined XSD which can be imported to EMF.
There is no associated notation provided, while mappings exist from BPMN and BPDM. One of these or a proprietary notation could be mapped to the XSD, possibly combining aspects of WSDL to provide a rich BPEL4WS modeling environment.
Business rules have no standard notation, although many examples exist. Furthermore, many rule engine models are possible for implementation in EMF.
GMF project organization:
- Borland www.borland.com
The following companies have expressed interest in the project:
- Adaptive www.adaptive.com
- Anyware Technologies www.anyware-tech.com
- AT&T Global www.attglobal.net
- BEA www.bea.com
- Cognos www.cognos.com
- E-Sim www.e-sim.co.il
- Evolution www.evolution.at
- IBM www.ibm.com
- ILOG www.ilog.com
- InferData www.inferdata.com
- M1 Global www.m1global.com
- Patternset Software www.patternset.com
- Protos www.protos.de
- Real-Time Innovations www.rti.com
- SnapXT www.snapxt.com
- Sybase www.sybase.com
- University of
www.univ-nantes.fr/ Nantes www.uvic.ca Universityof Victoria
- Versata www.versata.com
- Web Methods www.webmethods.com
- Xactium www.xactium.com
Known contributors on GMF?
- Borland www.borland.com
- IBM and Rational Software
- M1 Software
Technical Universityof with the Tiger project Berlin
with the Generic Eclipse Modeling System (GEMS) Vanderbilt University
- The Visual Editor project
- JANE model-specific editor generator
- eDiagram sample from the GEF team
- Xactium's XMF-Mosaic
- Microsoft's Domain-Specific Language (DSL) Tools
Position of some existing CASE tools vendors:
From MetaEdit guru of Metacase, we can read other points of view related to the scope of the GMF project:
- On the Juha-Pekka blog on DSM, you have to read the following blogs:
- Is UML 2 taking SD further? April 14, 2005
- MOF as a metametamodel? March 16, 2005
- Unified Modeling Language vs. Domain-Specific Modeling Languages? March 03, 2005
- On the Steven Kelly blog on DSM, you have to read the following blogs:
- Scott Ambler: OMG not doing a good job May 04, 2005
- XMI, MOF and MetaEdit+ May 03, 2005
- Microsoft says using its DSM tools is a "massive amount" of effort March 23, 2005
On the MetaCase web site, there are several materials to read too:
- One Dr Dobb article, with a comparison between Eclipse and MetaEdit+ for DSM (Domain Specific Modeling).
In this article written by the MetaCase CTO Steven Kelly, he compares Eclipse EMF & GEF with MetaEdit+ as ways to implement domain-specific methods. One hour's work in MetaEdit+ reproduced Eclipse's own small sample application, which runs to 10,000 lines. At 50 lines of code a day that would be over a year's work, making MetaEdit+ an incredible 2000 times faster.
· In another paper, Steven Kelly did MetaCase feeling on a Comparison of Eclipse EMF/GEFand MetaEdit+ for DSM (Domain Specific Modeling).
I think it is quite evident that a new generic framework like GMF will be more limited, in the first deliveries, than a mature framework like MetaEdit+ where a lot of applications already exist. People have to compare things they are comparable.
For people wanted to go more in depth with MOF, they have to read the paper on melo written by Unisys guys and published by IBM web site:
This paper presents the work Unisys has done to create a central enterprise architecture (EA). This work includes defining a standard core EA modeling language supported by the EA repository, and building transformations between tool-specific EA models to the standard core EA language.