Problem statement for the assignment
Car Rental (CR)
The purpose of the assignment is to develop a requirements analysis document for a car rental (CR)
application. This is an E‐commerce application to enable customers to rent cars over the Internet. The
customer can input car hire details and request the quotation for a car. After obtaining the quote, the
user can proceed with the car booking by supplying credit card details. These details will then be
validated and the application will email the confirmation of the car rental arrangement to the
customer’s chosen email address and then update the car rental database accordingly.
For the purpose of this assignment, the scope of the CR system is limited to the following functionality:
1. Customers should be able to request a quote for renting a car. To facilitate this they should be
able to enter the pick‐up and drop‐off locations they require, the pick‐up and drop‐off dates and
their age in order to obtain a list of available car types based on those search criteria.
2. The search results include details of vehicle types, prices for telephone booking, and prices for
online booking.
3. From the displayed search results, the customer should be able to request more detailed
information about a particular vehicle type, including vehicle makes and models in the chosen
type, the seating capacity, and the luggage capacity.
4. From the displayed search results, the customer should also be able to request the quote for
renting a chosen vehicle type to be emailed to him/her. To this end, the customer must provide
e‐mail address. Sending of email is confirmed to the customer.
5. From the displayed search results, the customer should also be able to proceed with booking a
car. After selecting this option, the customer will be able to check that the details for the rental
transaction are correct.
6. Prior to making the booking, the customer will be able to select from a few options including a
request for an excess reduction for an additional fee, a protection waiver against cancellation
and entry of a promotional code.
Some extras can also be specified, including additional drivers, baby capsules and baby seats.
7. The customer will need to be given other important information such as age restrictions, fuel
conditions and any other general restrictions, as well as any information on insurance details
and pick‐up instructions.
8. Still prior to making the booking, the customer will need to enter personal information (such as
name, address, telephone number and e‐mail address) as well as payment information (credit
card details).
9. When processing the booking request, the system will check the completeness and correctness
of the customer’s data entry (in particular, the credit card information). After successful
validation of entered data, the system will confirm the booking with a rental confirmation
number. As an additional confirmation of the booking, an e‐mail will be sent to the customer’s
e‐mail address.
In general, the CR system would have the functionality similar to other typical online car hire systems,
such as http://www3.travel.com.au/cars.html. For reference convenience, please consult the car rental
process employed by http://www3.travel.com.au/cars.html .
To gain additional domain knowledge, you can study pre‐packaged COTS (Commercial‐Of‐The‐Shelf)
solutions for car rental software, such as http://www.p‐c‐s.com.au/ and https://www.rentcentric.com/ .
Task One
Question 1
Identify the system Actors and provide a brief description of each actor role.
Question 2
Provide three usage scenarios for a customer renting a car.
Question 3: Use case diagram
Draw a use case model. The model should include the actors, the use cases, the relation between the
use cases and the actors and the relation between the use cases.
Question 4: Use case specification.
Write a Use Case specification for three main use cases that are shown on your use case model, one of
them should be to enable the customer to rent a car. The use case specification should contain the
following sections, use the provided template:
• Use case name
• Brief description
• Actors
• Preconditions (Entry Conditions)
• Main flow
• Alternative flows
• Exception flows
• Special Requirements
• Postconditions (Exit Conditions)
This project is an individual effort, so treat it as so, all the models should be created using Rational Rose.
The tasks should be organized and printed and I would not accept hand writing!!, also I would npot
accept any submission through Ritaj.
This task should be submitted on the lecture time on Monday 18/10/2010.
Good Luck