Software Architecture & UML Unified Modeling Language Tools: use cases, class, sequence, object diagrams

 

Free and Open Source Software Architecture & UML Tools and Eclipse Plugins

 

This page lists free and open source Software Architecture & UML tools and Eclipse plugins (desktop or online usage). Contact us through the martinig.ch website if you know a tool that is missing from this list.

Acceleo

Acceleo is an open template-based source code generation technology developed inside of the Eclipse Foundation. It uses Eclipse and EMF template-based system for source-code generation from UML models. Acceleo is easy to use. It provides "off the shelf" generators (JEE, .Net, Php...) and template editors for Eclipse.


AmaterasUML

AmaterasUML is an Eclipse plug-in for drawing UML which supports the following Unified Modeling Language tools: class diagram, sequence diagram and use case diagram. It also provides Java support such as importing class/interfaces from Eclipse workspace and exporting class-diagram to Java source code.


ArgoUML

ArgoUML is an open source UML modeling tool and includes support for all standard UML 1.4 diagrams. It runs on any Java platform and is available in ten languages. ArgoUML provides the following features: All 9 UML 1.4 Diagrams supported, Platform Independent: Java 1.4+, Standard UML 1.4 Metamodel, XMI Support, Export Diagrams as GIF, PNG, PS, EPS, PGML and SVG,, Advanced diagram editing and Zoom, Forward Engineering, Reverse Engineering / Jar/class file Import, Cognitive Support, Reflection-in-action, Design Critics, Opportunistic Design, Comprehension and Problem Solving


Astade

Astade is an open source UML tool where you can develop at model level and automatically generate source code for C++.


BOUML

BOUML is a free Unified Modeling Language (UML) and code generation tool that run under Windows, Linux and MacOS X. It provides a modeler that includes UML diagrams like use case, class, sequence, communication. BOUML also allows to generate code in C++, Java, Idl, PHP, Python and MySQL or import the code into diagrams.

