UML stands for unified modeling language and it is used heavily when designing computer systems large and small, it looks like boxes and arrows with some text.

It is an open standard that isn't controlled by any specific vendor this means that you can learn it easily.

UML is an industry-standard, graphical language for specifying, visualizing, and constructing software systems' artifacts.

What is UML?

​​UML unified modeling language combines techniques from data modeling business, object modeling, component modeling, and can be used throughout the software development lifecycle.

Such services don’t have to cost huge amounts of money since open source solutions are available.

16 Open Source UML tools

1- Umple

Umple

Umple is an open-source modeling tool for software developers and students to make UML in the fastest way in their classroom. Its works online as an eclipse plugin and as a stand-alone command-line Jar.

Umple is a model-oriented programming technology that adds UML associations and state machines to Java and PHP. It is used to draw UML diagrams, embeds models in code, and generate a complete system.

It is licensed under MIT license.

Features:

  1. Simple
  2. UmpleOnline has been very stable.
  3. It makes you model in UML textually.
  4. saves time
  5. You can generate top quality code from class diagrams and state diagrams
  6. You can add a little bit of Umple code into an existing Java, PHP, or Ruby system
  7. Umple works like a pre-processor
  8. You can add just a small sprinkling of Umple into your code
Umple: Open-source UML editor
Umple is a cross-platform open-source model-oriented programming system that enables the developer to create UML models without breaking a sweat. Umple works online as a


2- UMLet

UMLet

UMLet is an open-source UML tool with a simpler user interface for fast UML diagrams.

It is licensed under GPL-3.0 License and written in JavaScript and Java. It runs stand-alone or as an Eclipse plug-in on Windows, OS X, and Linux.

Features:

  1. Draw UML diagrams fast
  2. Export diagrams to eps, pdf, jpg, SVG, and clipboard
  3. Share diagrams using Eclipse
  4. Create new, custom UML elements
  5. Build sequence and activity diagrams from plain text
GitHub - umlet/umlet: Free UML Tool for Fast UML Diagrams
Free UML Tool for Fast UML Diagrams. Contribute to umlet/umlet development by creating an account on GitHub.

3- Modelio

modelio

Modelio is an open-source collaborative Business, software modeling environment that is used by code developers, business architects, software architects, system architects, workgroups, and analysts.

It has a flexible extension mechanism with modules, a wide range of existing modules, and you can develop your own modules.

It is licensed under the GPL v3 license

