UML Diagram Types and Templates

UML Diagram Types and Templates


Need a quick overview of UML diagram types? Gliffy is here to help. Please contact us. We even have UML diagram templates to get you started.

Before you start diagramming, we recommend reviewing our UML Basics resource if you are new to UML. 


Types of UML Diagrams

UML 2.5 officially recognizes fourteen types of diagrams. They can be classified as follows:

  • Structure diagrams,
  • Behavioral diagrams, and
  • Behavior diagrams (sometimes considered a subset of interaction diagrams)

In this article, we'll briefly discuss the types of UML diagrams and illustrate each with an example. You can use each example as a dynamic template to create your own UML diagrams.

Click any example to open it in Gliffy. To access all these templates and more, open Gliffy, select 'New' from the File menu, and expand 'Software Design & UML'.

UML Structure Diagram Types

A structure diagram depicts the static elements of your application (its parts and their relationships).

Class Diagrams


The class diagram shows a system's structure using classes and interfaces. They present an overview of the project as a collection of static elements. Do you want to know how to do it yourself? Watch our video, How to Make a Class Diagram in UML >> 

Class Diagrams


The object diagram is similar to a class diagram, but drills down to the instance level. A snapshot of the system's structure is captured at a specific point in time. The variables in the class diagram above are specified for each object instance in the example below.

Package Diagrams


A package diagram shows system elements as packages that are interconnected by inter-package relationships. To minimize dependencies, class diagrams are compartmentalized to help designers.

Composite Structure Diagrams

  • Composite structure diagrams are categorized into two types:
  • An internal structure diagram, which breaks down classifiers into parts, properties, and relationships; and
  • Collaboration use diagrams that show how system objects cooperate to create a combined behavior.


Component Diagrams

Component diagrams illustrate how the components in a system link up to form that system.

Deployment Diagrams


Diagrams depict the physical placement of artifacts (software components) on nodes (hardware components), so you can see which software pieces reside on which hardware and how those artifacts relate to one another.

Profile Diagrams


Profile diagrams extend UML by allowing you to define stereotypes, tagged values, and constraints as a means of adapting the UML metamodel for different domains and platforms. Profile diagrams are abstract by design; they help you abstract elements in UML for use in other areas.

UML Behavioral Diagram Types

Behavioral (or behavior) and interaction diagrams illustrate different aspects of your system’s dynamic functionality—how the objects in the system change over time.

Use Case Diagrams

Through use cases that produce observable results, use case diagrams depict how users interact with systems. Simply put, use case diagrams are about functionality. Do you want to create one? Check out our video, How to Make a Use Case Diagram >>


Activity Diagrams

Activity diagrams are UML's version of flowcharts. By illustrating workflow as a sequence of activities and actions, they show how control flows dynamically through a system as a result of operations performed on classes within it.

Check out our video tutorial, How to Make an Activity Diagram in UML >>


State Machine Diagrams

In state diagrams, the system behavior is modeled over a number of transitions so that the designer can view the singular 'state' of the system at any point, given the indicated external stimuli. To learn to make your own, watch our video tutorial: How to Make a State Diagram in UML >>


UML Interaction Diagram Types

Sequence Diagrams

Sequence diagrams show how distinct processes operate in conjunction over time. They map out the exchange of messages between subsystems (such as a computer and server) as the diagrammed scenario unfolds. You can learn to make your own with our video, How to Make a Sequence Diagram in UML >>


Communication Diagrams

Communication diagrams (aka collaboration diagrams) show how messages are passed through architecture and how it correlates to internal structure.


Timing Diagrams

Timing diagrams show how objects behave over defined time increments. On a timing diagram, time is plotted along the horizontal axis in specified units so you can see what is supposed to take place every 4th millisecond, minute, or month of operation.


Interaction Overview Diagrams

The interaction overview diagram combines the activity diagram type with the interaction diagram type in order to separate a sequence of activities into discrete activities. Activities are compartmentalized within frames, which in turn contain interaction diagrams or diagrams of interactions. Complex scenarios are distilled into a comprehensible diagram in this form.


So there you have it! Once you've collected the whole set, your peers will envy you, assuming they're also software developers.

Make any Type of UML Diagram with Gliffy

Check out our quick tutorial on how to create a UML diagram with Gliffy: How to Create a UML Diagram.

Interested? Get started in just a few clicks with Gliffy Online - our tools and features are specifically designed for software engineering diagrams.