BOUML open source UML tool
BOUML open source UML tool
(source http://www.methodsandtools.com/tools/bouml.php)


ckwnc

ckwnc is a free online tool for creating UML sequence diagrams quickly and easily through an intuitive psuedo C-style language.


Create Domain UML

This Grails plugin uses yUML.me to draw class diagrams for your Grails Domain classes.


Grails ClassDiagram plugin

The ClassDiagram plugin provides an UML-like diagram of your grails domain classes


Gaphor

Gaphor is a simple open source modeling tool for the Unified Modeling Language (UML). It is aimed at beginning modelers who want a simple and fast tool so that they can focus on learning.

Gaphor open source UML tool
Gaphor open source UML tool
(source https://gaphor.org/a>)


jUCMNav

jUCMNav is a free, Eclipse-based graphical editor and an analysis and transformation tool for the User Requirements Notation (URN). URN is intended for the elicitation, analysis, specification, and validation of requirements. URN combines two complementary views: one for goals provided by the Goal-oriented Requirement Language (GRL) and one for scenarios provided by the Use Case Map (UCM) notation. In addition, jUCMNav support Feature Models, as well as the visualization of scenarios with Message Sequence Charts


Modelio

Modelio is an open source and commercial modeling environment. Based on a 20-year track record of high end commercial products, Modelio delivers a broad-focused range of standards-based functionalities for software developers, analysts, designers, business architects and system architects.


ModelGoon

ModelGoon brings the power of visual models in a Java development. It is intended for developers during implementation activities. ModelGoon provides actually three diagram which are built directly from the java sources. ModelGoon is tightly connected to the Eclipse's JDT, thus the code is the model. This is why diagrams created with ModelGoon always reflect the application's source code. ModelGoon is a lightweight tool and doesn't pollute the sources with annotation or proprietary comments.


NClass

NClass is a free, UML-based class diagram editor with full C# and Java language support. The user interface is designed to be simple and user-friendly for easy and fast development. Properties, enums, delegates and other language specific elements are fully supported with strict syntactical and semantical verification, and declaration parsers provide a handy way for skipping the old mouse-controlled editing.


ObjectArtist UML

ObjectArtist is a development tool to create object-oriented software. The Tool uses UML diagrams for modeling. The models are stored in XMI, an XML based format.


Open ModelSphere

Open ModelSphere is a powerful data, process and UML modeling tool - supporting user interfaces in English and French. Designed to be platform-independent, Open ModelSphere was created as a 100%-Java application. Having been developed as a commercial software by Grandite over several years, Open ModelSphere has become a professional and mature product that is supported by an experienced community of software architects and engineers who want you to benefit from the product and share their expertise with you. Open ModelSphere provides the functionality of a rich UML modeling software. You can create Activity, Class, Collaboration, Component, Deployment, Package, Sequence, Statechart and Use Case diagrams.


openMDX

openMDX is an open source MDA platform based on the Object Management Group's Model Driven Architecture standards. openMDX supports J2SE, J2EE, and .NET. openMDX enables software architects and developers to build and integrate software applications in a highly automated and industrialized way.


Papyrus

Papyrus is an open source Eclipse plugin that enables model-based techniques: model-based simulation, model-based formal testing, safety analysis, performance/trade-offs analysis, architecture exploration... Papyrus implements the following standards: UML 2.5, SysML 1.1 & 1.4, fUML 1.2.1, ALF 1.0.1, MARTE 1.1, BPMNProfile 1.0, BMM 1.3, SMM 1.1, PSCS 1.0, PSSM 1.0b, FMI 2.0 and ISO/IEC 42010


PlantUML

PlantUML is an open source tool used to draw UML diagrams, using a simple and human readable text description. PlantUML allows to quickly write Sequence diagram, Usecase diagram, Class diagram, Activity diagram, Component diagram, State diagram, Object diagram, Deployment diagram and Timing diagram.


Populo

Populo is fully compliant with the UML action language, contrarily to existing tools, such as Rhapsody or Rational RT, whose are based in in-house versions of the action language not compliant with the standard.


StarUML

StarUML is an open source project to develop fast, flexible, extensible, featureful, and freely-available UML/MDA platform running on Win32 platform. The goal of the StarUML project is to build a software modeling tool

StarUML open source UML tool
StarUML open source UML tool
(source http://www.methodsandtools.com/tools/staruml.php)


Taylor

Taylor's model driven architecture on rails makes creating JEE applications as easy as the much talked about ruby-on-rails, but with all the power of JEE and UML. Business models are defined using simplified UML diagrams following well-defined conventions. These models are then used to generate the exact same ejb3/portlet code your would write by hand. Then use the code as is or modify it as you see fit and your changes will be preserved.


Umbrello UML Modeller

Umbrello UML Modeller is an Unified Modelling Language diagram program for KDE. The UML language allows you to create diagrams of software and other systems in a standard format. Umbrello comes with KDE SC, included with every Linux distribution and available through your package manager and as installer for Windows and Mac OS X. See Installation to install Umbrello.


Umple

Umple is a modeling tool and programming language family to enable what we call Model-Oriented Programming. It adds abstractions such as Associations, Attributes and State Machines derived from UML to object-oriented programming languages such as Java, PHP and Ruby. Umple can also be used to create UML class diagrams textually.


UMLetino

UMLetino is a free online UML tool for fast UML diagrams. It runs in your browser, and does not require any installs. It is based on UMLet (which is available as stand-alone tool or Eclipse plugin), and shares its fast, text-based way of drawing UML sketches.


UML Almighty

UML Almighty provides a dynamic view of an UML Model, simulating an entire UML model with desktop and web prototyping.


UML Designer

UML Designer provides a set of common diagrams to work with UML 2.5 models. The intent is to provide an easy way to make the transition from UML to domain specific modeling. This way users can continue to manipulate legacy UML models and start working with DSL. Users can even re-use the provided representations and work in a total transparence on both UML and DSL models at the same time. These plugins are released under the EPL Open-Source License.


UMLet - Fast UML Editor

UMLet is a UML tool aimed at providing a fast way of creating UML diagrams. UML elements are modified using text input instead of pop-up dialogs. Elements can be modified and used as templates; this way, users can easily tailor UMLet to their modeling needs. UMLet supports a variety of UML diagram types: class diagrams, use case diagrams, sequence diagrams, state diagrams, deployment diagrams, activity diagrams -- see some examples. UMLet allows users to create their own custom UML elements. An element's look can be modified at run-time by changing a few lines of Java code; UMLet then compiles the new element's code on the fly. Without leaving UMLet, users can thus create and add new element types to their diagrams.


Violet UML Editor

Violet is an open source and free UML editor intended for developers, students, teachers, and authors who need to produce simple UML diagrams quickly. Violet is a UML editor with these benefits: Very easy to learn and use. Draws nice-looking diagrams. Completely free. Cross-platform.