Visual USE CASES - ASPE – SDLC
Transcript of Visual USE CASES - ASPE – SDLC
Visual USE CASES A “rose” by any
other name
Successful Project
Use Cases
Busin
ess R
ule
s
Perf
orm
ance R
equirem
ents
UI R
equirem
ents
I/O
Pro
tocols
Data
Fo
rmats
UI
Desig
n
The foundation upon which other
requirements are built
Which types of requirements can
be captured with Visual Use
Cases?
Business Requirements?
User Requirements?
Operating Requirements?
Functional Requirements?
Non-Functional Requirements?
A Use Case is:
• A contract between stakeholders of a
system and its behavior.
•A description of the system’s behavior under
various conditions.
•Describes, from the users’ point of view, a
complete sequence of events performed in
achieving a specific goal.
•A Scenario is an alternate path within a use
case
Uses Cases add Value when:
Named as User Goals that
the system will support (set
the scope)
Brainstorm the unhappy
paths and what to do about
them
Use Cases have 2 primary outcomes
Get stakeholders engaged
Get that warm and fuzzy
All those ##@&&## requirements to read just
gives me a whoppin’ migraine
A Use Case can be:
A simple narrative
A textual template
A flow chart
A sequence diagram
A Petri Net
Etc.
<Project ID Project Name> <activity> Use Case
Use Case ID:
Use Case Name:
Created By: Last Updated By:
Date Created: Date Last Updated:
Primary Actors: ><Stakeholders who 9or which) initiates an interaction with the
SuD – Who has the goal?>>
Goal: <<in context, i.e. includes limitations & exclusions>>
Scope:
<<Functional (features)
Design (Systems hardware & Software>>
Level: <<User Goals, Summary, Sub-Functions>>
Stakeholders & Interests:
Preconditions <<What must exist before this scenario initiates?>>
Minimal Guarantees <<What does the system promise, esp. upon failure?>>
Success Guarantees: <<Outcome of the Happy Path >>
Trigger: <<What initiates this scenario?>>
Main Success Scenario: <<Happy Path>>
Step NO. User System
Exceptions: <<Alternative Flows – a.k.a. error handling>>
Step NO. User System
Extensions: <<Sub-Routines – a.k.a. Includes>>
Step NO. User System
Post conditions: <<End results of all paths>>
Technology and Data
Variations:
<<What is done has the same end result but HOW it is done can
vary. E.g. : repay customer for returned goods.>>
Priority:
Releases:
Response Time:
Frequency of Use:
Channel to Primary Actor:
Secondary Actors: <<a.k.a. Supporting Actors>>
Open Issues:
Minimum Elements:
Preconditions
Actors
Goals
Trigger
Action(s)
Transfer of Control
Results/Post conditions
4 Waves of Iterations
Actor/Goal List:
4 Work Products
Vision from Sponsor
Actor/Goal List from Stakeholders
Design Scope Drawing
In/Out List
Happy path
Break Points (Identifying Exceptions)
Break Point Handling (Alternate Paths)
Wave 1
Actors & Goal List
First Universe Bank ATM
$
Welcome to First Universe Bank
Created By:
Date Created:
Version:
Last Updated BY:
DateJerry Jacobs
4/30/09
1.0 4/30/09
First Universe Bank ATM Vision
$
First Universe Bank
It is the goal of First Universe
Bank to improve it’s
competitive position and
reduce operating expenses by
offering it’s customers
account access and
transaction capabilities via
strategically located ATM
machines
First Universe Bank ATM FUNCTIONS
$
First Universe Bank
TMMNAITF
Improve
Competitive
Position
Reduce
Operating
Costs
ETC.
Deploy
ATMs
Based on ITIL, Business Analysis and the Enterprise Requirements Hierarchy, HP Educations Services U.S.
Brainstorm Features
First Universe Bank ATM FUNCTIONS
Welcome to
First
Universe
BankPerform
ATM
Transactions
$
First Universe Bank
First Universe Bank ATM FUNCTIONS
Validate,
Authenticate
Customer
Welcome to
First
Universe
BankPerform
ATM
Transactions
$
First Universe Bank
First Universe Bank ATM FUNCTIONS
Check for
Fraud
Validate,
Authenticate
Customer
Welcome to
First
Universe
BankPerform
ATM
Transactions
$
First Universe Bank
First Universe Bank ATM FUNCTIONS
Withdraw
Funds
Check for
Fraud
Validate,
Authenticate
Customer
Welcome to
First
Universe
BankPerform
ATM
Transactions
$
First Universe Bank
First Universe Bank ATM FUNCTIONS
Make
Deposit
Withdraw
Funds
Check for
Fraud
Validate,
Authenticate
Customer
Welcome to
First
Universe
BankPerform
ATM
Transactions
$
First Universe Bank
First Universe Bank ATM FUNCTIONS
Transfer
Funds
Make
Deposit
Withdraw
Funds
Check for
Fraud
Validate,
Authenticate
Customer
Welcome to
First
Universe
BankPerform
ATM
Transactions
$
First Universe Bank
First Universe Bank ATM FUNCTIONS
Balance
Inquiry
Transfer
Funds
Make
Deposit
Withdraw
Funds
Check for
Fraud
Validate,
Authenticate
Customer
Welcome to
First
Universe
BankPerform
ATM
Transactions
$
First Universe Bank
First Universe Bank ATM FUNCTIONS
Make
Payment
Balance
Inquiry
Transfer
Funds
Make
Deposit
Withdraw
Funds
Check for
Fraud
Validate,
Authenticate
Customer
Welcome to
First
Universe
BankPerform
ATM
Transactions
$
First Universe Bank
Create
Receipt
First Universe Bank ATM FUNCTIONS
Make
Payment
Balance
Inquiry
Transfer
Funds
Make
Deposit
Withdraw
Funds
Check for
Fraud
Validate,
Authenticate
Customer
Welcome to
First
Universe
BankPerform
ATM
Transactions
$
First Universe Bank
Create
Receipt
First Universe Bank ATM Actor/Goal List
Make
Payment
Balance
Inquiry
Transfer
Funds
Make
Deposit
Withdraw
Funds
Check for
Fraud
Validate,
Authenticate
Customer
Welcome to
First
Universe
Bank
$
Bank Systems
Perform
ATM
Transactions
Authenticate
Customer
Customer
ATM MAchine
Bank Systems
aPerform ATM
Transactions
Check for Fraud
Deposit Funds
Withdraw Funds
Make Payment
Balance Inquiry
Print Receipt
«extends»
«uses»
«extends»
«extends»
«extends»
«uses»
«uses»
«uses»
«uses»
«extends»
Transfer Funds
«uses»
Wave 2 The Happy Path
Use Case ID:
1.0
Use Case Name: Authenticate
Created By: J.Ulrich Last Updated By: Jerry Jacobs
Date Created: 11/15/08 Date Last Updated: 4/30/09
Actors: Customer
ATM
Bank
Description: Validate bank customer prior to allowing transaction
Trigger: Bank card inserted by customer
Preconditions: 1.Must have bank or credit card
2.ATM active
Post-conditions: 1.Card/PIN combination has been authenticated
Normal Flow: 1.Accept customer card
2.Prompt customer for PIN
3.Validate card number and PIN as valid combination
Alternative Flows: Invalid PIN
Lost Card
Stolen Card
Exceptions: Customer Authentication Fails 3 times
Includes:
Priority: 1
Frequency of Use: Once per visit
Business Rules:
Special Requirements: Must follow Verisign standards
Assumptions:
Notes and Issues:
Customer ATM
Created By:
Date Created:
Version:
Last Updated BY:
DateJerry Jacobs
4/30/09
1.0 4/30/09
$
First Universe Bank
Use Case ID Description1.0 ATM Card Validation
ATM is
active
Valid
Card/Pin
Combination
NO
Reported
Lost?
Reported
Stolen?
NO
NO
Less than
4 attempts
YES
Insert CardAccept and
scan Card
Validate Card/PIN
as valid
combination
Display PIN
entry
instructions
Doesn’t include
interaction w/
Bank Systems
Wave 3 The Unhappy Path
Wave 4 Failure Handling
VISUAL USE CASE DEMO
SUMMARY
Business Requirements
The capability to deliver <something> to <someone
or some group>
User Requirements
The ability for <someone> to <do something> <at
some time> <according to some rules>
Operating Requirements
Functional Requirements
<System name> shall <do what> to deliver <which
capability>
Non-Functional Requirements
First Universe Bank ATM Vision
$
First Universe Bank
It is the goal of First Universe
Bank to improve it’s
competitive position and
reduce operating expenses by
offering it’s customers
account access and
transaction capabilities via
strategically located ATM
machines
Create
Receipt
First Universe Bank ATM Actor/Goal List
Make
Payment
Balance
Inquiry
Transfer
Funds
Make
Deposit
Withdraw
Funds
Check for
Fraud
Validate,
Authenticate
Customer
Welcome to
First
Universe
Bank
$
Bank Systems
Perform
ATM
Transactions
Business Requirements
The capability to deliver <something> to <someone or some group>
Created By:
Date Created:
Version:
Last Updated BY:
DateJerry Jacobs
4/30/09
2.5 6/30/09
$
First Universe Bank
Use Case ID Description1.1 ATM Card Validation
Customer ATMBank
(Central Computer)
Display Welcome
Message with
instructions for card
insertion.
Scan Card
Accept PIN Entry
Pass Card number
and PIN to Bank
System for
Validation
Accept
Authentication
Data
Display PIN
entry
instructions
Authentication Data
Insert Card
Into ATM
Type PIN
number
ATM is
Active
24 x 7 x 365
Card is
STAR ATM
?
Eject Card
Display Invalid
Card
Instructions
Remove
Card
NOYES
PIN Entry
OK?
Correct PIN
Entry
NO
Press
ENTER
CANCEL key
Pressed?B
A
NO
YES
A
B
Keypad
Entry w/in
8 sec?
YES
Display Time
Out Message
for 10 Sec
B
NO
AU-1
UC-02
UC-03
Valid
Card/Pin
Combination
NOYES
Return Card
Less than
4 attempts
Reported
Lost?
Reported
Stolen?
NO
Return Lost/
Stolen
Message
Retain
Card
YES
YES
Los/t
Stolen
Message
Return
Invalid PIN
Message
NO
Invalid
PIN
Message
NO
Valid PIN Message
Card is valid
Options displayed
Return Valid
PIN
Message
YES
Drives features of
machine
Bank
(Central Computer)
AU-1
Customer ATMSTAR
(ATM Service Bureau)
On Us
?
Send Card/PIN
to Service
Bureau
Validate Card/
Pin, Determine
whether lost/
stolen
Return Card
Info
Service
Bureau
Data
Out
Validate Card/
Pin, Determine
whether lost/
stolen
Receive Card
info from
Service
Bureau
Service
Bureau
Data
In
Display PIN re-
entry instructions
Display
Menu
Display Retained
Card Screen
For 10 sec.
UC-02
UC-03
Created By:
Date Created:
Version:
Last Updated BY:
DateJerry Jacobs
4/30/09
2.5 6/23/09
$
First Universe Bank
Use Case ID Description1.1 ATM Card Validation
User Requirements
The ability for <someone> to <do something> <at some
time> <according to some rules>
Functional Requirements
<System name> shall <do what> to deliver <which capability>
IMPLEMENTATION
Get Consensus
Take one step at a time
Appendix A
Bibliography Texts
Kulak, Daryl and E. Guiney, 2000. Use Cases: Requirements in Context,
ACM Press
Cockburn, Alistair, 2001. Writing Effective Use Cases, Addison Wesley
Wiegers, Karl E, 2003. Software Requirements, 2nd ed., Microsoft Press
International Institute of Business Analysts, 2009. A guide to Business
Analysis Body of Knowledge, V 2.0, IIBA
Borland, 2009. Bringing Requirements to Life to Drive Collaboration and
Agreement
Webinars:
Bringing Requirements to Life, David Walker (Borland) & Keith Ellis
(IAG), 6/9/2009
Agile Business Analysis, Ellen Gottesdiener (EGB Consulting for IIBA),
1/20/2009
Web Links:
Petri Net
www.cise.ufl.edu/~fishwick/cap4800/pn1.ppt
Thank you for joining us!
Questions?
How to Claim Your PDU
• Go to ccrs.pmi.org/
• Search for ASPE as a Registered Education Provider. Our number is 2161
• At the bottom of our details page, select “See Provider’s Activities”
• Find the activity code stated by the moderator during the presentation: WS021511
• The seminars are Category 3 for one PDU