UML activity diagram tutorial

6 min

UML is extremely useful for visualizing and documenting software systems, but the terminology can be somewhat overwhelming for someone unfamiliar with UML. An activity diagram is essentially a flowchart that shows activities performed by a system. If you're new to UML diagramming software, this guide will help you get started.

What is an activity diagram?

The Unified Modeling Language includes several subsets of diagrams, including structure diagrams, interaction diagrams, and behavior diagrams. Activity diagrams, along with use case and state machine diagrams, are considered behavior diagrams because they describe what must happen in the system being modeled.

Stakeholders have many issues to manage, so it's important to communicate with clarity and brevity. Activity diagrams help people on the business and development sides of an organization come together to understand the same process and behavior. You'll use a set of specialized symbols—including those used for starting, ending, merging, or receiving steps in the flow—to make an activity diagram, which we’ll cover in more depth within this activity diagram guide.

Benefits of activity diagrams

Activity diagrams present a number of benefits to users. Consider creating an activity diagram to:

  • Demonstrate the logic of an algorithm.

  • Describe the steps performed in a UML use case.

  • Illustrate a business process or workflow between users and the system.

  • Simplify and improve any process by clarifying complicated use cases.

  • Model software architecture elements, such as method, function, and operation.

 

Basic components of an activity diagram

Before you begin making an activity diagram, you should first understand its makeup. Some of the most common components of an activity diagram include:

  • Action: A step in the activity wherein the users or software perform a given task. In Lucidchart, actions are symbolized with round-edged rectangles.

  • Decision node: A conditional branch in the flow that is represented by a diamond. It includes a single input and two or more outputs.

  • Control flows: Another name for the connectors that show the flow between steps in the diagram.

  • Start node: Symbolizes the beginning of the activity. The start node is represented by a black circle.

  • End node: Represents the final step in the activity. The end node is represented by an outlined black circle.

Activity diagram symbols

These activity diagram shapes and symbols are some of the most common types you'll find in UML diagrams.

Ativity Diagram Start SymbolStart symbolRepresents the beginning of a process or workflow in an activity diagram. It can be used by itself or with a note symbol that explains the starting point.
Activity Diagram Activity SymbolActivity symbolIndicates the activities that make up a modeled process. These symbols, which include short descriptions within the shape, are the main building blocks of an activity diagram.
Arrow 66x11.pngConnector symbolShows the directional flow, or control flow, of the activity. An incoming arrow starts a step of an activity; once the step is completed, the flow continues with the outgoing arrow.
Join 66x57.pngJoint symbol or Synchronization barCombines two concurrent activities and re-introduces them to a flow where only one activity occurs at a time. Represented with a thick vertical or horizontal line.
Uml Activity Diagram Notation6 60x63.pngFork symbolSplits a single activity flow into two concurrent activities. Symbolized with multiple arrowed lines from a join.
Decision 33x30.pngDecision symbolRepresents a decision and always has at least two paths branching out with condition text to allow users to view options. This symbol represents the branching or merging of various flows with the symbol acting as a frame or container.
Note 33x26@2x.pngNote symbolAllows the diagram creators or collaborators to communicate additional messages that don't fit within the diagram itself. Leave notes for added clarity and specification.

 

Uml Activity Diagram Notation11 60x25.pngSend signal symbolIndicates that a signal is being sent to a receiving activity.
Uml Activity Diagram Notation10 60x25.pngReceive signal symbolDemonstrates the acceptance of an event. After the event is received, the flow that comes from this action is completed.
Uml Activity Diagram Notation12 60x42.pngShallow history pseudostate symbolRepresents a transition that invokes the last active state.
Uml Activity Diagram Notation13 60x40.pngOption loop symbolAllows the creator to model a repetitive sequence within the option loop symbol.
Final Flow 33x31.pngFlow final symbolRepresents the end of a specific process flow. This symbol shouldn't represent the end of all flows in an activity; in that instance, you would use the end symbol. The flow final symbol should be placed at the end of a process in a single activity flow.
Condition Text 66x22.pngCondition textPlaced next to a decision marker to let you know under what condition an activity flow should split off in that direction.
End State 33x32.pngEnd symbolMarks the end state of an activity and represents the completion of all flows of a process.

Activity diagram examples

Activity diagrams map out process flows in a way that's easy to understand. Consider the two examples below when it comes to creating UML activity diagrams.

