- Gaphor
- ArgoUML
- Dia
- Violet UML Editor
- UMLet
- yEd
- Papyrus
- Modelio
- Further free UML Modelling Software
- What’s the best free UML tool?
Gaphor
Difficulty to use: 1/5Systems: Linux, Mac OS X, Windows
Exports to: SVG, PNG, PDF, XMI
Website: http://gaphor.sourceforge.net
Supports:
- Class Diagram
- Component Diagram
- Use Case Diagram
- Activity Diagram
- State Diagram
- Profile Diagram
- to add a new Attribute to a Class, press Ctrl + e
- to create an aggregate or comosite: create an association, select it, press Ctrl + e
simple, easy to use UML tool | |
Exports to XMI | |
no code generation from UML | |
no code to UML |
simple, light weight uml tool which is good to quickly draw up a uml diagram
ArgoUML
Difficulty to use: 3/5Systems: platform independent (Java Runtime Environment)
Exports to: XMI, PNG, SVG, GIF, JPEG, EPS, PS
Website: http://argouml.tigris.org/
Supports:
- Class Diagram
- Use Case Diagram
- Sequence Diagram
- Collaboration Diagram
- State Diagram
- Activity Diagram
- Deployment Diagram
code reverse engineering (Code to UML): Java, C++, C#, IDL (including relationships)
Code generation from UML | |
Code to UML | |
Exports to XMI | |
UI a bit crowded, harder for beginners |
Uml software with quite a bit of options and functionality. These might overpower a beginner, but if you do have a moment to look through all of it, you get a powerfull free uml modelling tool.
Dia
Difficulty to use: 2/5Systems: Linux, Mac OS, Windows
Exports to: XMI, PNG, PDF, SVG, JPEG (among others)
Website: https://wiki.gnome.org/Apps/Dia
Exports to XMI | |
can create a LOT of different diagram types | |
for many diagrams, not all elements exist | |
no code generation from UML | |
no code to UML |
light weight general purpose diagram tool. I would not recomment it for any serious work/documentation, but it is quite usefull to create any needed diagram quick and dirty.
Violet UML Editor
Difficulty to use: 2/5Systems: platform independent (Java Runtime Environment)
Exports to: PNG, JPEG, HTML
Website: http://alexdp.free.fr/violetumleditor/page.php
Supports:
- Class Diagram
- Use Case Diagram
- Activity Diagram
- State Diagram
- Object Diagram
- Sequence Diagram
Notes:
- Existing classes cannot be moved to new Package and classes added to a package cannot be moved outside of it by drag’n’drop. But you can cut and paste them.
- When creating dependencies for a class inside a package: Click inside the class, not the border of it, otherwise the dependency will attach itself to the package, not the class
- Dependencies cannot me moved after creation
- When double-clicking on a dependency inside a package, the package properties are opened. Right-click on the dependency to select its properties
also works as eclipse plugin | |
no code generation from UML |
light weight uml tool, which is sometimes a bit akward to use.
UMLet
Difficulty to use: 4/5Systems: platform independent (Java Runtime Environment)
Exports to: PNG, PDF, SVG, JPEG, EPS, BMP
Website: http://www.umlet.com/
Supports:
- Class Diagram
- Use Case Diagram
- Interaction Diagram
- State Diagram
- Activity Diagram
- Deployment Diagram
- Context Diagram
Notes:
- attributes, operations, etc. cannot be changed via GUI, but via a custom Properties file (which may be edited directly in the GUI, but you do need to learn the layout of this file, which means reading the documentation)
also works as eclipse plugin | |
no code generation from UML | |
not very user friendly |
This tool offers no functionality which could not also be found in most other UML tools. But it is more difficult to use, so I would not personally recommend it.
yEd
Difficulty to use: 2/5Systems: platform independent (Java Runtime Environment)
Exports to: BMP, EPS, GIF, HTML, JPG, PDF, PNG, SVG, SWF
Website: http://www.yworks.com/en/products_yed_about.html
Supports:
- Class Diagram
- Use Case Diagram
- supports a lot of different diagrams, but only class and use case as far as uml is concerned
- class diagram elements are quite limited. There is no option for interfaces, abstract classes or similar
simple, easy to use UML tool | |
no code generation from UML | |
no code to UML | |
very limited |
It is a nice tool, but as far as UML is concerned, it is too limited for me
Papyrus
Difficulty to use: 5/5Systems: platform independent (Java Runtime Environment)
Exports to: ?
Website: http://www.eclipse.org/papyrus/updates/index.php
Supports:
- Class Diagram
- Activity Diagram
- Communication Diagram
- Component Diagram
- Composite Structure Diagram
- Deployment Diagram
- Interaction Overview Diagram
- Package Diagram
- Sequence Diagram
- Use Case Diagram
- State Diagram
- Timing Diagram
Notes:
- I could not figure out how to use a lot of the functionality. Among others, I was not able to display fields inside the diagram, create a diagram from existing code, generate code from an uml diagram, or even export a diagram.
Code to UML | |
only eclipse plugin (no stand-alone version) | |
code generator is deprecated | |
not very user friendly |
I found Papyrus extremly unintuitive to use, but your mileage may vary. An extensive 60 page PDF documentation exists, so if you have the time and energy you might be able to achive quite a bit with Papyrus.
Modelio
Difficulty to use: 3/5Systems: Linux, Windows, Mac OS X
Exports to: XMI, PNG, BMP, JPG, GIF
Website: http://www.modelio.org
Supports:
- Class Diagram
- Component Diagram
- Instance Diagram
- Activity Diagram
- Communication Diagram
- Composite Diagram
- Use Case Diagram
- Object Diagram
- Sequence Diagram
- State Diagram
- Use Case Diagram
Exports to XMI | |
quite big (compressed 175 MB) | |
no code to UML |
Too heavy weight for what you get (probably because it is based on Eclipse), some functionality (eg Code generation) is not free.
Further free UML Modelling Software
NClassWebsite: http://nclass.sourceforge.net/
Overview:
- quite incomplete (Wikipedia says that even Undo is still missing)
- only class diagram
- code generation from UML
could not test, as it depends on the Microsoft .Net Framework
StarUML
Website: http://staruml.sourceforge.net/
Overview:
- unmaintained since 2005 (but a new Fork called WhiteStarUML exists)
could not test, as it only runs on windows
Umbrello
Website: http://umbrello.kde.org/
Note:
could not test, because kde wouldn’t install
What’s the best free UML tool?
So what is the best free uml tool? It really depends on what you want to do with it.
Personally, for throw-away diagrams I use Dia. For small(ish) UML diagrams I would recommend Gaphor, and if you need a more complex UML tool with a lot of functionality, I would recommend ArgoUML.
As always, you might feel differently, and it cannot hurt to try out more than one tool.
If you know of any more UML modelling software or have an option on one of the uml tools presented here, please feel free to share it in the comments.