There are literally hundred of UML tools. So, no way to even try to look for any complete comparison among them. Instead, I’ll aim to give you links to the most relevant tools (at least in my opinion) grouped in a number of different categories. I also maintain a twitter list of UML / modeling tools that could be useful in your search.

But before we start, let me give you my advice when choosing a UML2 tool: think carefully what you need the tool for!. There is no one size fits all UML tool. A UML tool with strong code generation capabilities may not offer a good collaborative modeling environment or be too strict to be used for drawing some informal models during the early stages of the development process.

After this word of caution, let’s start with our lists of UML tools (remember that if you feel overwhelmed and want some UML pro help, you can always check our consulting services).

There is no one-size-fits-all UML2 tool. Think carefully about what you need the tool for (documentation?, code-generation?, early design?...) and then look for a tool that excels at that Click To Tweet

My top five all-purpose UML tools

In no particular order, these are the five tools I’d start checking first. I’ve “played” and liked all of them

  • MagicDraw: I love the usability of MagicDraw. But I even like more its strong UML execution and simulation capabilities. NoMagic (the company behind MagicDraw) was recently bought by Dassault Systems .  As a result, we can expect MagicDraw to become even better at modeling for systems engineering.
  • Papyrus UML. It’s the “de facto” UML modeling tool for the Eclipse environment. Free and open source, it’s your go-to tool if you are an Eclipse user or need to integrate your modeling tool with other Eclipse-based tools as part of full development pipeline. While Papyrus is for sure not the most simple and intuitive tool out there, it is making good efforts in adapting its interface to the user profile and needs (e.g. see the Papyrus for Information Modeling or the Papyrus for real-time specializations).
  • Modelio. A very powerful tool organized as a core open source modeler to be extended by premium (mostly commercial) modules available in the modelio store. This allows you to adapt and evolve your modeling needs. For instance, you can start by modeling the system for free and then decide to buy an extension to be able to generate automatically its implementation in C#.
  • ArgoUML. Ok, now you’ll think I went nuts. Yes, I agree, ArgoUML is one of the ugliest UML tools you’ve ever seen and has not been updated at all in the last few years. But ArgoUML wins them all in the “sentimental UML tool” category. It was the first UML tool I used and they did an excellent job at a time where there were basically no free / open source UML tools available. I believe ArgoUML deserves some credit for that!.
  • StarUML: If Grady Booch itself endorses it (see below), StarUML had to make it to the top 5. This is your best option if you’re looking for a quick, easy-to-use, simple and reasonably cheap UML modeling tool.

Btw, if I wasn’t so sentimental (as I say above, the only reason why ArgoUML is on the list), Enterprise Architect would also be on the top 5. It’s also a great tool with a greater emphasis on information / business / strategic modeling aspects than the others.

 

Textual UML tools

Sometimes old plain text triumphs over nice cool graphics. If you think graphical UML editors are too slow or cumbersome, there are plenty of textual UML tools available (and some of them rather successful).

All textual UML tools offer some kind of (mostly) simple language to describe your UML class, sequence, activity ,… diagrams. You can use this textual UML description to store and compare your models but you can still visualize teh resulting diagram since all of them are able to automatically display the corresponding graphical UML diagram from its textual description.

Wanna know more? see our complete list of textual modeling tools.

Executable UML tools

Executable UML (check the new Executable UML standards fuml and Alf) aims at defining UML models with a behavioral specification precise enough to be effectively executed. In its purest state, Executable UML eliminates the need of programming the software system.

Several executable UML tools
are now available. Check the full list of Executable UML tools we have discovered so far!.

Online UML tools

Web-based UML tools are the fastest growing market in the UML tools segment. Not really a surprise, we are seeing the same trend everywhere (e.g. cloud-based programming IDEs).

To keep up with the pace of new tools popping up in this UML tools area, we have a dedicated page to cover the top online UML modeling tools (also including web-based tools for ER and BPMN diagrams)

Eclipse UML tools

Eclipse users have Papyrus (mentioned above) to define UML, SysML,… models. But there are other good alternatives as well. Especial mentin to UML designer built with Sirius (a framework to create your own customized modeling environment).

You can find other Eclipse UML2 compatible tools (but take into account that the list is outdated).

Free and Open source UML tools

If you are only interested in free / open source UML tools, then you’re lucky!. Many of the tools mentioned above are open source or have at least a free plan. Price is not an excuse for not learning UML!

And if you need yet more suggestions, I’ll give you one more. Try UMLet.