Activity diagram for a login page

Many of the activities people want to accomplish online—checking email, managing finances, ordering clothes, etc.—require them to log into a website. This activity diagram shows the process of logging into a website, from entering a username and password to successfully logging in to the system. It uses different container shapes for activities, decisions, and notes. Lucidchart is the ideal tool for creating any kind of UML flowchart, whether it’s an activity diagram, a use case diagram, or a component diagram. Lucidchart offers in-editor collaboration tools and instant web publishing so you can demonstrate the functionality of your system to others.

Activity Diagram for Login Uml 650x797.png

 

Activity diagram for a banking system

This diagram shows the process of either withdrawing money from or depositing money into a bank account. An advantage of representing the workflow visually in UML is the ability to show withdrawals and deposits on one chart. When you use Lucidchart to build an activity diagram, you can customize your templates with professional-grade typefaces and colors. Never worry about losing your documents with secure, cloud-based storage.

Activity Diagram for Banking System Uml 650x665.png

Create UML activity diagrams to visualize complex logic and parallel processing within your system. This tutorial breaks down standardized UML notation, including action states, forks, and swimlanes, to help you model dynamic business processes or software algorithms. Learn how to use Lucidchart to build clean, professional diagrams that ensure your team stays aligned on system architecture.

4:29

How to make an activity diagram

In Lucidchart, creating an activity diagram from scratch is surprisingly simple. Follow these steps:

  1. Open a blank document or start with a template.

  2. Click "Shapes" to the left of the editor to open the Shape Library Manager. Check "UML" to add all of the UML shape libraries (or just "UML State/Activity"), and click "Save."

  3. From the shape libraries you just added, drag the symbol you want from the toolbox to the canvas.

  4. Then model the process flow by drawing lines between shapes.

In Lucidchart, it's easy to resize and style any element. You can even import SVG shapes and Visio files for a custom solution. 

Everything you need to make a diagram

Make a polished, professional diagram for free with Lucidchart. No matter what you have in mind, we have the tools you need to build it. Make an account and start diagramming today.

Sign up free

Activity diagram templates and examples

Activity diagram with swimlanes

Pricing:

Paid Account

Activity diagram with swimlanes, Pricing: Paid Account

Activity diagram

Pricing:

Paid Account

Activity diagram, Pricing: Paid Account

Additional UML resources

UML diagram maker

No matter the type of UML diagram you need to create, Lucidchart can help you get to work on it right away, with detailed shape libraries, hundreds of templates, AI diagram generation, and more.

UML diagram tutorial

Read our comprehensive guide to learn the definition of UML, the 14 types of UML diagrams, and the steps for creating a UML diagram.

Component diagram tutorial

Component diagrams are integral to building your software system. Take a look at this resource to start creating a component diagram.

Frequently asked questions about activity diagrams

An activity diagram is a type of UML behavior diagram that is essentially a flowchart showing activities performed by a system. It helps visualize workflows and processes, allowing business and development teams to understand the same process and behavior.

The main symbols include a black circle for the start node, round-edged rectangles for actions, arrows for control flows, diamonds for decision nodes, and an outlined black circle for the end node.

While an activity diagram is essentially a flowchart, it is part of the UML standard and uses specialized symbols for starting, ending, merging, or receiving steps in the flow to model system behavior and processes.

Use an activity diagram to demonstrate algorithm logic, describe steps in a use case, illustrate business processes or workflows, simplify complicated use cases, or model software architecture elements like methods and functions.

Open a blank document, add UML shape libraries, drag symbols from the toolbox to the canvas, and model the process flow by drawing lines between shapes. Lucidchart also provides UML templates to help you get started faster, or you can generate an activity diagram with Lucid AI.

Yes, activity diagrams can illustrate concurrent activities using fork and join symbols, where a fork splits a single activity flow into two concurrent activities and a join combines them back into a single flow.

A decision node represents a conditional branch in the flow, symbolized by a diamond shape. It includes a single input and two or more outputs with condition text showing the different paths available.

An end node marks the completion of all flows in an activity, while a flow final symbol represents the end of only a specific process flow within a single activity.

Everything you need to make a UML diagram

In addition to our online UML diagram tool, Lucidchart offers support and training resources to help you branch out to any type of diagram.

Make a diagram