Chapter 3
Identifying User Stories
and Use Cases
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 1
Chapter 3 Outline
1. User Stories and Use Cases
2. Use Cases and the User Goal Technique
3. Use Cases and Event Decomposition
4. Use Cases in the Ridgeline Mountain Outfitters
Case
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 2
Learning Objectives
Explain why identifying use cases is the key to defining
functional requirements
Write user stories with acceptance criteria
Describe the two techniques for identifying use cases
Apply the user goal technique to identify use cases
Apply the event decomposition technique to identify use cases
Describe the notation and purpose for the use case diagram
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 3
User Stories
A User Story definition:
A one-sentence description of a work-related task
Done by a user to achieve some goal or result
Acceptance Criteria identify the features that
must be present at the completion of the task
The template for a user story description is:
• “As a <role> I want to <goal> so that <benefit>
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 4
©2016. Cengage Learning. All rights reserved.
Sample User Story
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 5
©2016. Cengage Learning. All rights reserved.
Use Cases
Use case is:
An activity that the system performs,
Usually in response to a request by a user
Specify technical aspect of functional requirements
Analysts decompose the system into a set of use cases
(functional decomposition)
Two techniques for Identifying use cases
User goal technique
Event decomposition technique
CRUD technique
Name each use case using Verb-Noun
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 6
©2016. Cengage Learning. All rights reserved.
User Goal Technique
This technique is the most common in industry
Simple and effective
Organized by user category
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 7
©2016. Cengage Learning. All rights reserved.
User Goal Technique
Some RMO CSMS Users and Goals
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 8
©2016. Cengage Learning. All rights reserved.
User Goal Technique: Specific Steps
1. Identify all the potential users for the new system
2. Classify the potential users in terms of their functional
role (e.g., shipping, marketing, sales)
3. Further classify potential users by organizational level
(e.g., operational, management, executive)
4. For each type of user, interview them to find a list of
specific goals they will have when using the new
system (current goals and innovative functions to add
value)
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 9
©2016. Cengage Learning. All rights reserved.
User Goal Technique: Specific Steps
(continued)
5. Create a list of preliminary use cases organized by
type of user
6. Look for duplicates with similar use case names and
resolve inconsistencies
7. Identify where different types of users need the
same use cases
8. Review the completed list with each type of user and
then with interested stakeholders
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 10
©2016. Cengage Learning. All rights reserved.
Event Decomposition Technique
More Comprehensive and Complete Technique
Identify the events that occur to which the system must
respond.
For each event, name a use case (verb-noun) that describes
what the system does when the event occurs
Event– something that occurs at a specific time and
place, can be described, and should be remembered
by the system
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 11
©2016. Cengage Learning. All rights reserved.
Events and Use Cases
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 12
©2016. Cengage Learning. All rights reserved.
Types of Events
External Event
an event that occurs outside the system, usually
initiated by an external agent or actor
Temporal Event
an event that occurs as a result of reaching a point
in time
State Event
an event that occurs when something happens
inside the system that triggers some process
reorder point is reached for inventory item
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 13
©2016. Cengage Learning. All rights reserved.
External Event Checklist
External agent or actor wants something resulting in a
transaction
Customer buys a product
External agent or actor wants some information
Customer wants to know product details
External data changed and needs to be updated
Customer has new address and phone
Management wants some information
Sales manager wants update on production plans
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 14
©2016. Cengage Learning. All rights reserved.
Temporal Event Checklist
Internal outputs needed at points in time
Management reports (summary or exception)
Operational reports (detailed transactions)
Internal statements and documents (including
payroll)
External outputs needed at points of time
Statements, status reports, bills, reminders
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 15
©2016. Cengage Learning. All rights reserved.
Finding the actual event that affects the system
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 16
©2016. Cengage Learning. All rights reserved.
Tracing a sequence of transactions resulting in many
events
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 17
©2016. Cengage Learning. All rights reserved.
Perfect Technology Assumption
Don’t worry about functions built into system because
of limits in technology and people. Wait until design.
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 18
©2016. Cengage Learning. All rights reserved.
Event Decomposition Technique: Specific Steps
1. Consider the external events in the system environment
that require a response from the system by using the
checklist shown in Figure 3-3
2. For each external event, identify and name the use case
that the system requires
3. Consider the temporal events that require a response
from the system by using the checklist shown in Figure 3-4
4. For each temporal event, identify and name the use case
that the system requires and then establish the point of
time that will trigger the use case
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 19
©2016. Cengage Learning. All rights reserved.
Event Decomposition Technique: Specific Steps
(continued)
5. Consider the state events that the system might respond
to, particularly if it is a real-time system in which devices
or internal state changes trigger use cases.
6. For each state event, identify and name the use case that
the system requires and then define the state change.
7. When events and use cases are defined, check to see if
they are required by using the perfect technology
assumption. Do not include events that involve such
system controls as login, logout, change password, and
backup or restore the database, as these are put in later.
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 20
©2016. Cengage Learning. All rights reserved.
Event Decomposition Technique: Benefits
Events are broader than user goal: Capture temporal and
state events
Help decompose at the right level of analysis: an
elementary business process (EBP)
EBP is a fundamental business process performed by one
person, in one place, in response to a business event
Uses perfect technology assumption to make sure
functions that support the users work are identified and
not additional functions for security and system controls
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 21
©2016. Cengage Learning. All rights reserved.
CRUD technique for Use Case
analysis
Acronym CRUD for data entity operations:
Create, Read, Update and Delete
For each class of data identify the use cases
associated with the 4 basic operations: Create,
Read, Update and Delete.
Must identify each class of data in system, e.g.,
Payroll, Catalog, Inventory, etc.
Written up in a table
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 22
CRUD technique example
Data Entity/Class Crud Resulting Use case
Inventory Create Add inventory item
Read Get inventory entry
Search inventory
Update Modify inventory item
Delete Remove inventory item
Catalog Create Add new catalog item
Read Get catalog entry
Search catalog
Update Modify catalog item
Delete Remove catalog item
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 23
Use Cases and Brief Use Case Descriptions
Brief use case description is often a one sentence
description showing the main steps in a use case
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 24
©2016. Cengage Learning. All rights reserved.
RMO CSMS Project Use Cases
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 25
©2016. Cengage Learning. All rights reserved.
RMO CSMS Project Use Cases
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 26
©2016. Cengage Learning. All rights reserved.
RMO CSMS Project Use Cases
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 27
©2016. Cengage Learning. All rights reserved.
RMO CSMS Project Use Cases
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 28
©2016. Cengage Learning. All rights reserved.
Use Case Diagrams
Use case (UC) diagram—
A UML model that graphically shows UC and their
relationships to actors
Recall UML is Unified Modeling Language, the standard
for diagrams and terminology for developing
information systems
Actor is the UML name for a end user
Automation boundary—
The boundary between the computerized portion of the
application and the users who operate the application
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 29
©2016. Cengage Learning. All rights reserved.
Use Case Diagrams Symbols
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 30
©2016. Cengage Learning. All rights reserved.
Use Case
Diagrams
Draw for each
subsystem
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 31
©2016. Cengage Learning. All rights reserved.
Use Case
Diagrams
Draw for a single actor,
such as customer
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 32
©2016. Cengage Learning. All rights reserved.
Use Case Diagrams
Draw for internal RMO actors
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 33
©2016. Cengage Learning. All rights reserved.
Use Case Diagrams— The <<Includes>> relationship
A relationship between use cases where one use case is
stereotypically included within the other use case— like a
called subroutine. Arrow points to subroutine
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 34
©2016. Cengage Learning. All rights reserved.
Use Case Diagrams: Steps
1. Identify all the stakeholders and users
who would benefit by seeing a use case
diagram
2. Determine what each stakeholder or user
needs to review in a use case diagram:
a. Each subsystem, for each type of user,
b. For use cases that are of interest
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 35
©2016. Cengage Learning. All rights reserved.
Use Case Diagrams: Steps
3. For each potential communication need,
a. Select the use cases and actors to show and
b. Draw the use case diagram.
c. There are many software packages that can be
used to draw use case diagrams
4. Carefully name each use case diagram and
5. Then note how and when the diagram
should be used to review use cases with
stakeholders and users
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 36
©2016. Cengage Learning. All rights reserved.
Summary
This chapter is the first of three that focuses on modeling
functional requirements as a part of systems analysis
Use cases are the functions identified, the activities the system
carries out usually in response to a user request
Two techniques for identifying use cases are the user goal
technique and the event decomposition technique
The user goal technique begins by identifying end users called
actors and asking what specific goals they have when interacting
with the system
The event decomposition technique begins by identifying events
that occur that require the system to respond.
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 37
©2016. Cengage Learning. All rights reserved.
Summary
Three types of events include external, temporal, and state
events
Brief use case descriptions are written for use cases
The use case diagram is the UML diagram used to show the use
cases and the actors
The use case diagram shows the actors, the automation
boundary, the uses cases that involve each actor, and the
<<includes>> relationship.
A variety of use case diagrams are draw depending on the
presentation needs of the analysis
Systems Analysis and Design in a Changing World, 7 th Edition – Chapter 3 38
©2016. Cengage Learning. All rights reserved.