18-06-2012, 11:05 AM
A Case Study: The International Film Video Store
CaseStudy.pdf (Size: 88.58 KB / Downloads: 219)
The International Film Video Store
This store was founded by a couple of friends who
like international cinema. The store has been
located near one of Toronto’s repertoire theatres
and has been in operation for four years.
Unfortunately, the store is barely scrapping a living
because of insufficient rentals, especially during the
summer when the neighbouring repertoire theatre is
closed.
Problem: “Increase video rentals”
What Are the Leading Alternatives?
Electronic solution, no physical store -- higher
development costs, lower operational costs;
Electronic solution, courier service -- OK for users
who rent in bulk;
Broaden collection to include more foreign
languages -- need selectors, suppliers;
Deliver videos to N (e.g., 10) locations around
Toronto; customers can pick up/drop off videos
there
Information Systems Analysis and Design csc340
2004 John Mylopoulos Case Study -- 6
Choose an Alternative
Suppose we decide to recommend the last
alternative.
This means that a customer chooses videos from a
web-based system, these videos are delivered to
the location closest to her, she returns the videos to
that location, and they are sent back to the video
store warehouse.
Page ‹#›
Information Systems Analysis and Design csc340
2004 John Mylopoulos Case Study -- 7
RSD: Describe Functional and Non-Functional Requirements
Describe each functional requirements in English.
Describe each non-functional requirement in English.
Describe data to be managed by the system.
Organize and number both functional and nonfunctional
requirements so that they can be referred to
later on.
Trace each functional requirement.
Indicate the strength of each requirement e.g., very
strong --> must have, weak --> could skip if things fall
behind.
Information Systems Analysis and Design csc340
2004 John Mylopoulos Case Study -- 8
RSD: NFRs
Security and privacy.
Reliability
Performance -- throughput, response time
…
Relate each of these to the UML diagrams you
include in appendices
Page ‹#›
Information Systems Analysis and Design csc340
2004 John Mylopoulos Case Study -- 9
RSD: System Interfaces, Data, I/O
Specify in the RSD:
Interface with courier DB: data exchanged;
Interface with credit card co DB: data exchanged;
Data to be managed by the system (customers,
rental items, rentals,…)
Information Systems Analysis and Design csc340
2004 John Mylopoulos Case Study -- 10
Modeling in UML: Business Processes
We start with the business processes to be supported
by the system; use state diagrams or activity diagrams
to model them:
Rent-Deliver-Pickup-Return-ReturnToStore-Remind;
Rent in detail (includes payment authorization with
credit card company);
Deliver once a day in detail (includes communication
with courier database)
Return to repository in detail (includes
communication with courier database)
Remind customer about overdue videos.
Page ‹#›
Information Systems Analysis and Design csc340
2004 John Mylopoulos Case Study -- 11
Use Cases
Use cases correspond roughly to the functional
requirements of the system.
Customer use cases: browse, select, choose, pay;
Employee use cases:
list of videos for each location (each day);
list of videos from each location each day;
remind customer electronically;
charge delinquent customer.
Manager use cases:
Report at the end of each week;
Report on dormant customers (once every
6months);
Systems person use cases: start system; get report
on failure,…
Information Systems Analysis and Design csc340
2004 John Mylopoulos Case Study -- 12
Documenting Use Cases
Describe each use case in English, including the
steps required, I/O,…
Model each use case in terms of one or more
sequence diagrams (normal case, exceptional
cases.)
Page ‹#›
Information Systems Analysis and Design csc340
2004 John Mylopoulos Case Study -- 13
What Kinds of Objects Are We Talking About?
RentalItem
VideoCp
DVDCp
Film Rental
Customer
Use CL to model constraints, pre/post-conditions to specify
Business rules, pre/post-conditions for operations.