Unified Modeling Language (UML) is a visual language for communicating software design, architectures, workflows etc.
Traditionally commercial Computer-aided software engineering (CASE) tools are abundant on the Windows platforms, with ArgoUML being the only open source UML tool back in day.
There are three categories of CASE tools. First up is the a graphical tool with stencils supporting UML syntax, a glorified Microsoft Paint if you will. The second is the traditional CASE tool with reverse engineering, round-trip development and team collaboration. Last but not least, CASE tools in the clouds. These are hosted UML tools for drawing and often have integration with wikis.
The criteria for me for a CASE tool for the Mac are as follow:
- Suitable for start up company, small team
- Agile and fast learning curve
- A desktop application
- Simple to use
- Includes the basic diagrams
- Uses UML standards, not stencils
- No need to use Wine, Cross-over, Parallel or VMware to run the tool
If I used Windows…
My CASE tool of choice traditionally is Enterprise Architect by Sparx System. It matches most of the criteria with added flexibility catering for larger teams, with model check-in and check-out, feature matrices, linking features to requirements to implementation and even to sprints. It is both an excellent Scrum tool and project management tool for large enterprise teams. The only downside to Enterprise Architect is that it runs in Windows and requires virtualisation to run on the Mac.
CASE tools summarised
Mac CASE tools I have tested out are Visual-Paradigm, Poseidon for UML, ArgoUML, Omnigraffle, and Astah community edition.
Visual-Paradigm, as the name suggests, is quite big on the visuals. It is a solid UML tool supporting wide variety of diagrams outside of UML. For example, Mindmap is supported by Visual-Paradigm.
Poseidon for UML is traditionally built on ArgoUML, the open-source UML project. It is clean, well supported, simple and quick to use. It follows the UML standards to its fullest and thus your models can be exported out to another tool such as Rational Rose or Enterprise.
ArgoUML is an open source UML project. It is also relatively simple to get going and it maintains the classic Java Swing look and feel.
Omnigraffle is similar to Visio – a graphical tool for drawing. UML is supported as stencils.
Astah is another UML tool, simple to get going and can be upgraded to a business edition for added features such as collaboration.
For a cloud-based solution, Gliffy is pretty decent. It came with our Atlassian OnDemand setup and it works beautifully with Confluence. A special mention to websequencediagram.com for providing such a cool idea.
And the winner is….
So which one to choose? For us, a start up company with small teams, I have chosen Astah community edition for its simplicity and cost with Poseidon coming in close second. Astah is fast and easy to get going. It can be extended to suit team collaboration if needed. If we ever become the next Google, I will consider Enterprise Architect again and live with VMware running Windows XP.