What free UML authoring tools do you use and why is it better than others?
ArgoUML - I use it for its simplicity.
Although it's not exclusive to UML, I use Dia. It has the symbols used in most (if not all) of the UML diagrams, but it also supports flowcharts, network diagrams, and a few other things that I've occasionally used as a software engineer.
I tried most of the aforementioned tools so let me state my opinion on it here:
- Dia - an old veteran; builds reliable charts (not just UML) but is rather cumbersome to use (especially if your diagrams get bigger :-( ) almost no restrictions on what to connect to each other, laying out diagrams nicely needs lots of manual adjustment (a serious time killer!), the dialogue boxes are hard to use (e.g. obsolete shortcuts such as alt+O for 'OK' to close it), navigating in a diagram wrecks your nerves with an incomplete endless sheet metaphor (scrollbars only work if one of your objects is out of the viewport; not all the time [like in Inkscape]) etc. etc.;
To sum it up: robust and reliable, but aged (esp. in terms of usability); I used it a lot (and wasted lots of time -rearranging my diagrams).
- StarUML and argoUML - just used them shortly as they only support UML 1.x; someone even wrote their thesis (in German) on StarUML's shortcomings!
- Visual Paradigm - new, intelligent, but the community edition is very limited: you'll get an ugly watermark if you create more than one diagram type per project; you can, however, easily circumvent this by putting all your diagrams into one and cut it up with graphics app later,
This is my clear recommendation; you just save so much time when creating diagrams compared to Dia!
- POPP/POI (Plain Old PowerPoint/Impress) - use your favourite office's graphics app! Dumb to the bones when it comes to what's allowed, but at least the connections flow nicely and aligning objects works like a charm!
Edit: 1/7/2013: The drawing component in Google Docs supports snapping and drawing. Still no "real UML tool", but works good enough and is easily shareable.
- Online tools such as gliffy.com - mostly nice, but no good for any serious work ;-)
- yEd - I just gave it a short try, but it seems as well suited as Visual Paradigm. Give it a try and see for yourself!
- Red Koda - Was recommended on StackExchange in an article asking for UML learning resources; also interesting in a broader sense!
Nota bene: You will find shortcomings (unsupported features, wrong layout etc.) in almost any UML tool you'll use. Thus, IMHO the drawing apps supporting UML shapes or snapping are still the most useful.
There's yuml which is pretty cool as it allows you to create UML diagrams online, with no tools and so easily embeddable in blogs, wikis, emails, etc.
I use Umlet. What I like with this software is that it's a drawing tool only. It doesn't force you to create and maintain a model, and it doesn't try to generate/parse code. Unlike a lot of UML tool I tried, I've always been able to draw the diagram I had in mind (the drawing primitives are quite complete, and they are extensible by code). It works well with my other tools : the text based format is ok for working with my VCS, and the png/svg can be generated using a command line (I use it to automate the build of my doc).
Jude Community is my first choice. Even though they're Astah now, you can still find jude community 5.2 over the web. If you never used I'd give it a try. PS: I personally didn't like StartUML.
Although they share some very common features and even though Jude is not developed anymore, I prefer Jude mostly because of its usability. I've used Jude some years ago for studying and have to work with starUML + VS UML Tool today (company requirement) so I've been an avid user of both tools. I find Jude way more friendly to use. That's why I said: I personally didn't like StartUML. Features compared I don't know how Jude would go, since we use starUML for documentation purposes only and Jude is discontinued. Regards.
It is full featured, open source and regularly maintained.
I also request the readers to visit BOUML Project status - https://stackoverflow.com/questions/3721008/bouml-project-status.
Personally, I like StarUML.
Very full featured and open-source!
From the website:
StarUML is an open source project to develop fast, flexible, extensible, featureful, and freely-available UML/MDA platform running on Win32 platform. The goal of the StarUML project is to build a software modeling tool and also platform that is a compelling replacement of commercial UML tools such as Rational Rose, Together and so on.
I use yEd when the idea/app is in its infancy and migrate up to ArgoUML when it needs more bells and whistles. Liked Visio, to some degree, but not enough to buy
I've used many of the really expensive ones and hated them all. I even resorted to using drawing tools in a number of cases, but that was very limiting and leaves you without many of the benefits of having a UML tool to begin with. Anyways, at my latest company they were using one I never tried, Visual Paradigm. I have to say that it is by far the best I've used. It still has its issues but it is about the only one that I actually like to use. Visual Paradigm does pretty much everything the really expensive tools do but at a miniscule fraction of the cost.
They have a free community edition, that I know is available for non-commercial use. I'm not sure if they limited functionality in any other way. If I recall correctly, you can buy a commercial edition for around $100 bucks. So if you need it for commercial purposes and your employer won't spring for that then I'd really be looking for a new job really quickly.
The only thing we haven't looked into yet is multi-developer support, which all the expensive tools are able to do. But from the web-site it seems like they support it.
I use a licensed version of Visual Paradigm at work. There is a free community edition that should be able to handle most of your basic UML needs.