You are on page 1of 9

Use Cases

❚ What is a Use Case


❚ Components
❚ Defining a Use Case
❚ What should be included

CIS 320-03 1
What is a Use Case
❚ A story
❚ Not OO
❚ Primary means of recording requirements
❚ First used by Jacobson (1986)
❚ Typical observable interaction a user has with the
system in order to achieve a goal
❚ Used for discovery, recording, and communication
❚ Describes a function for both customer/user and
developer, e.g., in a word processor:
❙ Create a Table of Contents
❙ Format a paragraph

CIS 320-03 2
Components of a Use Case
❚ Actor
❙ Something with behaviour
❙ E.g., Bidder, computer system, EBAY
❚ Scenario: AKA “use case instance”
❙ A specific path through a use case
❙ Use Case is collection of related scenarios
(both successes and failures)
❚ Observable results

CIS 320-03 3
Use Case Format
❚ Many formats
❙ Black-box (what, not how)
❙ A paragraph or two
❙ Novella in length
❙ User-system response (dialogue)
❚ Formality
❙ Informal to Formal (brief, casual, fully dressed)
(template @ www.usecases.org)

CIS 320-03 4
Fully Dressed Format
❚ Primary Actor
❚ Stakeholder and Interests (contract)
❚ Preconditions (always true)
❚ Postconditions (on success)
❚ Main Scenario (success)
❚ Extensions (alternates)
❚ Special Requirements
❚ Technology and Data Variations
❚ Frequency of Occurrence

CIS 320-03 5
Defining a Use Case
❚ User Goals
❙ Find user goals
❙ Define use case for each
❙ Name use case based on goal
❚ Elementary Business Process (EBP)

CIS 320-03 6
Elementary Business Processes
❚ A task performed by
one person
in one place
at one time,
in response to a business event,
which adds measurable business value and
leaves the data in a consistent stat.,
e.g., bid on an auction. (Larman)
❚ Used to find dominant use cases

CIS 320-03 7
What should be included
❚ Determining Use Case set
❙ Reduce complexity
❙ Ease maintenance
❙ Increase comprehension
❙ Reduce time to understand
❚ Reoccurring sub-tasks should have their own
use cases
❚ Is subfunction goal a precondition for a number
of use cases?
e.g., Authenticate User
❚ Use EPB to filter out low level use cases
CIS 320-03 8
Process & Results
❚ Hard & Useful
❚ 10-100 in a ten-person-year project
❚ Acrimonious
❚ Always Incomplete
❚ Often under described
❚ Overly detailed
❙ CRUD (create, retrieve, update, delete)
CRUD = manage users use case

CIS 320-03 9

You might also like