A use case diagram is a type of behavioral diagram that illustrates the interactions between actors (users or other systems) and a system. It models the functionality from the user's perspective.
Main elements:
-
Actors: An actor is an external entity that interacts with the system and performs specific roles. Actors can be users, other systems, or external devices. They are represented by stick figures.
-
Use cases: A use case represents a specific task or functionality that the system must perform to satisfy the user's needs. Use cases are initiated by an actor and describe the interactions between the actor and the system under specific scenarios. They are represented by ovals.
Relationship connections:
-
Association: An association represents a communication link between an actor and a use case. It shows the relationship between the actor and the use case in terms of the actor's role in the system. Associations are represented by a solid line between the actor and the use case.
-
Extend: An extend relationship indicates that one use case can extend another use case. It is used to model optional functionality that can be added to the base use case. The extending use case is represented by an arrow pointing from the base use case to the extending use case.
-
Include: An include relationship indicates that one use case includes another use case. It is used to model common functionality that is shared between use cases. The included use case is represented by an arrow pointing from the including use case to the included use case.