welcome to the world of…

Looks like a small bulb used to indicate something unusual, like a malfunction.

MagicDraw – UML tool

Filed under: Uncategorized — Tags: , , , — admin @ 2009-04-14 21:16

Good (meaning many features and userfriendly) and cheap UML modeling tool is a hard candy to find. I need at least following stuff:

  • use case, class, activity and sequence diagrams
  • not just dummy diagrams but also some semantics
  • ability to run under Linux

First I started looking in my Ubuntu distro. I found:

  • Dia – great generic diagramming tool but with no semantics.
  • Umbrello – basic UML semantics but IMHO only for kids 🙂
  • Gaphor – I didn’t try it, it depends on Zope packages (why?!?) and I don’t want the Zope.
  • ArgoUML – Yeah! What a tool! Lots of diagrams, lots of choices, nice UI. I like it. But.. wait… It has no undo/redo? Okay, no big deal, I have to be careful. It has not cut/copy/paste?? No way!

After the disapointment with ArgoUML I decided to look into commercial waters. Few bucks cannot kill me. Tools like Borland Together or IBM Rational Rose are too expensive. I need something with good power/price ratio.

  • Poseidon – commercial version of ArgoUML. Has undo/redo, limited cut/copy/paste, better UI than ArgoUML but not so good to pay for it.
  • Jude – In addition to the basic UML diagrams it has ERA diagrams, mind mapping, forward/reverse engineering of Java code…
  • MagicDraw – my final choice.

Why MagicDraw?

Finalists were Jude and MagicDraw. Jude has more “big” features but is also more expensive ($280) and it is subjectively less userfriendly. MagicDraw won because:

  • It has fancy UI and nice diagrams 🙂
  • It’s cheap – “Personal Edition” costs $149.
  • There is also a free “read-only” edition.
  • Keyboard control.
  • It has tons of (in)significant features like fullscreen, “jumps” on crossing lines, selection mode toggle (complete and partial coverage), formatting, nifty zoom/preview window, etc…

But it has also a few cons:

  • I didn’t find any “non-exact-UML” elements like a circle, standalone line or bezier curve. There is only something called “rectangular shape” and “separator” which is only a horizontal line.
  • Huge uncompressed saved files. I’m saving into uncompressed because of SVN – simple diffs.
  • I will find more later…

Despite those inperfections I have to admit that MagicDraw is and excelent tool.

Update, 20.4.2009

I don’t know how could I miss it but I found a very similar program to the MagicDraw: Visual Paradigm for UML. Basic UI is almost the same as MagicDraw. Same toolbars, same windows, the resemblance is huge. It has a quite good pros:

  • cheaper, “Modeler edition” costs $99
  • free “read-only” edition
  • “Modeler edition” includes more features than MagicDraw’s “Personal edition” – requirements management, ERD, …
  • free-form elements – lines, circles, polygons…

It has also cons:

  • Less user-friendly:
    • I miss the keyboard controlled new elements selection.
    • May be a bug but I created and activity control flow line and when I started typing guard with “[” then nothing happened. Only after a letter it started to edit the name.
  • JRE is bundled in the installation (I think it is a con)
  • Linux version has only Metal look and feel and the font size is needlessly big.
  • Workspaces – I don’t want a full IDE. I want an UML tool where I will save a single file with my UML model and not a lots of garbage around.
  • Diagrams are not very nice (at least bad font).
  • missing tiny things (e.g. matrix swim lanes in activity diagrams)
  • No project-specific symbol properties.
  • It can’t save in an uncompressed format – not suitable for Subversion.

I think I will stay with the MagicDraw.


  1. Hello,

    Thank you for your review of UML tools, I was helping a customer look for this. Do you still use the same tool ? What has been your experience after a few months with MagicDraw regarding bugs and support ?

    Thanks for sharing!

    Comment by Fabian Rodriguez — 2010-04-08 @ 23:53

  2. Hi!

    I’m still using MD. It is very intuitive, configurable and efficient. No need for support. Great tool. The only thing which is bugging me is that it sometimes freezes for a little time (a second or two) especially when I want to start typing into the diagram. I got used to it. Maybe it is only a matter of Java’s garbage collection configuration.


    Comment by admin — 2010-04-10 @ 20:46

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.