Use Case

d_UseCase

A Use Case is a UML modeling element that describes how a user of the proposed system interacts with the system to perform a discrete unit of work. It describes and signifies a single interaction over time that has meaning for the end user (person, machine or other system), and is required to leave the system in a complete state: the interaction either completed or rolled back to the initial state. A Use Case:

  • Typically has requirements and constraints that describe the essential features and rules under which it operates
  • Can have an associated Sequence diagram illustrating behavior over time; who does what to whom, and when
  • Typically has scenarios associated with it that describe the work flow over time that produces the end result; alternative work flows (for example, to capture exceptions) are also enabled.

Note:

Use a Use Case diagram and model to build up the functional requirements and implementation details of the system.

The following is an example Use Case model:

Example of a Use Case Diagram2

If extending a Use Case, you can specify the points of extension with Use Case Extension Points. To display the attributes, operations or constraints of a Use Case on a diagram, use Rectangle Notation.

Enterprise Architect also provides two stereotyped Use Cases - the Test Case and the Business Use Case.

Toolbox Icon

e_UseCase

OMG UML Specification

The OMG UML specification (UML Superstructure Specification, v2.1.1, p. 592) states:

A UseCase is a kind of behaviored classifier that represents a declaration of an offered behavior. Each Use Case specifies some behavior, possibly including variants, that the subject can perform in collaboration with one or more actors.