Use UML use case diagrams to show user-system interactions. Easily create professional diagrams for any scenario with our UML diagram tool.
1. Components in a Use Case Diagram
First, let’s take a look at an example of a Use Case Diagram:
Figure 1. Use Case Diagram of an ATM Application
Looking at this diagram, we can see two users: the Customer and the ATM Technician, as well as an entity interacting with the system: the Bank. Additionally, it illustrates the system’s functionalities and identifies which user utilizes each function. This helps us visualize the functionalities the system will include and who they are designed for.Now, let’s dive deeper into the components of the diagram.
1.1 Actor
An Actor represents a user or an external entity that interacts with the system under consideration. Note that we often overlook external entities interacting with the system, such as the Bank in the example above.
Actors are represented as follows:
Or
1.2 Use Case
A Use Case represents a function that the Actors will utilize. It is represented as follows:
Figure 2. Representation of a Use Case
By identifying the functions that the Actors will use, you can determine the necessary Use Cases within the system.
1.3 Relationship
A Relationship, also known as a connector, is used to link objects together, forming the Use Case Diagram. The basic types of relationships are:
– Association
– Generalization
– Include
– Extend
We will explore each type of relationship in detail below.
Association
Association is typically used to describe the relationship between an Actor and a Use Case, as well as between different Use Cases.
Generalization
Generalization is used to represent an inheritance relationship between Actors or between Use Cases.
Include
Include is a relationship between Use Cases, describing how a larger Use Case is divided into smaller Use Cases for easier implementation (modularization) or to demonstrate reuse.
We can see that the Use Case “Verify Password” could be combined with the “Login” Use Case, but here it is separated to allow other Use Cases to use it or to modularize it for easier understanding and implementation.
Extend
Extend is used to describe the relationship between two Use Cases. The Extend relationship is applied when a Use Case is created to add functionality to an existing Use Case, and it is invoked under certain conditions.
Figure 3. Example of an Extend Relationship Between Use Cases
In the example above, “Open Account” is the base Use Case for customers to open an account. However, there is an additional condition: if the customer is a company, they can add an account holder to the account. “Add Account Holder” is the extending functionality of the “Open Account” Use Case, triggered only when the Actor is a company. Therefore, the relationship between these two Use Cases is an Extend relationship.
1.4 System Boundary
System Boundary helps us better understand when dividing a large system into smaller subsystems for analysis and design.
Previous part
For more information, you can read this link:
Use Case Diagram
That’s the end of Part 1. To better understand how to draw the details of a Use Case, please proceed to the next section!