CS 160: Software Engineering

 

Sections 1 and 2

Spring Semester 2008

Department of Computer Science
San Jose State University
Instructor: Prof. Ron Mak

Assignment: Use cases

Assigned:

Tuesday, January 29

Due:

Tuesday, February 5

 

100 points

Supermarket checkout station

A modern supermarket checkout station is a computerized system. A checkout clerk must log in when coming on duty and later log out when going off duty.

 

When a customer arrives, the clerk uses the system’s scanner to read the barcode on each item the customer wishes to purchase. The system queries the product database to determine what the item is and its price, displays the price, and adds the price to the customer’s running total. If for some reason the scanner cannot read a barcode or the item isn’t in the product database, then the clerk must enter the price manually.

 

The customer chooses how pay using a keypad: by cash or by bank debit card. If paying by cash, the customer hands money to the clerk, who then must make change if necessary. If paying by debit card, the customer swipes the card at the keypad and enters the PIN. The checkout station contacts the customer’s bank for verification. If the customer specifies at the keypad that he or she wants cash back and enters the amount, the clerk must provide that amount in cash. In either case, after paying, the customer leaves with the purchases.

Assignment

  1. Determine the use cases, actors, and interactions for the supermarket checkout station and draw a UML use case diagram.
  2. Create written descriptions for two of the use cases.

 

You may use this Word form for the written descriptions: view it and download it.

 

Useful references:

http://en.wikipedia.org/wiki/Use_cases

 

http://alistair.cockburn.us/index.php/Use_cases,_ten_years_later

 

http://alistair.cockburn.us/index.php/Basic_use_case_template