Introduction to Application Analysis and Design, Autumn 2002
Reading material for these exercises:
Reading material for next week:
- Maciaszek: ch. 2.1.3 -2.1.5 (pp 37-45) object concepts, ch 2.2.4 (pp 57-63) class modeling,
ch 4.2 class modeling (pp 107-133) especially examples
- Holubs UML reference card is linked on the material page.
Tasks
1. Travel agency FarAway needs a system for marketing its products in WWW.
Users should be able not only to view the information but also to make reservations on the trips
and to post comments about their trips. Each tour will have a description.
This description contains the usual material presented in travel agency brochures and the accommondation choices.
Availability is also told. The customer gets a reservation number after making a reservation.
The reservation is affirmed by phone or by letter, when the customer has payed the reservation charge.
The customer gets the tickets after paying the whole trip.
Outline the context (system overview) diagram for the travel agency system.
Think what kind of user groups the system has and which other systems may be connected the system.
Consider also the services that establish the connection. You may find an example of a context diagram in
http://www.cs.helsinki.fi/u/laine/jossu/overall.gif.
2. Problems 1-3 in exercise 1 handled the information processing related to an exam.
Identify the stakeholders of the system and the most important connections between stakeholders and the system.
Draw the context diagram of the system.
3. Problems 4-5 in exercise 1 considered handling pizza orders in Pizzeria Alfonso.
Draw a use case diagram for the system to support the pizza taxi service.
Write a short description of each use case and provide some example cases.
Examples of use case descriptions
- Order reception:
The customer starts building her order by identifying some product from the menu and by entering the amount.
She may attach extras to the product. She continues by appending new products until the order is complete.
The price of the order is counted continuously.
She finishes the order by entering her user id and her name. She receives an estimate of the delivery time.
She accepts the delivery plan.
Example case: Daisy Duck contacts the system and gets the menu. She pics up Alfonso's Special pizza
and select extra mayonnaise as a supplement. She includes also a half liter Coca-Cola in her order.
She indicates that the order is ready. She gets the final price and enters her name and customer id.
The delivery address and the estimated delivery time (30 minutes) are shown to her. She accepts the
delivery.
- New customer:
The customer makes an order as described above, but he does not have a customer id.
Instead he enters personal information (name, address, phone number - must be currently reachalbe for checking)
He receives an estimate of the delivery time and a note telling that he will be contacted by phone
within 5 minutes. Shop assistant calls him and he confirms the order. The gets his customer id during the call and
later by mail.
Example case: Donald Duck enters his order: one extra large frutti di mare with extra carlic. He is not a registered customer thus he
gets a registration form to fill up. He enters his name (Donald Duck), address (Chicken Street 6, 3rd district, Duckburg), mobile phone number
and email address ( Donal.Duck@ducks.com). He gets an estimate of the delivery time and instructions.
The order waits to be confirmed. It queues for the shop assistant to make a call to Donald. She calls and Donald
accepts the order and receives his customer id (4231U01). The id will be posted to Donald later on.
4. In addition to the basic use cases the system must also handle exceptional cases and error situations,
which can usually be presented as extending the basic use cases.
Identify the most important exceptions for the use cases of task 3, and define which basic use cases they extend.
Add them into your use case diagram.
Exceptions:
:
- Order reception
- customer is un-registered
- customer has some registed troubles
- customer wants the order to be delivered to some other address than the one registered in her customer record
- Customer does not accept the delivery plan
- New customer
- customer breaks off without registering (time out)
- the given address does not exist
- phone number does not exist or it is outside delivery area
- tries to contact the phone number fail
- the person that receives the call does not confirm the order.
5. The class diagram below describes the data in an exercise system.
Draw an instance level object diagram of the following situation: The course TIKAPE contains the
tasks 1-3 in one task set. Peter har given two answers for task 1 and one answer for task 3. Lisa has
given two answers for task 1.
Answer:
The student edition of Rational Rose ja Plastic Lite are available in Department of CS Windows
environment and may be copied from http://www.cs.helsinki.fi/u/laine/softa/rosestuded.zip
and Plastic Lite (only class diagrams) from the same directory as file plastic_1_1_lite.exe.
4.11.2002 Harri Laine
|