UML Actor

An actor is behaviored classifier which specifies a role played by an external entity that interacts with the subject (e.g., by exchanging signals and data), a human user of the designed system, some other system or hardware using services of the subject.

The term "role" is used informally as some type, group or particular facet of users that require specific services from the subject modeled with associated use cases. When an external entity interacts with the subject, it plays the role of a specific actor. That single physical entity may play several different roles, and a specific role may be played by single or multiple different instances.

Since an actor is external to the subject, it is typically defined in the same classifier or package that incorporates the subject.

All actors must have names according to the assumed role. Examples of actor names (user roles):

Standard UML notation for actor is "stick man" icon with the name of the actor above or below of the icon. Actor names should follow the capitalization and punctuation guidelines for classes. The names of abstract actors should be shown in italics.

Use case actor as a stick man.

Student actor

Custom icons that convey the kind of actor may also be used to denote an actor, such as using a separate icon(s) for non-human actors.

Use case actor shown as custom web client icon.

Custom icon for Web Client actor

Use case actor shown as custom bank icon.

Custom icon for Bank actor

An actor may also be shown as a class rectangle with the standard keyword «actor», having usual notation for class compartments, if needed.

Use case actor shown as Class.

Customer actor as Class

An actor can only have binary associations to use cases, components, and classes.

Business Actor

A business actor (introduced in Rational Unified Process (RUP) to support business modeling) represents a role played by some person or system external to the modeled business and interacting with the business. Note, business actor is not defined in UML standard.

Some typical examples of business actors are:

Each business actor represents something outside of the modeled business and should be involved with at least one business use case.

Business actor is represented in RUP by "stick man" icon with a line crossing its head.

Use case business actor as a stick man with crossed head.

Business actor Passenger

Relationships Between Actors

We can define abstract or concrete actors and specialize them using generalization relationship.

Generalization between actors is rendered as a solid directed line with a large arrowhead (same as for generalization between classes).

Generalization between use case actors

Web Client actor is abstract superclass for Administrator, Editor and Customer

Next  Use case association