Umple – create UML models textually

Umple is an open source model-oriented development technology for incorporating textual UML constructs in programming languages, code generation or pure UML modelling. It allows developers to embed modelling concepts (e.g. UML associations, state machines), patterns, generation templates, and other abstractions in traditional code, and vice versa. Umple can also be used to create UML class and state diagrams textually.

Umple generates high quality code for Java, C++ and PhP, as well as diagrams, metrics and many other artifacts.

“Umple” derives from “UML Programming Language”, “Simple” and “Ample”.

Umple is available as a Jar file so it can be run from the command line, and as an Eclipse plugin.

Features include:

  • Create UML models textually – tools that allow you to edit the model textually (and see changes appear in a UML diagram) or to edit a UML diagram (and see changes appear in the textual code).
  • Add UML modeling constructs directly into your programs, when you are programming in Java, PHP, C++ or Ruby.
  • Generate high quality code from UML models.
  • Incorporates various features not related to UML, such as the Singleton pattern, keys, immutability, mixins and aspect-oriented code injection.
  • Fully supports Java, most aspects of PHP, many aspects for C++, and some aspects for Ruby.
  • Output languages: Alloy, Cpp, Ecore, GvClassDiagram, GvClassTraitDiagram, GvEntityRelationshipDiagram, GvStateDiagram, Java, Json, NuSMV, Papyrus, Php, RTCpp, Ruby, Scxml, SimpleCpp, SimpleMetrics, Simulate, Sql, StructureDiagram, Test, TextUml, USE, Uigu2, Umlet, Umple, UmpleSelf, Violet, Xmi, Xtext, and Yuml.
  • Cross-platform support – runs on Linux, Mac OS X and Windows. It’s a Java application.

Support: Manual, FAQ, Wiki, Mailing List, GitHub, Facebook
Developer: Cruise Group in the Department of Electrical Engineering and Computer Science, Led by Timothy Lethbridge at University of Ottawa
License: MIT License

Umple is continuously tested and built at the University of Ottawa using CruiseControl.


Return to Unified Modeling Language Tools Home Page

Make a Donation
Click the button to make a donation via flattr. Donations help us to maintain and improve the site. You can also donate via PayPal.

Read our complete collection of recommended free and open source software. The collection covers all categories of software.

The software collection forms part of our series of informative articles for Linux enthusiasts. There's tons of in-depth reviews, alternatives to Google, fun things to try, hardware, free programming books and tutorials, and much more.
Share this article