Use Cases are a means of specifying the required usages of a system. Typically, they are used to capture the requirements of a system, that is, what a system is supposed to do.

In the following figure you can see a fragment of the Library System. The Use Case Register Return is associated to the Actor Librarian, which means that this Actor initiates that Use Case.

Actor and Use Case

Behavior of a Use Case can be specified by an Activity, State Machine, or Sequence. It can also be described by a textual description - a Use Case scenario that can be depicted in an Activity diagram.

A Use Case can be specified by changing its property values in the Use Case Specification window. Each property is described in the description area on this window.

Use Case relationships

A Use Case can be associated with an Actor to specify that the Actor initiates the associated Use Case.

A Use Case can be related to other Use Cases by

  • Generalization
  • Include
  • Extend 

Use Case shape with rake icon

The rake icon  is displayed on the shape, if the Use Case is realized by other behavior diagrams, such as Use Case, Activity, State Machine, or Sequence. To hide the rake icon you need to set the Show Rake Icon property value to false in the Symbol Property dialog.

Use Case Actors

An Actor can be related to the Use Case by Association.

You can see the Actors that are related to the selected Use Case in Specification window of that Use Case, the Actors property group. This group displays a list of Actors that are directly (through the Association relationship) or indirectly (through the Extend, Include, or Generalization relationships) connected to the selected Use Case.