Com S 362 --- Object-Oriented Analysis and Design HOMEWORK 6: USE CASES (File $Date: 2003/03/05 16:40:27 $) Due: Problems 1-4 on March 10, 2003. This homework is an individual homework. That is, you should do the problems on your own, without directly collaborating with your teammates or others in class. This homework, problems relates to some of the basic concepts and skills we have been discussing in class; in particular, writing use cases. Read chapter 6 of Craig Larman's book Applying UML and Patterns (Second edition, Prentice-Hall PTR, Upper Saddle River, NJ, 2002). Also read chapter 3 of Martin Fowler with Kendall Scott's book UML Distilled (Addison-Wesley Longman, Inc., Reading, MA, 2000). Finally, as an example look at the web page for the StickSync project: http://www.cs.iastate.edu/~cs362/sticksync/usecases.shtml 1. (20 points) [Brief format use case "Cancel a Reservation"] Consider a reservation system for an bus company. Such a system allows the company's agents to make reservations for customers who want to travel by bus. Using the brief format, write a use case titled "Cancel a Reservation", which would involve an agent talking to the reservation system and a customer. Assume that the customer has an existing reservation that they want to cancel. Be sure your use case is written in an essential, UI-free style (see Larman's section 6.11). You only need to consider the "happy path". Although we'd prefer that these be typed, this can be handwritten if your handwriting is clear. 2. (40 points) [Casual format use case "Check Reservation Status"] Consider again a reservation system for an bus company. Using the casual format, write a use case titled "Check Reservation Status". Again in this use case the travel agent is talking to the reservation system and a customer who has called to check on one or more reservations that they may have made. (The customer wants to know that the reservation is in the system.) Consider as alternative scenarios what happens if (a) the reservation does not exist, and (b) a leg (trip between two cities) in the reservation has been canceled due to bad weather or breakdown of equipment. Be sure your use case is written in an essential, UI-free style. Although we'd prefer that these be typed, this can be handwritten if your handwriting is clear. 3. (70 points) [Fully dressed format use case "Make a Reservation"] Consider again a reservation system for an bus company. Using the fully dressed format, write a use case titled "Make a Reservation" for an agent making a reservation on behalf of a customer. You should consider at least two alternative scenarios for this use case: (a) the customer requests a destination that does not exist, (b) the customer decides that the price is too high. Be sure your use case is written in an essential, UI-free style. Although we'd prefer that these be typed, this can be handwritten if your handwriting is clear. 4. (10 points) [EBP guidelines] Consider again and bus company reservation system. For each of the following, write (i) either "yes" to indicate that this is an elementary business process (see Larman section 6.8), or "no", and (ii) briefly explain why. a. Change seat assignments for an existing reservation. b. Compute the sales tax for a payment. c. Delete a leg of the trip from the system (without doing anything else to existing reservations). d. Interpret a keystroke from the company's agent. e. Change the time of a reservation.