Intro to UML 2.5 diagram types and templates

Intro to UML 2.5 diagram types and templates

An architect wouldn’t start building a skyscraper without a blueprint; similarly, a developer wouldn’t set out coding an application without first having a structured idea of what they are going to create. In order for an application to function, it must be architected in a way that enables scalability, security, and execution.

Mapping out a plan is the first step to any project, and modeling is an essential part of any software project, small or large. Using the UML, or Unified Modeling Language, diagrams available in Cacoo, you can specify, visualize, and document a variety of diagrams for your software systems.

What kind of UML diagrams are there?

As of UML 2.5, there are now fourteen officially recognized types of UML diagrams which are split into two main types:

Structure diagrams show the static parts of a system and how they relate to each other. Each element represents a particular concept and may include abstract, real-world, and implementation factors.

Structured diagrams include class diagrams, object diagrams, package diagrams, composite structure diagrams, component diagrams, deployment diagrams, and profile diagrams.

Behavior diagrams show the dynamic behavior of all objects in a system, including changes to the system over time.

Behavior diagrams include use case diagrams, activity diagrams, state machine diagrams, and interaction diagrams.

Interaction diagrams can be thought of as a subset of behavior diagrams, which include sequence diagrams, communication diagrams, timing diagrams, and interaction overview diagrams.

UML Diagrams to Tryout in Cacoo

You can use our class diagram template to create either class diagrams or object diagrams, as they use similar graphics. Create a class diagram to give an overview of your system’s structure, as seen as a collection of static elements. Or create an object diagram to drill down on a more instance-specific level and give a snapshot of your system’s structure at a specific point of operation.

class diagram template

Try out our package diagram template to show how individual system elements split into packages and relationships between packages.

package diagram template

If you want to depict how users interact with a system, try out our use case diagram template. This diagram can demonstrate the functionality of the system to show what happens when a user takes a particular action.

use case diagram template

Activity diagrams are basically advanced flowcharts. Use them to illustrate your workflow as a sequence of activities and actions take place in a system.

activity diagram template

Our state machine diagram template can help you model system behavior over a number of transitions, so designers can more clearly see the singular ‘state’ of the system at any given point based on the external stimuli.

state machine diagram template

Sequence diagrams are meant to demonstrate how distinct processes operate in conjunction over time. Use our sequence diagram template to map out the exchange of messages between subsystems, such as a computer and server.

sequence diagram template

Don’t feel bound by any particular template; all of these are customizable to your liking, and every shape you see is available right in the Cacoo editor for creating and personalizing your own amazing UML diagrams. You can use our templates as a jumping off point or create your own from scratch.

Your diagram can be as complex or simple as you’d like. The only limit is your imagination!

Note: You can access every template we mentioned, plus more, by opening your Cacoo editor and selecting the “Select and insert the template” button from your top menu. Expand the UML file of templates and select one to get started.

Final Thoughts

The inherent flexibility of using UML diagrams means you can model just about any application, regardless of the hardware, operating system, programming language, or network.

What are your favorite UML diagrams to use when starting a new software project? Let us know on Twitter!

Brandi Gratis Brandi is a Content Marketing Manager at Nulab — the creators of Cacoo, Backlog, and Typetalk. She regularly contributes and edits content for all of Nulab's websites and blogs.