Overview

A Use Case diagram falls under the behavioral diagramming family. A Use Case diagram models the users' expectations for using the system. The people and systems that interact with the target system are called actors, whereas the features of the system used by actors are called Use Cases.

In general, a Use Case is a description of the functionality (a specific usage of a system) that a system provides. They can be written in many different ways, but the most common one is to represent a view of the system from outside the system. The Use Case descriptions can exist in a textual form (a simple table), where the Use Case diagram provides additional information about the relationship between the use cases and the external users. The Use Case diagram also allows a definition of the system's boundary.

The Use Cases are described only in terms of how they appear when viewed externally by the user (a system's behavior as the user perceives it), and do not describe how the functionality is provided inside the system. The Use Cases are not object-oriented, but they are included in the UML to simplify the approach of the project's lifecycle – from specification to implementation.

The schematic view of the use cases in the system

Purpose

A Use Case diagram defines the expectations of the external actors, for example, people, systems, or devices that need to interact with the system. Their interactions may be to provide input, to receive output, or to dialog with the system in order to cooperate in the completion of a task. All these interactions are focused using specific features of the system - Use Cases. It should be noted that Use Case diagrams do not provide any details about the implementation of these features. The goal of the Use Case approach is to focus the development effort on the essential objectives of the system without getting lost in, or driven by, particular implementations or practices. 

Usage

Use Case diagrams, together with use case narratives and scenarios, define the goals of a system, or another classifier, such as an enterprise, subsystem, or component. 

A Use Case diagram is ideal to:

  • represent the goals of system-user interactions
  • define and organize functional requirements in a system
  • identify internal and external factors that may influence the system and should be taken into consideration
  • specify the context and requirements of a system
  • model the basic flow of events in a Use Case.

Summary

Use Case diagrams are valuable because they: 

  • identify the client's expectations for the system
  • identify specific features of the system
  • identify shared behavior among system features
  • allows clients to view their requirements in a simple and easy way. 

Example of a Use Case diagram

Related pages