USE CASE DIAGRAM

USE CASES

Use cases are a way to capture system functionality and requirements in UML. A use case can be
represented in the following way by using an oval. Its description has to be written inside the use
case.

ACTORS

A use case must be initiated by someone or something. This interested party is called as an actor.

An actor does not need to be a human user; any external system or element outside of the use
case may trigger the use case (or be the recipient of use case results) and should be modeled as
an actor.


There are actors with custom icons. Consider the following.


ACTOR & USE CASE ASSOCIATION

An actor typically associates with one or more use cases. A relationship between an actor and a
use case indicates the actor initiates the use case, the use case provides the actor with results or
both. An association between an actor and a use case is represented by a solid line.


ACTOR GENERALIZATION

Actor generalization is typically used to pull out common requirements from several different
actors to simplify modeling.

Actor generalization refers to the relationship which can exist between two actors and which shows that one actor (descendant) inherits the role and properties of another actor (ancestor).

The generalization relationship also implies that the descendant actor can use all the use cases that have been defined for its ancestor. Actor generalization can be graphically represented as follows.


Account has the capacity to do all the use cases that are performed by the clerk, but not vice
versa.

USE CASE INCLUSION

Use case include is a directed relationship between two use cases which is used to show that
behavior of the included use case (the addition) is inserted into the behavior of the including (the base) use case. Inclusion is used to show how a use case breaks into smaller steps.

The included use case is at the arrowhead end. The base use case is dependent on the including use case.

USE CASE EXTENSION

UML provides the ability to plug in additional functionality to a base use case if specified conditions are met. Extend is a directed relationship that specifies how and when the behavior defined in usually supplementary (optional) extending use case can be inserted into the behavior defined in the extended use case.

Comments