Saturday, July 26, 2008
 

UML Frustrations

Today I had to work with UML models again - after a long time of working with domain specific meta models. I had to write a code generator to generate C++ code from a UML model (that was very C++-specific).

And although I was using a decent UML tool (MagicDraw 15), it didn't work. I couldn't even read the exported XMI into Eclipse/oAW, since the exported XMI contained <, > and & characters in model element names (C++ generic types, reference attributes, etc.). The Eclipse UML2 XMI Parser (actually, it was the underlying Xerces) failed.

Now, I am not yet sure who to blame (MagicDraw, Eclipse UML2, the Rose importer from which the MagicDraw model was built), but one thing is clear: as soon as you touch UML/XMI, you run into those damned tool integration problems!

It is really frustrating: you get up early in the morning, motivated to work on the stuff, and you can't even read the model exported by a (decent, I thought) UML tool.
 
Comments:
I agree that XMI is horrible but I wonder what your preferred model exchange format for DSL models is. I have to admit, though, that I haven't worked with EMF/Eclipse, yet - so probably there are already standardized formats in place.
 
There's no excuse for MagicDraw to export invalid XML -- so at least it's pretty clear who to blame.

Not that this helps you in any way, of course :-)
 
I had to use UML for one of the projects I did.
I read entire UML2 Super structure specs .
Suppose you have to say "My car is Red in color in UML format".
UML will say "There is a Universe, You have millions of Planets in Universe, Among millions of planets u ve EARTH, Earth ..............."
It goes on and on. But ultimately it will not tell u "Your car is red in color".
This is how UML is. It will never let u tell things quite easily.
My friend have fun working around with UML. :)
 
Andreas wrote a nice post about this,
The mess called XMI (XML Metadata Interchange)
 
Agree xmi is a mess, and magicdraw shouldn't be exporting invalid xml.

Sometimes though it's comforting to know we still have sed, awk and perl :-)
 
Post a Comment

<< Home

back to voelter.de

ABOUT ME
This is Markus Voelter's Blog. It is not intended as a replacement for my regular web site, but rather as a companion that contains ideas, thoughts and loose ends.

ARCHIVES
December 2005 / January 2006 / February 2006 / March 2006 / April 2006 / May 2006 / June 2006 / July 2006 / August 2006 / September 2006 / October 2006 / November 2006 / December 2006 / February 2007 / March 2007 / April 2007 / May 2007 / June 2007 / July 2007 / September 2007 / October 2007 / November 2007 / December 2007 / January 2008 / February 2008 / March 2008 / April 2008 / May 2008 / June 2008 / July 2008 / August 2008 / September 2008 / October 2008 / November 2008 / December 2008 / January 2009 / February 2009 / March 2009 / April 2009 / May 2009 / June 2009 / July 2009 / August 2009 / September 2009 / October 2009 / November 2009 / December 2009 / January 2010 / February 2010 / April 2010 / May 2010 / June 2010 / July 2010 / August 2010 / September 2010 / October 2010 / November 2010 / December 2010 / January 2011 / March 2011 / April 2011 / May 2011 / June 2011 / July 2011 / October 2011 / November 2011 / December 2011 / January 2012 / February 2012 / October 2012 / January 2013 /

FEED
You can get an atom feed for this blog.