EclipseUML 2008 versus the Model Development Tools project
In this section you will have a look at the differences between the
EclipseUML 2008 and the Model Development Tools project metamodel.
The Model Development Tools project is a
subproject of the Eclipse Modeling Tools.
The Eclipse Modeling Tools is
a package which contains a collection of Eclipse Modeling Projects.
EclipseUML 2008 is the new Omondo MDA architure for Java modelers.
Eclipse modeling project and EclipseUML 2008 therefore share the same
xmi 2.1 metamodel (RSA or Borland
are also using the same metamodel).
use totally different UML metamodel approaches.
- Model Development tools
use small metamodels for each diagram.
- EclipseUML 2008 uses
a project metamodel composed by one to many diagrams.
There is no real valid technical reason for not using the full
project metamodel approach (more information is available at: http://www.ejb3.org/UML_diagrams.html
If you work at project level then you can model larger and more
diagrams inside your projects because you can:
This is important in order to cover the complete project modeling cycle
(more information on the MDA Development cycle is available at: http://www.forum-omondo.com/documentation_eclipseuml_2008/development_cycle.html
- use the same metamodel element in different diagrams or packages
- add modeling logic and interaction between different elements
The following areas are covered:
We have downloaded the two following solutions for the test:
- metamodel information
- dynamic modeling
- Advanced JEE Modeling
1. Metamodel information
The Model Development Tools
project work and provide metamodel
information for each diagram but doesn't have a full project metamodel.
All diagrams are saved inside a non physical package which has no real
relation with the xmi.
It is therefore impossible to model packages or drag and drop elements
inside a package.
For example the following example shows one project with two packages P
It is possible to use the project explorer to open the default.uml file
and see UML elements inside, but if you open the xmi editor then no
package is created.
EclipseUML 2008 allows full
project modeling of multiple diagrams.
This is important in order to model complex applications and reuse
existing metamodel elements in more than one diagram.
What is possible
with EclipseUML 2008 model structure and not with the Model Development
- All diagram which are saved inside the package explorer are
automaticly saved inside the same package in the xmi model
- Create package in the xmi editor and see it in the UML Editor
- Nested package modeling and logic
- You can drag and drop elements inside packages.
- Create UML package not related to Java directly at the src root
using the package diagram (see
more on UML package diagram )
- Model multiple project
- Include legacy file (coming from Jar files) in your model
2. Dynamic Composite Structure and Class
The Model Development Tools project has no java integration and no
metamodel dynamic modeling.
It uses EMF export to create a UML 2.1 export for each diagram.
EclipseUML 2008 is a fully dynamic modeling tool having live java and
It allows Java or MDA modeling inside the same project and the use of
A good example is the composite structure diagram interaction with the
Below is EclipseUML 2008 dynamic modeling of a Composite Structure
diagram with a Class Diagram
We have decided to model the internal strucure of a classifier (e.g.
Advanced Java EE Modeling
This is the composite structure diagram
reverse showing the classifier internal structure.
You can notice that the mutlplicity information is
displayed (e.g. 1 to * multiplicity).
We are now including an interaction
point to other parts of the system by adding addtional information in
the composite structure diagram.
This information is live synchronized in the class diagram (e.g.
The CarStock JEE Project Example (more JEE oriented example for
creating glue between business, persistence and presentation layers) is
also an other example of the advantage of working at project level.
See the full project example and download it inside your Eclipse 3.4