Features:

  1. Simple UML Modeler interface
  2. BPMN support integrated with UML
  3. Java code generator
  4. XMI import/export
  5. HTML model publishing
  6. Extension system
  7. Scripting language support (Jython)
  8. Workgroup
  9. Federated repositories and Portfolio Management
  10. Document generation
  11. Requirement Analysis integrated with models
  12. Code generation (C++, C#, Java, SQL, ...)
  13. TOGAF, UPDM, SysML,
  14. Web Analyst: Web-based requirement analysis integrated with Modelio
GitHub - ModelioOpenSource/Modelio: Modelio is a modeling solution offering a wide range of functionalities based on the main standards of enterprise architecture, software development and systems engineering.
Modelio is a modeling solution offering a wide range of functionalities based on the main standards of enterprise architecture, software development and systems engineering. - GitHub - ModelioOpenS…

4- diagrams.net/draw.io

draw.io

diagrams.net/draw.io is an open-source technology, a professional diagramming tool for building diagramming applications.

With it you can share your diagrams with everyone, it comes with powerful features.

It is licensed under Apache-2.0 License and written in JavaScript.

Features:

  1. you can export images of diagrams directly from the lightbox viewer
  2. Move shapes forwards and backward on the drawing canvas
  3. An online whiteboard for Confluence with draw.io
  4. It comes with template diagrams with previews, subcategories, and search
  5. Draw freehand shapes and annotate diagrams
  6. Embed diagrams in PowerPoint
  7. Use diagrams.net with Google Classroom
  8. Create an interactive diagram and toggle layers with custom links
  9. Embed diagrams into Notion from diagrams.net
  10. Insert a diagram from specially formatted CSV data
GitHub - jgraph/drawio: draw.io is a JavaScript, client-side editor for general diagramming and whiteboarding
draw.io is a JavaScript, client-side editor for general diagramming and whiteboarding - GitHub - jgraph/drawio: draw.io is a JavaScript, client-side editor for general diagramming and whiteboarding


5- JetUML

JetUML

JetUML is an open-source UML desktop application for creating and editing diagrams. It is support sketching, available both as a self-contained application and as a Java archive file.

It is licensed under GPL-3.0 License and written in Java.

Features:

  1. Diagrams can be saved in JSON
  2. Lightweight
  3. you can export to popular image formats
  4. It has the ability of copied to the system clipboard for integration with other tools
  5. It supports class diagrams, sequence diagrams, state diagrams, object diagrams, and use case diagrams
GitHub - prmr/JetUML: A desktop application for fast UML diagramming.
A desktop application for fast UML diagramming. Contribute to prmr/JetUML development by creating an account on GitHub.

6- PlantUML

PlantUML

PlantUML is an open-source component that allows you to write a sequence diagram, use case diagram, class diagram, activity diagram, component diagram, state diagram, object diagram, deployment diagram, timing diagram, and more.

It also supports a wireframe graphical interface, JSON, and YAML data, network diagram, archimate diagram, entity relationship diagram, and more.

The app is licensed under GPL license and written in Java.

Features:

  1. it generates a UML diagram from textual description
  2. Images can be generated in PNG, SVG, Latex format
  3. you can install PlantUML locally
  4. you can run it from the command line
GitHub - plantuml/plantuml: Generate diagrams from textual description
Generate diagrams from textual description. Contribute to plantuml/plantuml development by creating an account on GitHub.

7- StarUML

StarUML

StarUML is a software modeler for agile and concepts modeling for macOS windows and different types of Linux(Ubuntu, Debian, Redhat, fedora).

it is support code generation for various programming languages such as Java, C#, C++, and python, it also has Open APIs

It is licensed under MIT license.

Features:

  1. Compatible with UML 2.x
  2. Support modeling with SysML diagrams
  3. Cross-Platform Support
  4. Auto Update
  5. Retina Display Support
  6. Extension Manager
  7. Model-Driven Development
  8. The data are stored in a very simple JSON format,
  9. Fast Modeling
  10. Dark and Light Themes
  11. Command Palette
  12. PDF Export for Clean Printing
  13. It supports Markdown language
StarUML
A sophisticated software modeler for agile and concise modeling - StarUML

8- Dia Diagram Editor

Dia Diagram Editor

Dia is an open-source program use to draw structured diagrams. With it, you can draw many shapes like UML, flow chart, and more.

Dia is free software released under the GPLv2, and you can download it in windows, Linux, and macOS.

Dia draws your structured diagrams: Free Windows, Mac OS X and Linux version of the popular open source program
Dia is free (open source) drawing software. Sketch your favorite structured diagrams! Windows version available as a free download.

9- Eclipse Papyrus

Eclipse Papyrus

Eclipse Papyrus is a modeling environment and open-source model-based engineering tool used in industrial projects.

It provides editors for all the UML diagrams (Class Diagram, Object Diagram, Package Diagram, Composite Structure Diagram, Component Diagram, Deployment Diagram, Profile Diagram, Use case Diagram, and more).

Features:

  1. Graphical editing tool for UML 2
  2. Fully customizable environment
  3. Define your own graphical, textual or tabular notation.
  4. Filter existing palettes or define your own ones
  5. Support SysML
  6. Real-time Systems modeling.
  7. It has a set of tools for integrating safety techniques
Papyrus
Papyrus


10- Diagramo

Diagramo

Diagramo is an online flowchart software, it makes your work easier.

It comes with a built-in editor and user-friendly features:

Features:

  1. It is FREE and Open Source
  2. It's pure HTML5
  3. With it, you can share and collaborate
  4. Export to PNG, Gif, and JPEG
  5. You can download it and deploy it on your server
  6. Customizable
Flowchart software | Diagram software | Flowchart diagram
A pure HTML5 flowchart software.

11- Gaphor

Gaphor

Open-source UML and SysML Modeling Application For Windows, Linux, and macOS.

Gaphor is a UML and SysML modeling application written in Python and license under the Apache-2.0 license.

Features:

  1. simple stacked user-interface
  2. It comes with a drag-and-drop functionality
  3. It allows the developers to quality visualize highly complex models.
  4. Lightweight
  5. Class support
  6. Export to SVG, PDF, PNG, and XMI
  7. Alignment and snapping option
GitHub - gaphor/gaphor: Gaphor is the simple modeling tool
Gaphor is the simple modeling tool. Contribute to gaphor/gaphor development by creating an account on GitHub.

11- Open ModelSphere

Open ModelSphere

Open ModelSphere is free software Modeling Tools Available as open-source software released under GPL.

GitHub - nmilosev/OpenModelSphere: OpenModelSphere fork with fixes for linux
OpenModelSphere fork with fixes for linux. Contribute to nmilosev/OpenModelSphere development by creating an account on GitHub.

12- Umletino

umletino

Umletino is a free, web-based, stand-alone UML tool. It is a fast tool it is aimed to create uml sketches in the fastest way.

Features:

  1. Simple
  2. Fast
  3. markup-based element edits
  4. mouse-controlled overall layout design
  5. Drag and Drop tool
Build software better, together
GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 330 million projects.

13- Archi

Archi

Archi is an open-source software architecture model, modeling toolkit to create the business, IT, and software architecture models using the ArchiMate modeling language.

Features:

  1. Contextual menus
  2. mouse-over descriptions of symbols
  3. hint window to relate your current work
  4. You will be prevented to create impossible relationships between diagram items.
  5. Easy to use
  6. Intuitive diagramming tool
  7. More than one model can be open at once
  8. You can lock elements of the diagram to avoid unwanted changes
  9. Elements can be grouped in a view using a group container type
GitHub - archimatetool/archi: Archi: ArchiMate Modelling Tool
Archi: ArchiMate Modelling Tool. Contribute to archimatetool/archi development by creating an account on GitHub.

14- ArgoUML

ArgoUML

ArgoUML is an open-source developer tool that is used for development purposes to help in creating diagrams, so easily can visualize projects that they intend to develop and deploy.

Features:

  1. Supports decision making
  2. Simplifies the modeling process
  3. It supports OCL, SVG, and XMI and can run on any Java platform.
  4. It is Compliant with UML 1.1
  5. It doesn’t support UML 2.0
  6. provide cognitive backing via its modeling structure
ArgoUML
Organization for the development of ArgoUML, source moved from argouml.tigris.org. - ArgoUML

15- Gliffy

Gliffy

Gliffy is enterprise-grade diagramming software that helps you to draw a diagram online in an easy way.

It is a wireframing tool for design projects that helps the engineering team to share their ideas in real-time.

Gliffy giving users the ability to toggle through layers and information in the diagram viewer

Features:

  1. Diagram with ease
  2. Share with anyone
  3. Collaborate instantly
  4. Integrate with Atlassian
  5. Preserve and track changes
  6. Import-export
Gliffy
Diagramming for humans. Gliffy has 5 repositories available. Follow their code on GitHub.

16- NClass

NClass

NClass is an easy tool for creating UML diagrams in easy and fast development. The main goal is to provide a simple but powerful class designer

NClass is licensed under the GPL-3.0 license and written in C#.

Features:

  1. Support C# and Java language
  2. Simple
  3. user-friendly
  4. Fully supported with strict syntactical and semantical verification.
  5. Inline class editors with syntactic parsers for easy and fast editing
  6. Printing / saving to image
  7. Multilingual user interface
  8. Mono support for non-Windows users
  9. Configurable diagram styles
GitHub - gbaychev/NClass: NClass - the free UML editor, reloaded
NClass - the free UML editor, reloaded. Contribute to gbaychev/NClass development by creating an account on GitHub.

Conclusion

Such services don’t have to cost huge amounts of money since open-source solutions are available. We reviewed 16 Free And Open Source UML tools which are all available for you to choose from.

If you have any additional software you would like to see in this list, then we would love to hear about them in the comments.