Identifying actors
Find the external entities with which the business must interact. Candidates include customers, stakeholders, and
external systems.
Define each candidate actor by naming it and writing a brief description. Includes the actor's area of responsibility
and the goals that the actor will attempt to accomplish when interacting with the business. Eliminate actor candidates
who do not have any goals.
These questions are useful in identifying actors:
-
Who will supply or use artifacts or information with the business?
-
Who will use the business?
-
Who is interested in a certain feature or service provided by the business?
-
Who will support and maintain the business?
-
What are the business's external resources?
-
What other businesses will need to interact with the business?
Review the list of stakeholders. Not all stakeholders will be actors (meaning, they will not all interact directly with
the business), but this list of stakeholders is useful for identifying candidates for actors.
Identifying use cases
The best way to find use cases is to consider what each actor requires of the business. For each actor, human or not,
ask:
-
What are the goals that the actor will attempt to accomplish with the business?
-
What are the primary tasks that the actor wants the business to perform?
-
Will the actor create, store, change, remove, or read artifacts or information with the business?
-
Will the actor need to inform the business about sudden external changes?
-
Does the actor need to be informed about certain occurrences, such as unavailability of artifacts or required
actions on their part?
Give a unique name and brief description that clearly describes the goals for each use case. If the candidate use case
does not have goals, ask yourself why it exists, and then either identify a goal or eliminate the use case.
Outlining Use Cases
Without going into details, write a first draft of the flow of events of the high priority use cases. Initially, write
a simple step-by-step description of the basic flow of the use case. The step-by-step description is a simple ordered
list of interactions between the actor and the business. For example, the description of the basic flow of the Withdraw
Cash use case of an automated teller machine (ATM) would be something like this:
-
The customer inserts a bank card.
-
The system validates the card and prompts the person to enter a personal identification number (PIN).
-
The customer enters a PIN.
-
The system validates the PIN and prompts the customer to select an action.
-
The customer selects Withdraw Cash.
-
The system prompts the customer to choose which account.
-
The customer selects the checking account.
-
The system prompts for an amount.
-
The customer enters the amount to withdraw.
-
The system validates the amount (assuming sufficient funds), and then issues cash and receipt.
-
The customer takes the cash and receipt, and then retrieves the bank card.
-
The use case ends.
As you create this step-by-step description of the basic flow of events, you'll discover alternative and exceptional
flows. For example, what happens if the customer enters an invalid PIN? Record the name and a brief description of each
alternate flow that you identified.
Representing relationships between actors and use cases
The relationship between actors and use cases must be captured or documented There are several ways to do this.
If you are using a use-case model on the project, you can create use-case diagrams to show how actors and use
cases relate to each other. Refer to Concept: Use-Case Model for more information.
If you are not using a use-case model for the project, make sure that each use case identifies the associated primary
and secondary actors.
|