liveBook · Manning

Actor

As explained in Software Design for Python Programmers

An actor is a person, system, or other entity that interacts with an application through a use case.

An actor is any person, system, or other external agent that interacts with an application through a use case. The application boundary separates actors from the functionality they access. section 3.6.1

Use actors to clarify who or what participates in an application’s behavior:

  • Represent people such as a librarian or customer. section 3.6.1
  • Represent external applications or systems, such as a database system. section 3.6.1
  • Connect each actor to the use cases it can interact with. section 3.6.1
  • Describe each use case from the viewpoint of the actor that triggers it, including goals, actions, alternatives, and outcomes. section 3.6.2

Book catalogue search

For a Search Catalogue use case, the customer triggers the search by submitting target book attributes; the catalogue returns matching books. section 3.6.2

Figure 3.4 A UML use case diagram containing the names of six use cases for an advanced version of our book catalogue application. The labels in the dashed boxes and the dashed arrows indicate the various components of the diagram. When drawing a use case diagram, do not include these labels and arrows.
A diagram of a book catalogue

Description automatically generated

Inspect the use case diagram to see actors, application boundaries, use cases, and interaction lines together. section 3.6.1

How Software Design for Python Programmers covers it

How deep it goes
Defines actors, distinguishes them from application functionality, and applies them to diagrams and detailed use case descriptions.
Examples
Uses librarians, customers, database systems, and a customer-driven book catalogue search as concrete examples.
What it assumes
Assumes the reader can distinguish an application from external agents and work with basic use case terminology.
What you can do after
Evaluate application requirements by identifying external participants and documenting their triggered action sequences.
How it connects
Connects actors with use cases, application boundaries, functional requirements, nonfunctional requirements, and external systems.

Also explained in

Compare how 7 books explain actor →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Software Design for Python Programmers. The section links point to the parts of the book it draws on.