An activity diagram is an extension of the workflow diagram, visually depicting the flow of system operations as a sequence of actions.
For as long as people have been travelling from point A to point B, they've relied on maps to help them find their way. Workflow diagrams (also called flowcharts) fulfil a similar function, detailing every step that a process takes, including dependencies, responsibilities and tools. This allows users to logically plot out effective workflows, eliminate inefficient steps and blockers, collaborate among teams and see possible next steps at every stage of a project.
For an example of a workflow design tool that uses workflow diagrams, see ServiceNow Flow Designer. Flow Designer enables both professional developers and low-code business analysts to automate and integrate any business process as a digital workflow using natural language.
Activity diagrams take this concept further; an activity diagram is a Unified Modelling Language (UML) behaviour diagram that represents the workflow of activities within a system, using formally specified notation, symbols and rules. An Activity Diagram in UML is generally used in modelling software systems; they are considered behavioural diagrams, because they describe what must happen in the systems they are modelling.
As with flowcharts and other diagrams, activity diagrams are a way to visually represent dynamic behaviour within a system. Activity diagrams depict the flow of programmes on a high level, allowing users to more clearly understand the conditions and constraints associated with specific operations and to see message flow between activities.
Creating an activity diagram in UML makes it possible for users to model and diagram both conditional and parallel behaviour. The flow of an activity can be managed using various control elements in the UML flow diagram. In terms of usage, activity diagrams are uniquely suited for:
- Modelling use cases and the steps they consist of.
- Detailing software protocol as a permissible sequence of interactions between components.
- Modelling software algorithms.
- Charting business workflows among multiple users in a system.
- Modelling the execution flow between system entities.
- Present detailed information about functions or algorithms in the system.
- Create a high-level understanding of system functionalities.
As with any kind of business-process diagram, the main benefit of using an activity diagram is improved process visibility and clarity. Users can take in and briefly understand the relationship between objects, including how they flow together. They can also see where different responsibilities and dependencies lie and where important decisions must be made. Likewise, diagramming is beneficial to collaboration and documentation, communicating processes in a way that is easily shareable across teams and departments.
In addition to these benefits, activity diagrams can help businesses accomplish the following:
- Demonstrating the logic of an algorithm.
- Describing the steps performed in a UML use case.
- Illustrating workflows between users and systems.
- Simplifying and improving processes by clarifying potentially complex use cases.
- Modelling software architecture elements, including function, method and operation.
Although activity diagrams follow standardised rules in UML, there is still some freedom in creating these diagrams, particularly in terms of what elements to include. Most commonly, activity diagrams include the following components:
Activities describe business processes, and include activity nodes and activity edges, allowing tasks to flow along a sequence.
An action is a task performed either by the software of the user. Actions begin when all input conditions have been met and use incoming and outgoing activity edges to specify the flow of control and data between activity nodes.
An activity edge is a direct connection between activity nodes, representing the path that a token can take between two activity nodes. The activity edge is responsible for continuing the flow towards the next action once the previous action has been completed.
Control flows are connectors that visualise the flow between steps in the diagram.
The initial node at the beginning of the diagram, the start node represents the starting point of the activity.
A decision is a point in the diagram where the user or the software has a choice to make. Each option leads to a new branch, so the decision is made up of one input and at least two outputs.
Merges are the opposites of decisions, bringing together multiple branches or flows into a single point. A merge is made up of at least two inputs and only one output.
The end node is the final step in the activity; completion of the end node denotes that the activity has likewise been completed.
Understanding the various notations and symbols is crucial for effectively utilising and interpreting activity diagrams. The symbols serve as the language of the diagram, enabling one to map out intricate workflows, decisions and processes clearly and consistently. Some of the standard notations and symbols commonly found on an activity diagram include: Initial state or start point
This is usually represented by a filled circle and signifies the starting point of the activity flow. The Initial State sets the stage for the subsequent actions or tasks that follow in the diagram. For swimlane activity diagrams, the start point should be placed in the first column in the upper-left corner.
- Activity or action State
Action states (also called 'activity states') briefly detail the tasks and operations carried out throughout the process flow. These notations are often represented as rounded rectangles and include a description of the activity to be performed. - Action flow
Action flow is represented by arrows connecting the Action States. They show the sequence or order in which the activities are performed, guiding the flow from one state to another. - Object flow
Object flows are similar to action flows but are used to indicate the flow of objects or data between activities. They can also be represented by arrows, sometimes annotated or distinguished by colour or style to separate them from action flows. - Decisions and branching
Decisions are denoted by diamond shapes and represent decision-making points within the process. Branching occurs from these decision points, leading to multiple possible paths based on conditions or choices. - Guards
Guards are conditions that must be satisfied for the flow to continue along a particular path. They are usually labelled next to the arrow leading out of a decision symbol to show the conditional flow. - Synchronisation
A synchronisation bar (often called a 'fork' or 'join') is used to represent the point where multiple flows converge (join) or diverge (fork). This helps in modelling parallel activities within the system. - Time event
This is a clock-like symbol or notation that indicates a specific point in time or after a set duration when an activity should occur. Time Events help in modelling processes with strict deadlines. - Merge event
Merge events are depicted by diamond shapes—similar to decisions but without conditions. These symbols indicate where multiple flows come together to form a single, unified flow. - Sent and received signals
Sent and received signals represent how a task can be modified by outside elements and are depicted as envelope-shaped icons. Sent and received signals are used to indicate when a state cannot change until a specific message is received. - Interrupting edge
An interrupting edge is a ridged (lightning-bolt shaped) line with an arrowhead that indicates an interruption in the main flow. It's used to model exceptions or events that can disrupt the normal sequence of activities. - Swimlanes
Swimlanes are parallel boxes or columns used to separate activities based on who is responsible for them—departments, systems or individuals. - Final state or end point
The Final state indicates the end of the activity flow and that the process has been completed. This is often represented by a filled circle with a hollow circle around it.
While both activity diagrams and flowcharts serve the purpose of visualising process flows and decision-making paths, they have distinct characteristics, notations and use cases that set them apart. Understanding the differences can help organisations decide which tool is more appropriate for specific needs.
- Activity diagrams: Typically more complex and provide a higher level of detail, including conditional and parallel behaviour, synchronisation points and more. They are part of the Unified modelling language (UML) and thus follow a standardised set of notations and symbols.
- Flowcharts: Generally simpler and less detailed, used for straightforward processes and decision-making trees. They don't have a standardised set of notations, although there are commonly used symbols.
- Activity diagrams: Use a specific set of UML notations, including action states, activity edges, control flows and more, allowing for a consistent, formalised representation of processes.
- Flowcharts: Have a more relaxed set of symbols like ovals for start/end, rectangles for processes and diamonds for decision points.
- Activity diagrams: Mostly used in software engineering for depicting the dynamic aspects of software systems but are also useful in other fields for modelling complex processes.
- Flowcharts: Have a broader range of applications, from business processes to systems engineering and can be used in almost any discipline.
- Activity diagrams: More rigid due to their formal notations, but this can be an advantage when modelling complex, multifaceted systems.
- Flowcharts: More flexible and easier to create, suitable for straightforward processes that don't require specialised notations.
- Activity diagrams: Can model not only the flow of activities but also the flow of objects or data between activities, providing a more complete picture of the system. They can be used both for high-level overviews and detailed, low-level activities of a system.
- Flowcharts: Primarily focus on the flow of activities or tasks and don't usually incorporate the flow of objects or data between tasks. They usually provide a high-level view of a process and may not be suitable for extremely detailed modelling.
ServiceNow, the industry leader in IT management, is bringing the benefits of advanced activity mapping to businesses across the globe. Built on the award-winning Now Platform, ServiceNow Process Automation allows organisations to create detailed process flows using data from audit trails, for easy, yet in-depth business process analysis. Eliminate process bottlenecks, uncover hidden inefficiencies, see detailed visual representations of your process and activity flow and create a complete map of each connection, dependency and relationship. Process Automation makes it all possible.
With Process Automation, organisations have an easy-to-use solution for fast, accurate and cost-effective diagramming. More specifically, companies that use ServiceNow Process Automation tend to enjoy the following advantages:
Place vital processes and all their corresponding tasks, activities, actions, responsibilities and dependencies under a microscope. Unmatched process visibility makes it possible to continually measure and improve service delivery to align with SLAs and customer expectations more closely. With ServiceNow, the act of optimising processes is ongoing and effective.
Processes aren't the only aspects that stand to improve from Process Optimization; employees, agents and others who are involved in relevant processes will have a more detailed view of their own performance. Process Optimization makes it possible to see and compare effectiveness across an organisation, so that leaders and employees can take steps to improve results for workgroups and tasks.
By streamlining business processes, ServiceNow Process Optimization allows organisations to cut away unnecessary elements and provide employees and machines with a straight-forward, easy-to-follow sequence of steps to reach activity completion. This frees up resources and gives businesses a chance to apply those resources to other projects and tasks, improving productivity across the board.
Along with increased productivity, the ability to eliminate unnecessary variants from core business processes also helps reduce investment costs. Organisations can do more with less, for increased business process efficiency.
Streamlined processes mean faster solutions. And, by integrating with ServiceNow Continual Improvement Management and other ServiceNow apps, organisations can improve their workflows faster than ever before.
Drive process excellence with Process Optimization and Performance Analytics, together.