Version
Date
Inception draft
9.10.2007
Inception second draft
24.10.200 7
Description First Draft, will be a base for the second draft
Author Group
Second draft, use cases revied
FULLY DRESSED USE CASE: RESERVE CAR Use Case Section
Comment
Use-case Name
Reserve Car
Scope
Car Reservation System
Level:
User-goal
Primary Actor
Staff/Manager
Stakeholders & Interest: Customer: Wants to reserve a car and fast service with minimum effort. Staff: Wants car reservation operations easily and quickly. Company: Wants accurate records of the cars and satisfy customer interests and wants to ensure that all the needed information is collected from the customer. Wants fast update of the car inventory. Manager: Wants to be able to quickly perform adding a car to the inventory and removing a car from the inventory. Preconditions:
Staff is identified and authenticated.
Success Guarantees:
Car record updated. Customer information is taken. Updated car
situation is prompted.
Main Success Scenario: 1.
Customer arrives at/ calls the office to rent a car.
2. Staff starts a new reservation. 3. Staff asks the brand and model of car, reservation time and delivery and return addresses. 4. Staff enters the properties of the car specified by the customer. 5. System displays the result of the search and available dates for reservation and price. 6. Customer approves the reservation process. 7.
Staff gets customer information.
8.
Staff enters the customer information to system.
9. System checks the validity of entered credit card information. 10. Staff confirms the reservation. 11. System updates the status of the car to “Reserved”.
Alternative Flows: a) At any time customer changes his/her mind. 1 staff cancels the reservation process. 3a. Customer has no idea about which car to reserve. 1. Staff searches the available cars for the period that customer wants. 2. Staff shows the list of available cars. 3. Customer chooses a car. 3a. Customer does not choose a car. 1. Customer leaves without renting a car.
1b. Staff asks customer for another car model 1. Customer changes model
1. Staff starts new reservation operation. 2. Customer leaves without reservation
4-8a) Staff enters the properties of the car wrongly by mistake. 1. Staff realizes that he/she entered wrongly. 1.a) Staff does not realize that he/she entered the entry wrongly and shows the result to the customer. 1. Customer realizes the mistake and wants Staff to correct the entry. 1a) Customer does not realize the mistake. 2. Staff clears the form and enters again.
5a.) Staff can’t find a suitable car for the customer. 1. Staff offers the upper model for the same price. 1a.) Staff can’t find either the demanded or upper model car. 1. Customer leaves without renting a car. 2. Customer accepts the offer. 2a.) Customer declines the offer and leaves. 5b.) Customer does not approve the price. 1. Staff shows the lower models with fewer prices. 2. Customer chooses one of the lower model cars. 2a.) Customer does not want to rent a lower model car. 1. Customer leaves without renting a car. 3. Staff starts a new reservation for that car.
10a Given credit card information is not valid. 1. Staff asks customer to give a valid Credit Card Information
Special Requirements: •
Large panel monitor. Text must be seen from 1 meter
•
Credit authorization response within 1 minute.
•
User-friendly system should be needed.
Technology and Data Variations List: •
Different account types for Staff, manager and administrator
•
Credit card is read by pos machine or credit card number is entered from keyboard.
•
Personal information is taken from customer via telephone.
Open Issues: •
Customer decides to pay by cheque or in cash.
•
Customer takes the car and never returns it back. Also the credit card is blocked.
Frequency of Occurrence: Occasionally
FULLY DRESSED USE CASE DESIGN: RECEIVE CAR Use case name: Receive car Scope: Car Rental System Level: User-goal Primary Actor: Staff/Manager Stakeholders and Interests: Staff: Wants to receive the car and fast service with minimum effort. Manager: Wants the receive process does not take much time. Company: Wants to accurately update the records Preconditions: Staff is identified and authenticated. Customer came to office. Success Guarantee: Car record is updated. Receipt is printed. Main Success Scenario 1.Customer returns the car. 2.Staff checks whether the car return conditions are satisfied. 3.Staff searches the system for rent record of the customer. 4.System returns the rent record. 5.Staff checks if the return date and reservation deadline matches. 6.Staff updates the rent record. 7.System deletes the rent record, and car state is set free.
Extensions 2a. Car is involved in a traffic accident.. 1.Customer gives the accident report. 1a. Customer does not have the accident report. 1. Service price is charged from the customer. 2. Car status is changed to at service. 2. Car status is changed to at service. 2b. Customer expressed that car is broken down. 1.A new car is reserved and delivered to the customer. 2.Broken
car is sent to service and car status is set to at service.
2c. Fuel level is below the required fuel level. 1.Customer is charged with a constant low fuel level fine. 4a. Rent record is not available. 1.Reservation record is checked. 2.Customer is asked to show receipt, so that it will be ensured that money is paid. 5a. Car is returned before return date. 1.Stoppage amount is calculated. 2.Unused day price is paid back without corresponding stoppage.
Special Requirements: Technology and Data Variations List: None Frequency of Occurrence: Occasionally Open Issues: -What are the tax law variations? -What modifications are needed to be done for different companies?
Casual Format Use Cases Cancel Reservation: Main Success Scenario: Customer contacts to the office, requesting a cancel of reservation. Reservation info is checked in the system and the reservation is cancelled. Alternate Scenarios: If the reservation info is not found in the system, system returns a warning message, which indicates that no matching reservation registry is found in the system. In that case, customer is informed that he does not have an active reservation at the moment and no cancel operation is necessary. If the cancel operation is requested less than 24 hours before the delivery date, customer is informed and charged the late cancellation fine. Fine is charged from the credit card whose information taken from the customer during the reservation process. Manage Rent Period Main Success Scenario: Customer contacts to the office, requesting to extend or reduce reservation period. Reservation info is checked in the system and after checking that no period conflictions occur between other reservations, reservation period is updated. Alternate Scenarios: If the reservation info is not found in the system, system returns a warning message, which indicates that no matching reservation registry is found in the system. In that case, customer is informed that he does not have an active reservation at the moment and a new reservation is made according to the requirements of customer.
If the reserved car is not available in case of an extension request, customer is informed and another (probably a higher model) car is provided for that period. If the customer requests to reduce reservation period, customer will be charged with a slight percentage of daily rental price for the number of days reservation is reduced. Manage Car: Main Success Scenario: Manager calls the system to add a new car. Manager enters the information of the car and registers the car to the system. Manager searches for a car in the system. If the car state is free, car is removed from the system.
Brief Format Use Cases Reserve Fleet: A customer who would probably be a company contacts to an office requesting to reserve multiple number of cars. The staff member uses the car rental system to reserve multiple numbers of cars. The system checks the availability of such reservation on given period of time and required cars. If customer confirms reservation, staff member adds customer information to reservation and saves the reservation. Set Service Period: In cases like break down, accident or reaching casual service km; car will be sent to service. Approximate service period of the car will be added to car description by staff. Deliver Car: A customer whose rent period begins arrives at an office to take his car. Payment is handled at this point. Customer pays the rental price and system prints the receipt and adds the payment type to customer account. System changes the car status from reserved to on rent after printing the receipt. Car is delivered to the customer afterwards. Deliver Fleet: A customer (probably with multiple drivers) whose rent period begins arrives at an office to take his fleet. Payment is handled at this point. Customer pays the rental price and system prints the receipt and adds the payment type to customer account. System changes the fleet status from reserved to on rent after printing the receipt, and updates the state of each car in the fleet. Fleet is delivered to the customer afterwards. View Car State: A cars current status may be required for several reasons. A staff member directly searches the system from cars VIN number or selects the car from car catalog. The system presents the information of the selected car. Receive Fleet:
A customer arrives at a return point with the fleet he rented. A staff member checks each car one by one whether they satisfy returning conditions. The system makes the checkout of the customer and updates state of each car in the fleet. Manage Car: Manager logs into system to add or remove a car. To add a new car, manager goes to add car page and enters the properties of the new car to be added and confirms the operation. The system adds the car to the car catalog. To delete a car, manager selects the car from catalog or by search. Car can be deleted from the system only if it is in free state. Manage Office: Administrator logs into the system to add or remove an office. To add a new office, administrator goes to add office page and enters the properties of the office. To create an office, at least one manager and one staff member should be assigned to the office. Manage User: Administrator logs into the system to add or remove a user account. To add a new user, administrator goes to create account page, enters personal information of the user, determines whether the new user is a manager or staff member and assigns the new user to an office. To delete a user account, administrator selects the user from the user catalog or by search and deletes the account.
Use Case Diagram
SUPPLEMANTARY SPECIFICATION DOCUMENT
Introduction: In our project we design and implement a car rental system, which will be used in car renting offices. The system keeps information about car and connects different offices through a network. Problem Statement: In the car renting company, processes like reservation and connection between two offices are managed by telephone calls between costumer-office and two different offices. This costs more in terms of time and money. In addition to that, hardcopy files were used to keep track of rented and available cars, which make workers’ life worse. Our system connects offices through network and controls the status of cars so it is much easier to control the information and status of cars. Summary of System Features:
• Rental Records •
Customer Management
• User Management (administrator, manager, staff) •
Payment Registry (cash, credit, check)
•
Reservation Records
•
Accounting Records (income, expenditure)
•
System administration for users: security, information tables High Level Goals and Problems of the Stakeholders.
High level goal
Priority
Problems and Concerns
Current Solutions
Fast and integrated renting process
High
Slow processing speed of the needs of the customer related
Building a car Rental software that can communicate with other shops
Getting access to car database easily and faster
Medium Difficulty in keeping track of the cars, reaching the record after some time, as they were foldered manually by Staff.
Building a car Rental software that keeps the record of the cars
User Level Goals The users (and external systems) need software to fulfill these goals. Staff: process reservations, handle return of the car, update car state, manage reservation and rental. Version
Date
Inception draft
9.10.2007
First Iteration of Elaboration
24.10.200 7
Description First Draft, will be a base for the second draft Second draft, Human factors removed
Author Group
System Administrator: add or remove staff or manager accounts Manager: add a new car record or remove a car record.
VISION 1. Other Requirements and Constraints Introduction This document is the repository of all Car Rental Software requirements not captured in the use cases. 2. Usability Speed, ease and error-free processing are paramount in sales processing, as the customer wishes to leave quickly.
3. Reliability If there is a failure to use credit card transfer machine, try to solve it with a local solution in order to complete a receive process. 4. Performance As mentioned under human factors, customers want to complete the “taking the rented car” or reservation process. 5. Supportability 5.1 Adaptability Our software will work in every shop. Adapting the software to new computers is not a problem. 5.2. Configurability Configuration is not a problem, as software does not need any hardware configuration
6. Implementation Constraints Software will be programmed in Java and XML will not be used. Excel or text file can be used for database of the car records.
7. Interfaces Noteworthy Hardware and Interfaces: •
Receipt printer
Software Interfaces: We will have different systems for different processes like making reservation, canceling reservation, car search and etc. so we need to have different interfaces for these different processes. 8. Information in Domains of Interest 7. Documentation
Read me text file will be available with the program. Vision Report will also be ready for First Iteration of Elaboration further detail.
24.10.200 7
First Draft, will be a base for the second draft
Group
8. Packaging Software will be programmed in Java and can be prepared as exe, jar (JRE should be installed to the system) or separate java files according to need of customer.
Business (Domain) Rules ID
Rule
Changability Source
Rule 1
Credit payment reversals may only be paid as a credit to the buyer’s credit account, not as a cash.
low
Credit Authorization Company Policy
Rule 2
If car is returned late, customer will be charged with 15% fine per day
Low
Credit Authorization Company Policy
Rule 3
Car is delivered to customer with fully loaded tank. Car is received from customer with fully loaded tank.
Low
Credit Authorization Company Policy
Rule 4
If customer does not return car back with fully loaded tank, the charge of missing amount of gas and the service fee is taken from customer.
Low
Credit Authorization Company Policy
Rule 5
If car rented to customer breaks down, a new car at the same model with the reserved car is given. All customer needs are served until customer gets a new car or rented car.
Low
Credit Authorization Company Policy
Rule 6
If reservation is cancelled in last 24 hours, 50% of the rent fee is taken from customer.
Low
Credit Authorization Company Policy
Requirements The requirements for the first iteration of the Car Rental System application follow:
Implement a basic, key scenario of the Reserve Car use case: customer contacts an office and staff communicating with the customer reserves a car for the customer for a specific period of time.
Implement a Start Up use case as necessary to support initialization needs of the iteration.
Nothing fancy or complex is handled, just a simple happy path scenario and the design and implementation to support it.
There is no collaboration with external services, such as a tax calculator, fine calculator, credit card authorization, accounting system.
Customer determines where the car will be delivered and returned and the reservation period.
Customers are registered to system and are determined afterwards by their driver’s license number if they are new or already have an account.
Car description includes properties of car. Included information is: brand, model, year, color, state and most importantly VIN number for the car to be determined explicitly.
A car has four states: free, at service, reserved, on rent.
In iteration-1 there is only one office, one manager, one staff, one type of car, there are no previously registered customers.
Simulate car reservation requiring no actual car description, other than a specified car group and an imaginary car.
Pricing regulations are not applied.
The design and implementation of the supporting UI, database, and so forth, would also be done, but is not covered in any detail.
Domain Model
System Sequence Diagrams
GLOSSARY Term
Definitions-information
Staff
The person responsible for hiring cars and communicating customer
Information
Details about cars: car brand, production date, plate no.
Administrator
Computer specialist who add / remove user. Also manages the system.
Format
Validation rules
Aliases
Shop
Offices that rents a car
Reservation Staff
Worker in shop who serves the customers
Manager
Director of the shop
Manage Car Service Period
Times for car to go washing and repair
Manage User
Adding a new user or deleting the existing one
Check Car
Controlling whether car is brought how it is given to customer
Confirm Car
If no problem was seen while checking car, then it is confirmed
Receive process
Process of taking car from the customer after rent period
Clean Car
Car that has no broken parts and brought to shop with full tank
Car Status Updated
Shows whether the car is available or not