Documente Academic
Documente Profesional
Documente Cultură
www.shaeqkhan.com
Table of Contents
1. i. ii. iii. iv. 2. i. ii. iii. iv. v. 3. 4. i. Introduction ..................................................................................................................................... 6 Purpose: ............................................................................................................................................ 6 Scope: ............................................................................................................................................... 6 References: ....................................................................................................................................... 7 Overview:.......................................................................................................................................... 7 Overall Description ........................................................................................................................... 9 Product Perspective .......................................................................................................................... 9 Product Features and User Requirements ....................................................................................... 11 User and User Characteristics.......................................................................................................... 13 General Constraints ........................................................................................................................ 14 Assumption and Dependencies ....................................................................................................... 14 System Architecture ....................................................................................................................... 16 System Requirements..................................................................................................................... 18 Use Case Diagrams .......................................................................................................................... 18
Receptionist ............................................................................................................................................................. 18 Accountant............................................................................................................................................................... 19 Dispatch Department ............................................................................................................................................... 20 Fleet Inspection........................................................................................................................................................ 21 Administrator ........................................................................................................................................................... 22 Branch Manager ....................................................................................................................................................... 23
ii.
Page 2
www.shaeqkhan.com
Search Car........................................................................................................................................................ 44 Update Received Car ........................................................................................................................................ 45 Update Car Status ............................................................................................................................................ 46 Add Account .................................................................................................................................................... 47 Delete Account ................................................................................................................................................ 48 Modify Account ............................................................................................................................................... 49 Search Account ................................................................................................................................................ 51 Backup System ................................................................................................................................................. 52 Add Category ................................................................................................................................................... 53 Modify Category .............................................................................................................................................. 54 View category .................................................................................................................................................. 55 Delete Category ............................................................................................................................................... 56 Generate Report .............................................................................................................................................. 57 Remove Car ..................................................................................................................................................... 58 Modify Car ....................................................................................................................................................... 59 Add Car ............................................................................................................................................................ 60 Delete Customer .............................................................................................................................................. 61
iii. 5. i.
Page 3
www.shaeqkhan.com
Modify Account ............................................................................................................................................... 86 Search Account ................................................................................................................................................ 87 Backup System ................................................................................................................................................. 88 Add Category ................................................................................................................................................... 89 View Category.................................................................................................................................................. 91 Delete Category ............................................................................................................................................... 92 Generate Report .............................................................................................................................................. 93 Remove Car ..................................................................................................................................................... 94 Modify Car ....................................................................................................................................................... 95 Add Car ............................................................................................................................................................ 96 Delete Customer .............................................................................................................................................. 97
ii. iii.
6. External Interface Requirements ......................................................................................................... 107 i. User Interface Screens .................................................................................................................. 107
1. Login Screen ........................................................................................................................................................... 107 2. Add Customer ........................................................................................................................................................ 108 3. Add Category ......................................................................................................................................................... 109 4. Add Car .................................................................................................................................................................. 110 5. Add Account........................................................................................................................................................... 111 6. Issue Coupon.......................................................................................................................................................... 112 7. Dispatch Car ........................................................................................................................................................... 113 8. Book Car ................................................................................................................................................................ 114
7. i. ii.
Evolution ...................................................................................................................................... 116 Assumptions on which system is based ......................................................................................... 116 Anticipated changes: ..................................................................................................................... 116
Page 4
www.shaeqkhan.com
Introduction
Page 5
www.shaeqkhan.com
1. Introduction
i.
Purpose:
This document contains the software requirements for the Car Rental System CRS. The main purpose of a Car Rental System to be implemented is to manage information about Cars, Customers and the system users related to the company. This is the first version of the SRS document. The purpose of this document is to state all system requirements clearly for usage in the development stages ahead. This document is meant to be viewed by the project development team, users and the stakeholders. All requirements for the system have been stated clearly in the document and this is used to make sure that everyone related to the system directly or indirectly understands all requirements stated in this document.
ii.
Scope:
This document covers the entire system and all its subparts. The purpose of this system is as follows: Efficiency: This system provides quick addition, deletion or search for various types of data which are a part of the system. This decreases the process time for employees and manual search work that could take hours can be done in just a few seconds or minutes. Accurate Records: There is no fear of manipulation of records by unauthorized personnel. All records stored in the system are protected. Files in storage may catch fire or be spoilt in water. But data storage in repositories reduces those risks. Accountability: Any transaction made through the system is kept track of and in case anything goes wrong with customer dealings, the fault can be traced back to the origin very easily. Generating Reports: The system is capable of producing weekly and monthly reports on cars, customers and system users.
Page 6
www.shaeqkhan.com
iii.
References:
Dean Leffingwell and Don Widring, Managing Software Requirements: A Use Case Approach, Addison-Wesley, 2004. Sommerville book.
iv.
Overview:
In the document, the following things will be discussed ahead
Overall Description o The perspective of the product o Product Features and User Requirements o Users and user characteristics o General Constraints o Assumption and Dependencies System Architecture System requirements o Use case diagrams o Use case descriptions o Non functional requirements Analysis Model o Interaction Diagram o Class Diagram o Data dictionary User Interface Screens Evolution o Assumption on which system is based o Anticipated changes
Page 7
www.shaeqkhan.com
Overall Description
Page 8
www.shaeqkhan.com
2. Overall Description
The main purpose of this document is to give details about what the user can expect from the Car Rental System (CRS). This document provides an important overview of the system according to the requirements that have been given to us during the requirement analysis for this Car Rental System (CRS). In the next section, we introduce product perspective followed by description of product features and user requirements in section 2. User and user characteristic in section 3 followed by general constrains in section 4. In section 5 we have assumptions and dependencies.
i.
Product Perspective
Our company has been handed over the task to carry out the requirements analysis to implement a Car Rental System (CRS). We want this software to completely be a front desk system and hence will only be used by the salespeople and an Branch manager and administrator. We have realized that there are three ways to implement the Car Rental System (CRS) and they are stated as follows The existing software at the company can be upgraded to form the new Car Rental System (CRS). A new Car Rental System (CRS) can be created from scratch. We can follow the Component based development technique to create the system from scratch.
We believe that the best way to implement the Car Rental System (CRS) is to create a new one. The reasons are as follows In case we plan to upgrade the existing system, then we will have to work on integrating the system with a legacy system database. This might create problems for us since experts in the legacy system are not readily and cheaply available. We will be able to create a system of better quality. This will be possible if we review the faults in the old system and learn from the mistakes made during the various processes that were involved to create the old system. The new system will have better performance due to usage of new and time efficient data searching algorithms which will increase the efficiency of the workplace. The new system will provide a new user friendly Graphic User Interface (GUI) which will also help to increase the efficiency of the work place. The new system will be compatible with a new database that will be created along with it. A new database has to be created due to the increase in the amount and type of information that has to be stored.
Page 9
Car Rental System (CRS) www.shaeqkhan.com January 28, 2010 The new system will be able to undergo evolution in a much simpler way and will be more adaptable to the changing systems. The upcoming changes in the near future will be predicted and the system will be designed in a way to adapt to the changes that will occur over the years.
Figure 1: The above diagram shows the actors and the subsystems contained in the Car Rental System.
The system allows the stake holders to run an efficient business by providing company reports, stock inventory and sales information data. All these functionalities of the system provided in a timely and organized way will help the business to expand to generate more revenue and prevent losses.
Page 10
www.shaeqkhan.com
ii.
Page 11
www.shaeqkhan.com
When a customer will pay using a bank card rather than cash, it is necessary that a link is always maintained between the branch and bank for successful transaction. Data Backup System: In case the system goes down due to server crashes or power failure or any other calamity, all operations are being run such as updating data, carrying requests etc. will be saved to a backup system. All of this will then be copied on to the original database as soon as the system is up and running. The user requirements for the Car Rental System (CRS) has been listed as follows Branch manager:
1. The system shall allow Branch manager to add, modify, search and delete a car. 2. The system shall allow Branch manager to add, modify, view and delete a category. 3. The system shall allow Branch manager to manager to add, modify, view, search and delete a customer. 4. The system shall allow Branch manager to generate reports. Administrator: 1. The system shall allow administrator to add, modify, search and delete an account. 2. The system shall allow administrator to backup the system. Receptionist: 1. The system shall allow receptionist to book a car, modify, search and cancel booking. 2. The system shall allow to receptionist to add, modify, view, search and delete a customer. Accountant: 1. The system shall allow to accountant to receive payment. Fleet Inspection: 1. The system shall allow to fleet inspection to update received car. 2. The system shall allow to fleet inspection to report repair. Dispatch Department:
1. The system shall allow dispatch department to receive a car. 2. The system shall allow dispatch department to dispatch a car.
Page 12
www.shaeqkhan.com
iii.
The main people who have been identified as regular system users are as follows 1. 2. 3. 4. 5. 6. Branch Manager Administrator. Receptionist Accountant Fleet Inspection Dispatch Department
The users can be classified according to their frequency of use, subset of product functions used, technical expertise, security or privilege levels, educational level, or experience they have to the Car Rental System (CRS). Branch manager and administrator are supposed to have the following characteristics o On the whole, Branch manager and administrator spend comparatively lesser time than others on the system. Usually they would access the system when they are required to make reports or something else. o They should have high technical expertise. They have to be fluent in the system usage and should be well aware of all the system functionalities. o Branch manager and administrator have access to all security levels as they have to access and maintain the system occasionally. o Branch manager and administrator should have experience in handling a system of this domain. He must be able to identify errors caused due to improper data entries. Receptionist, Accountant, Fleet Inspection and Dispatch Department supposed to have the following characteristics o They spend the maximum amount of time on the system in the form of entering information, updating it or deleting the information. o They are not required to have technical expertise. The most they would need is to be computer literate to understand the working of the system and use it efficiently. o They have very low security access. They cannot access quite a few functionalities of the system except the ones they really have to use. o They should have good communication skills and even if they have no experience in system usage, its not a big problem. o They should have experience in this area with a minimum diploma in IT.
Page 13
www.shaeqkhan.com
iv.
General Constraints
These are some of the constraints that can be faced by the Car Rental System (CRS) Schedule and Resource Constraints o Time can be listed as a constraint. We are expected to finish this SRS document within 4 months with distractions in between due to the time demanded by the other courses. o There may be budget constraints where the allocated amount for implementation might not be enough. o To understand the things that were missing from the previous software, we may need the old requirements documents to identify the features that are required now. There is a possibility that the old system documents have been damaged due to improper storage or misplaced. Political Constraints o It may be a long procedure to acquire access to the Ministry database for customer identification. Technology Constraints o The branch may house defective hardware which can delay the deployment of our system.
v.
These are a few dependencies we have for the system The system is based dependent on ministry database. The system has efficient run time on Windows platform. The system is dependent on bank for processing payments on time.
Page 14
www.shaeqkhan.com
System Architecture
Page 15
www.shaeqkhan.com
3. System Architecture
Page 16
www.shaeqkhan.com
System Requirements
Page 17
www.shaeqkhan.com
4. System Requirements
i. Use Case Diagrams
Receptionist
Page 18
www.shaeqkhan.com
Accountant
Page 19
www.shaeqkhan.com
Dispatch Department
Page 20
www.shaeqkhan.com
Fleet Inspection
Page 21
www.shaeqkhan.com
Administrator
Page 22
www.shaeqkhan.com
Branch Manager
Page 23
www.shaeqkhan.com
ii.
1. Book Car Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases 1 Book Car Abdulaziz Alamoudi November 10, 2009 The user has logged in to the system. The car is booked for the customer and a booking ID is generated. Receptionist High 2. Modify booking. 3. Cancel Booking. 4. Search Booking. 5. Add customer. 6. Modify customer. 7. View customer. 8. Search customer. Basic flow Steps 1 The use case begins when the user selects Book Car. 2 The system prompts the user to enter the customers file number. 3 The user enters the customers file number and clicks OK. A1: Add Customer. A2: Search Customer. A3: Modify Customer. A4: View Customer. 4 The system displays the booking screen along with the discount offer. A5: The user entered an invalid file number. 5 The user selects the type of car in the checkbox that contains: o Sports car. o SUV. o Station wagon. o Other car types. The user enters the start/end date of car rental. 6 The system displays cars available with the faire per period. A6: No cars available.
Page 24
www.shaeqkhan.com January 28, 2010 7 The user selects the car the customer requests. 8 The system displays a confirmation screen that contains: The car rented. The start/end date. The amount the customer has to pay. The discount offered. 9 The user confirms the criteria. 10 The use case ends. Alternate Flow: A1 (Add Customer) 1 The Add Customer use case is executed. 2 The flow goes to step 4 of the primary flow. Alternate Flow: A2 (Search Customer) 1 The user selects Search Customer 2 The Search Customer use case is executed. 3 The flow goes to step 4 of the primary flow. Alternate Flow: A3 (Modify Customer) 1 The Modify Customer use case is executed. 2 The flow goes to step 4 of the primary flow. Alternate Flow: A3 (View Customer) 1 The View Customer use case is executed. 2 The flow goes to primary flow, step 4. Alternate Flow: A5 (Invalid File Number) 1 The system displays a message that the entered file doesnt exist. 2 The user confirms the message. 3 The flow returns to step 3 of the primary flow. Alternate Flow: A6 (No Cars Available) 1 The system displays a message that there are no cars available. 2 The user confirms the message. 3 The flow returns to step 5 of the primary flow.
Page 25
www.shaeqkhan.com
2. Modify Booking
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
2 Modify Booking Abdulaziz Alamoudi November 17, 2009 A valid booking must exist in the customers file. - The return date of the booked car is changed. - The car booked might be changed. Receptionist Medium. 4. Search Booking Basic Flow Step Number Steps 1 The use case begins when the user selects Modify Booking. 2 The system prompts the user to enter the customers booking number. A1: Search Booking. 3 The user enters the booking number and clicks View. A2: Invalid Booking Number. 4 The system displays the booking profile. 5 The user changes the required information: Return date. Car rented. 6 The system generates a confirmation message. 7 The user confirms the message. 8 The use case ends. Alternate Flow: A1 (Search Booking) 1 The Search Booking use case is executed. 2 The flow goes to the basic flow, step 3. Alternate Flow: A2 (Invalid Booking Number) 1 The system displays a message that the entered booking number doesnt exist. 2 The user confirms the message. 3 The flow returns to the basic flow, step 2.
Page 26
www.shaeqkhan.com
3. Cancel Booking
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
3 Cancel Booking Abdulaziz Alamoudi November 17, 2009 - The car must be booked. - The receptionist must enter the booking number. The car booking is canceled. Receptionist Medium. 4. Search Booking Basic Flow Step Number Steps 1 The use case begins when the user enters the customers booking number. A1: Search Booking. 2 The system displays the booking profile. A2: The booking number doesnt exist. 3 The user cancels the booking. 4 The system generates a confirmation message. 5 The user confirms the message. 6 The use case ends. Alternate Flow: A1 (Search Booking) 1 The Search Booking use case is executed. 2 The flow goes to the basic flow, step 2. Alternate Flow: A2 (The booking number doesnt exist) 1 The system displays a message that the entered booking number doesnt exist. 2 The user confirms the message. 3 The flow returns to the basic flow, step 1.
Page 27
www.shaeqkhan.com
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s)
Successful Post Condition Actors Priority Related Use Cases Flow of Events
4 Search Booking Abdulaziz Alamoudi November 17, 2009 In the case that the customer lost the booking number, the receptionist needs to enter the customers name or mobile number in the required field. The booking file is viewed. Receptionist Low. 2. Modify Booking. 3. Cancel Booking. Basic Flow Step Number Steps 1 The system prompts the user to enter: Customers phone number. Customers driving license number. Customers name. 2 The user enters the required information. 3 The system displays the profile. The booking doesnt exist. 4 The use case ends. Alternate Flow: A1 (The booking doesnt exist) 1 The system displays a message that the booking doesnt exist. 2 The user confirms the message. 3 The flow goes to the basic flow, step 1.
Page 28
www.shaeqkhan.com
5. Add Customer
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s)
Flow of Events
5 Add Customer Abdulaziz Alamoudi November 10, 2009 When a customer wants to book a car and he doesnt have a previous instantiated account, then the receptionist adds a customer. The customer is added to the system. Receptionist Branch Manager High. 1. Book Car. 6. Modify Customer. 7. View Customer. 8. Search Customer. Basic Flow Step Number Steps 1 The use case begins when the user clicks Add Customer. 2 The system displays the New Customer screen and prompts the user to enter the required information: Name. National ID. Driving License. Offered Discount. Address. Occupation (Job). Company. 3 The user enters the required information. 4 The system displays a confirmation message to confirm the criteria. A1: The user missed a required area. A2: The information already exists. 5 The user confirms the message. 6 The use case ends. Alternate Flow: A1 (The user missed a required area) 1 The system prompts the user that he didnt enter required information. 2 The user enters the information. 3 The flow returns to the basic flow, step 4. Alternate Flow: A2 (The information already exists) 1 The system displays a message that the
Page 29
www.shaeqkhan.com January 28, 2010 information already exists. 2 The user confirms the message. 3 The system displays the duplicated information. 4 The user might change the information. A3: Search Customer. 5 The flow returns to the basic flow, step 2. Alternate Flow: A3 (Search Customer) 1 The Search Customer use case is executed. 2 The use case ends.
Page 30
www.shaeqkhan.com
6. Modify Customer
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s)
Successful Post Condition Actors Priority Related Use Cases Flow of Events
6 Modify Customer Abdulaziz Alamoudi November 10, 2009 When the customer requests to book a car, he might want to change some of the information existing in his file like a mobile phone or an address. The customer file is modified and the old data is updated. Receptionist Branch Manager Low. 1. Book Car 8. Search Customer Basic Flow Step Number Steps 1 The use case begins when the user clicks Modify Customer and enters the customers file number. A1: Search Customer. 2 The system displays the customers profile. 3 The user changes the required information and clicksOK. 4 The system displays a confirmation message. 5 The user confirms the message. 6 The use case ends. Alternate Flow: A1 (Search Customer) 1 The Search Customer use case is executed. 2 The use case ends.
Page 31
www.shaeqkhan.com
7. View Customer
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s)
Successful Post Condition Actors Priority Related Use Cases Flow of Events
7 View Customer Abdulaziz Alamoudi November 10, 2009 When the customer requests to book a car, the user might want to view the customers file to validate specific information. The customers file is displayed to the user. Receptionist Low. 1. Book Car Basic Flow Step Number Steps 1 The use case begins when the user clicks View Customer in the booking screen. 2 The system displays the customers file. 3 The user clicks OK when he finishes checking the file. 4 The use case ends.
Page 32
www.shaeqkhan.com
8. Search Customer
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s)
Flow of Events
8 Search Customer Abdulaziz Alamoudi 10 November, 2009 When the customer requests booking a car in the case that the customer forgot his file number the user will search using the customers phone number or name. The system displays the customers file to the user. Receptionist Branch Manager High 1. Book Car. 5. Add Customer. 6. Modify Customer. Basic Flow Step Number Steps 1 The use case begins when the user selects Search Customer. 2 The system displays a search engine screen that contains the fields: Name. Driving License. National ID. Phone Number. 2 The user enters the customers searching information name and clicks Search. 3 The system displays a message that the file was found. A1: The file is not found. 4 The user clicks on the file icon. 5 The system displays the file. 6 The user clicks OK. 7 The use case ends. Alternate Flow: A1 (The file is not found) 1 The system displays a message that the file is not found. 2 The user confirms the message. 3 The flow returns to basic flow, step 2.
Page 33
www.shaeqkhan.com
9. Receive Payment
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases
Flow of Events
9 Receive Payment Abdulaziz Alamoudi 17 November, 2009 The customer pays the accountant the amount of money required. The accountant issues a coupon for the customer and settles the bill afterwards. Accountant High 10.Transfer Fund. 11. Settle Bill. 12. Issue Coupon. Basic Flow Step Number Steps 1 The use case begins when the user enters the booking number. 2 The system displays the booking file along with the payment. A1: Settle Bill. A2: Issue Coupon. Alternate Flow: A1 (Settle Bill) 1 The Settle Bill use case is executed. 2 The use case ends here. Alternate Flow: A2 (Issue Coupon) 1 The Issue Coupon use case is executed. 2 The use case ends here.
Page 34
www.shaeqkhan.com
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
10 Transfer Fund Abdulaziz Alamoudi 10 November, 2009 The customer might use a credit card for the payment. The funds are transferred to the bank account. Bank Server Medium 9. Receive Payment Basic Flow Step Number Steps 1 The use case begins when the user establishes a connection with the bank server. E1: There is no connection. 2 The user enters the account number and the payment amount. 3 The system validates the information and sends it to the bank server. A1: Invalid Account Number. 4 The bank server receives the information. 5 The funds are transferred. 6 The bank server sends a confirmation message. 7 The user confirms the message. 8 The use case ends. Alternate Flow: A1 (Invalid Account Number) 1 The system displays a message that the account number doesnt exist. 2 The flow returns to primary flow step 2. Error Flow: E1 (There is no connection) 1 The system displays a message that there is no connection with the bank server. 2 The user confirms the message. 3 The use case ends in this position.
Page 35
www.shaeqkhan.com
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
11 Settle Bill Abdulaziz Alamoudi 17 November, 2009 The customer must pay the remaining payment when returning the car. The bill is settled and the customers file is legally cleared from any additional payment. Accountant. High 9. Receive Payment 10. Transfer Fund. Basic Flow Step Number Steps 1 The use case begins when the user selects Settle Bill. 2 The system prompts the user to enter the booking number. 3 The user enters the booking number. 4 The system displays the remaining payment. A1: There is no additional payment. 5 The user confirms the bill. 6 The bill is printed. 7 The use case ends. Alternate Flow: A1 (There is no additional payment) 1 The system displays a message that there is no additional payment. 2 Te user confirms the message. 3 The flow goes to basic flow, step 5.
Page 36
www.shaeqkhan.com
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
12 Issue Coupon Abdulaziz Alamoudi November 17, 2009 The payment of must be received. The coupon is issued. Accountant High 9. Receive Payment Basic Flow Step Number Steps 1 The use case begins when the user clicks Issue Coupon after receiving the payment. 2 The system displays the coupon containing the information regarding the rental: Car rented. Rent/Return date. Coupon Number. Customer Number. Booking Number. Payment. 3 The user clicks Print Coupon. 4 The coupon is printed. 5 The use case ends.
Page 37
www.shaeqkhan.com
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
13 Receive Car Shaeq Khan December 5, 2009 Fleet Inspection has approved the cars usage by customers. The information about the cars availability is updated. Dispatch Department Medium 15. Update Record 16. Issue Form Basic Flow Step Number Steps 1 The use case begins when the user clicks Receive Car. 2 The system prompts the user to enter the customer ID and booking number. 3 The user enters the required information. A1: Information entered is invalid. A2: Update record for the car A3: Customer does not exist. A4: Invalid Booking number. 4 The system displays a confirmation message. 5 The user confirms the message. - A5: Customer requests for a copy of the form 6 The use case ends. Alternate Flow: A1 (Information entered is invalid) 1 The system displays a message that the information entered by the user is not of the same type of information accepted by the info field. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Alternate Flow: A2 (Update Record for the car) 1 The use case 15 Update Record is executed 2 The flow goes back to basic flow, step 4 Alternate Flow: A3 (Customer does not exist) 1 The system displays a message that the customer with the entered ID does not
Page 38
www.shaeqkhan.com January 28, 2010 exist in the system. 2 The user confirms the message. 3 The use case 8 Search Customer is executed 4 The flow goes back to basic flow, step 2 Alternate Flow: A4 (Invalid Booking number) 1 The system displays a message that the booking number entered is invalid. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Alternate Flow: A5 (Customer requests for a copy of the form) 1 The use case 16 Issue Form is executed 2 The use case ends.
Page 39
Car Rental System (CRS) 14. Dispatch Car Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
www.shaeqkhan.com
14 Dispatch Car Shaeq Khan December 5, 2009 Fleet Inspection has approved the cars usage by customers. The car has been handed over to the customer. Dispatch Department High Issue Form Basic Flow Step Number Steps 1 The use case begins when the user clicks Dispatch Car. 2 The system prompts the user to enter the customer ID and booking number. 3 The user enters the required information. A1: Information entered is invalid. 4 The system displays a confirmation message for a valid booking. A2: Customer does not exist. A3: Invalid Booking number. 5 The user confirms the message. 6 Use case number 16 Issue form is executed. 7 The use case ends. Alternate Flow: A1 (Information entered is invalid) 1 The system displays a message that the information entered by the user is not of the same type of information accepted by the info field. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Alternate Flow: A2 (Customer does not exist) 1 The system displays a message that the customer with the entered ID does not exist in the system. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Alternate Flow: A3 (Invalid Booking number) 1 The system displays a message that the booking number entered is invalid. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2
Page 40
www.shaeqkhan.com
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
15 Update Record Shaeq Khan December 5, 2009 The dispatch department has received the car from the fleet inspection department. The availability status of the car has been updated. Dispatch Department Medium 13 Receive Car Basic Flow Step Number Steps 1 The use case begins after the user clicks Recieve Car. 2 The system prompts the user to enter the category of the car and license plate number. 3 The user enters the required information. A1: Information entered is invalid. 4 The system displays a confirmation message stating that the car exists in the system. A2: Car not found. 5 The user confirms the message. 6 The system prompts the user to update the car. 7 The user makes changes in the previous data and saves the changes. 8 The use case ends. Alternate Flow: A1 (Information entered is invalid) 1 The system displays a message that the information entered by the user is not of the same type of information accepted by the info field. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Alternate Flow: A2 (Car not found) 1 The system displays a message that the car with the entered license plates and under the category does not exist. 2 The user confirms the message. 3 The flow goes back to basic flow, step 3
Page 41
Car Rental System (CRS) 16. Issue Form Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
www.shaeqkhan.com
16 Issue Form Shaeq Khan December 5, 2009 The dispatch department has verified the user and checked the availability of the car A form has been issued to the customer Dispatch Department High 13 Receive Car 14 Dispatch Car Basic Flow Step Number Steps 1 The use case begins after the user clicks Dispatch Car. 2 The system retrieves all required information from the database that is required to put in the form. - A1: Information not found in Database 3 The system generates the form and displays it to the user. 4 The user prints the form for the customer for record. - E1: Printer out of service. 5 The use case ends. Alternate Flow: A1 (Information not found in Database) 1 The system displays a message that all essential information for the form was not found in the database. 2 The user confirms the message 3 The use case 6. Modify Customer is executed 4 The flow goes back to basic flow, step 2 Error Flow: E1 (Printer out of service) 1 The system displays a message that the printer is currently out of service. 2 The user confirms the message. 3 The use case ends.
Page 42
www.shaeqkhan.com
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
17 Report Repair Shaeq Khan December 5, 2009 The car has been handed over to the fleet inspection by the dispatch department Any repair done to the car is successfully recorded. Fleet Inspection Medium 18 Search Car 20 Update Car Status Basic Flow Step Number Steps 1 The use case begins when the user clicks Report Repair. 2 The use case 18 Search Car is executed. 3 The system prompts the user to enter the cost of repair 4 The user enters the cost of repair. A1. Cost entered is more than SR10,000 5 The system displays a message that the cost entered has been added to the cars record. 6 The user confirms the message. 7 The system runs the use case 19 Update Car Status. 8 The use case ends. Alternate Flow: A1 (Cost entered is more than SR10,000) 1 The system displays a message that the cost entered for repairing is more than SR 10,000 which need special permission from the branch manager. 2 The user confirms the message. 3 The flow goes back to basic flow, step 6
Page 43
Car Rental System (CRS) 18. Search Car Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
www.shaeqkhan.com
18 Search Car Shaeq Khan December 5, 2009 The car has been added to the database by the branch manager The actor can view all information related to the car Fleet Inspection Medium None Basic Flow Step Number Steps 1 The use case begins after the user clicks Report Repair 2 The system prompts the user to enter the category of the car and license plate number. 3 The user enters the required information. A1: Information entered is invalid. 4 The system displays a confirmation message stating that the car exists in the system. A2: Car not found. 5 The user confirms the message. 6 The use case ends. Alternate Flow: A1 (Information entered is invalid) 1 The system displays a message that the information entered by the user is not of the same type of information accepted by the info field. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Alternate Flow: A2 (Car not found) 1 The system displays a message that the car with the entered license plates and under the category does not exist. 2 The user confirms the message. 3 The flow goes back to basic flow, step 3
Page 44
Car Rental System (CRS) 19. Update Received Car Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
www.shaeqkhan.com
19 Update Received Car Shaeq Khan December 5, 2009 The car has been handed over to the fleet inspection by the dispatch department The status of the car is changed to under maintenance Fleet Inspection Medium None Basic Flow Step Number Steps 1 The use case begins when the user clicks Update Received Car. 2 The system prompts the user to enter the category of the car and license plate number. 3 The user enters the required information. A1: Information entered is invalid. 4 The system displays a confirmation message stating that the car exists in the system. A2: Car not found. 5 The user confirms the message. 6 The system asks the user to enter a status for the received car. 7 The user selects the status for the car under maintenance, discarded or available. 8 The system displays a message that the status of the car has been updated. 9 The user confirms the message. 10 The use case ends. Alternate Flow: A1 (Information entered is invalid) 1 The system displays a message that the information entered by the user is not of the same type of information accepted by the info field. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Alternate Flow: A2 (Car not found) 1 The system displays a message that the car with the entered license plates and under the category does not exist. 2 The user confirms the message. 3 The flow goes back to basic flow, step 3
Page 45
Car Rental System (CRS) 20. Update Car Status Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition. Related Use Case Actors Priority Flow of Events
www.shaeqkhan.com
20 Update Car Status Yazeed 30-Nov-09 User has login successfully and there is an existed car. User updates the car status. 17.Report Repair. Fleet Inspection. High Basic Flow Step Number Steps 1 Use case starts when the user choose the option of update car status. 2 System asks the user to enter the file number of the car. 3 The user enters the file number. A1: Invalid File Number. 4 The system prompts the user to change the car status.(Available- not availableFreezing). 5 The user changes the car status. A2: Invalid status. The system shows a confirmation message to the user.
7 8
Alternate Flow A1: Invalid file number 1 The system shows a message to the use about the wrong file number. 2 The user confirms the message and the flow returns to step 3. A2: Invalid Status. 1 The system shows a message to the user about the invalid car status. 2 The user confirms the message and the basic flow returns back to step 5.
Page 46
www.shaeqkhan.com
Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
21 Add account Shaeq Khan December 5, 2009 Administrator must be logged in An account must be created for a system user Administrator Medium None Basic Flow Step Number Steps 1 The use case begins when the user clicks Add Account. 2 The system prompts the user to enter all the essential information for creating an account like name, employeeID, type of account etc 3 The user enters the required information. A1: Information entered is invalid. 4 The system displays a confirmation message stating that the account has been created successfully. E1: Unable to access database 5 The user confirms the message. 6 The use case ends. Alternate Flow: A1 (Information entered is invalid) 1 The system displays a message that the information entered by the user is not of the same type of information accepted by the info field. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Error Flow: E1 (Unable to access database) 1 The system displays a message that the system is not able to access the database to make any additions or modifications 2 The user confirms the message. 3 The use case ends
Page 47
www.shaeqkhan.com
22 Delete account Shaeq Khan December 5, 2009 Administrator must be logged in An account will be deleted from the system Administrator Medium None Basic Flow Step Number Steps 1 The use case begins when the user clicks Delete Account. 2 The system prompts the user to enter name, employeeID, and the type of account 3 The user enters the required information. A1: Information entered is invalid. 4 The system displays a confirmation message stating that the account exists in the system A2: Account does not exist 5 The user confirms the message. 6 The system then informs the user that the account is going to be deleted from the system A3: User cancels the operation 7 The user accepts the message 8 The use case ends. Alternate Flow: A1 (Information entered is invalid) 1 The system displays a message that the information entered by the user is not of the same type of information accepted by the info field. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Alternate Flow: A2 (Account does not exist) 1 The system displays a message that the system does not contain any account with the entered information. 2 The user confirms the message. 3 The use case 24 Search Account is executed 4 The use case ends Alternate Flow: A3 (User cancels the operation) 1 The system informs the user that they have canceled the operation 2 The user confirms the message 3 The use case ends
Page 48
Car Rental System (CRS) 23. Modify Account Use Case Number Use Case Name Author/Source Date of Creation Precondition(s) Successful Post Condition Actors Priority Related Use Cases Flow of Events
www.shaeqkhan.com
23 Modify account Shaeq Khan December 5, 2009 Administrator must be logged in An account will be modified in the system Administrator Medium None Basic Flow Step Number Steps 1 The use case begins when the user clicks Modify Account. 2 The system prompts the user to enter employeeID, and the type of account 3 The user enters the required information. A1: Information entered is invalid. 4 The system displays a confirmation message stating that the account exists in the system A2: Account does not exist 5 The user confirms the message. 6 The use case 24 Search Account is executed 7 The system displays the information of the employee and asks the user to make changes as required 8 The user makes all the necessary changes. 6 The system then informs the user that the account is going to be modified in the system A3: User cancels the operation 7 The user accepts the message 8 The use case ends. Alternate Flow: A1 (Information entered is invalid) 1 The system displays a message that the information entered by the user is not of the same type of information accepted by the info field. 2 The user confirms the message. 3 The flow goes back to basic flow, step 2 Alternate Flow: A2 (Account does not exist) 1 The system displays a message that the system does not contain any account with the entered information.
Page 49
www.shaeqkhan.com 2 The user confirms the message. 3 The use case ends
Alternate Flow: A3 (User cancels the operation) 1 The system informs the user that they have canceled the operation 2 The user confirms the message 3 The use case ends
Page 50
Car Rental System (CRS) 24. Search Account Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition` Actors Related Use Case Priority Flow of Events
www.shaeqkhan.com
24 Search Account Yazeed 28-Nov-09 Administrator has login successfully. Administrator has found the account that he searched for. Administrator - 22.Delete Account. - 23.Modify Account. medium Basic Flow Step Number Steps 1 Use case starts when the administrator choose the option search account. 2 System asks the administrator category of the user(accountant, receptionist ,,etc) to search for it. 3 The administrator chooses the category of the user. A1: Invalid Category. 4 The system prompts the Administrator to enter ID of the user. A2: Incorrect ID. 5 The administrator enters the ID. 6 The system shows the account for the user. The use case ends E1: User not found. Alternate Flow A1: Invalid Category: 1 The system shows a message to the administrator to re-enter the category 2 The administrator confirms the message 3 The basic flow returns to step 3. Alternate Flow A1: Incorrect ID. 1 The system displays a message to the administrator to re-enter the ID. 2 The administrator confirms the message. 3 The basic flow returns to step 4. E1:User not found. 1 The system shows a message that user not found 2 The user confirms the message the use case ends.
Page 51
Car Rental System (CRS) 25. Backup System Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition Actors Priority Flow of Events
www.shaeqkhan.com
25 Backup System Yazeed 28-Nov-09 Administrator has log in successfully The files have been completely backup and they are in the required disk. Administrator Low . Basic Flow Step Number Steps 1 Use case starts when the administrator select the option backup system. 2 The System asks the administrator to choose data that he wants to backup. 3 The administrator chooses the required files. 4 The system : - Checks memory size. - Shows a confirmation message. A1: Insufficient memory. E1: Backup is not available. 5 The administrator confirms the message 6 The system shows information about the process and use case ends. Alternate Flow A1: Insufficient memory size. 1 The system displays the message that asks the administrator to reduce data size. 2 The administrator confirms the message and the flow returns to step 3. Error Flow E1: Backup is not available. 1 System shows the message that the backup is not reachable. 2 The administrator confirms the message and the use case ends here
Page 52
Car Rental System (CRS) 26. Add Category Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition Actors Priority Flow of Events
www.shaeqkhan.com
26 Add Category. Yazeed 29-Nov-09 Manager has login successfully. The category is added and it is available to be added to cars. Branch Manager. Medium. Basic Flow Step No. Steps 1 The use case begins when the manager selects the option add category. 2 System asks the manager to enter data of the category which includes: - Name. - Rates. 3 The manager enters the data of the category. A1: incomplete information. A2:Wrong piece of information. The system shows a confirmation message. The manger confirms the message and the use case ends.
4 5
1 2
Alternate Flow A1: Incomplete information The system shows a message to the manger to complete the missed data. The manager confirms the message and the flow returns to step 3. Alternate Flow A2: Wrong piece of information. The system displays the message saying a specific entered information cannot be accepted. User confirms the message and the flow returns back to basic flow step 3.
1 2
Page 53
www.shaeqkhan.com
Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition Actors Related Use Case Priority Flow of Events Step Number 1 2
27 Modify Category Yazeed 30-Nov-09 There is an existed category in the system. - The category is modified . The modification affects cars which are included in the category. Branch Manager. 28.View Category. 29.Delete Category. Medium. Basic Flow Steps Use case starts when the user select the option modify category. The system asks the user to enter the name of the category. The user enters the name of the category. A1: Invalid name. 4 5 6 7 The system executes View Category use case. The user changes required fields. The system shows a confirmation message if the modification is done. The user confirm the message and the use case ends. Alternate Flow A1: Invalid name. The system shows a message to the user to reenter the name The user confirms the message and the basic flow returns back to step 3.
1 2
Page 54
Car Rental System (CRS) 28. View category Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition Actors Related Use Case Priority Flow of Events 28
www.shaeqkhan.com
View Category Yazeed 30-Nov-09 There is an existed category in the system. The category is viewed. Branch Manager. low. 27.Modify Category. 29.Delete Category. Basic Flow Step Number 1 2 Steps Use case starts when the user select the option view category. The system asks the user to enter the name of the category. The user enters the name of the category. A1: Invalid name. 4 5 The system view the requested category. The use case ends. Alternate Flow A1: Invalid name. 1 2 The system shows a message to the user to reenter the name The user confirms the message and the basic flow returns back to step 3.
Page 55
Car Rental System (CRS) 29. Delete Category Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition Actors Related Use Case Priority Flow of Events
www.shaeqkhan.com
29 Delete Category Yazeed 30-Nov-09 There is an existed category and the requested category has been viewed. The requested category has been deleted and it cannot be used to be used by cars. Branch Manager - 28.View Category. - 27.Modify Category. Medium. Basic Flow Step Number Steps 1 Use case starts when the user select the option delete category. 2 The system asks the user to enter the name of the category. 3 the user enter the name of the category. A1: Invalid name 4 The system execute View Category use case. 5 The user delete this category. 6 The system shows a confirmation message to the user. 7 The user confirms the message and the use case ends. Alternate Flow A1: Invalid Name The system shows a message to the user to re-enter the name. The user confirms the message and the basic flow returns to step 3.
1 2
Page 56
Car Rental System (CRS) 30. Generate Report Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition Actors Priority Flow of Events
www.shaeqkhan.com
30 Generate Reports Yazeed 30-Nov-09 User has login successfully . The requested report is generated for the available cars. Branch Manager. Medium Basic Flow Step Number Steps 1 Use case starts when the user select the option generate reports. 2 System prompts the user to choose the date of the report that contains the information of the available cars. 3 The user choose the date. A1: Invalid date. The system generates the report to the user. The use case ends.
4 5
A1:Invalid Date: 1 The system shows a message to the user to choose another date. 2 The user confirms the message and the basic flow of event returns to step 3.
Page 57
Car Rental System (CRS) 31. Remove Car Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition Actors Related Use Case Priority Flow of Events
www.shaeqkhan.com
31 Remove Car Yazeed 30-Nov-09 User has login successfully and there is an existed car in the system. The car is removed from the system and cannot be rented. Branch Manager. - 18.Search Car. - 32.Modify Car. Medium Basic Flow Step Number Steps 1 Use case starts when the user select the option remove car. 2 System prompts the user to enter the file number of the car 3 The user enters the file number. A1: Search Car. A2: Invalid File Number. The system : - Removes the requested car from the database. - Shows a confirmation message to the user. The user confirms the message. The use case ends. Alternate Flow A1: Search Car. The user selects "Search Car". The "Search Car" use case is executed. The flow returns back to basic flow step 4. Alternate Flow A2: Invalid File Number. The system shows a message to the user about the wrong file number. The user confirms the message and the basic flow returns to step 3.
5 6
1 2 3
1 2
Page 58
Car Rental System (CRS) 32. Modify Car Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition Related Use Case Actors Priority Flow of Events
www.shaeqkhan.com
32 Modify Car Yazeed 30-Nov-09 User has login successfully and there is an existed car in the system The requested modification is done . - 18.Search Car. - 31.Remove car. Branch Manager. Medium Basic Flow Step Number Steps 1 Use case starts when the user select the option Modify car. 2 System prompts the user to the file number of the car 3 The user enters the file number. A1: Search car. A2:Wrong file number. 4 The system displays the car.
5 6 7
The user modifies the required data. The system shows a confirmation message to the user about the modification. The use confirms the message and the use case ends. Alternate Flow A1: Search Car. The user selects "Search Car". The "Search Car" use case is executed. The flow returns back to basic flow step 4. Alternate Flow A2: Invalid File Number. The system shows a message to the user about the wrong file number. The user confirms the message and the basic flow returns to step 3.
1 2 3
1 2
Page 59
www.shaeqkhan.com
Use Case Number Use Case Name Author Date of Creation Precondition(s) Successful Post Condition Actors Priority Flow of Events
33 Add Car Yazeed 30-Nov-09 User has login successfully. The car is entered to the system and available to be rented. Branch Manager. Medium Basic Flow Step Number Steps 1 Use case starts when the user select the option add car. 2 System prompts the user to enter the information of the car including: - Company. - Name. - Model. - Color - File number. - .. etc. 3 The user enters the requested information. A1: Incomplete information. A2:Wrong piece of information. The system : - Display a confirmation message. The user confirms the message. The system add the car and the use case ends.
4 5 6
Alternate Flow A1: Incomplete information 1 The system displays a message that tells the user about missed information. 2 The user confirms the message and the flow returns back to basic flow step 3. Alternate Flow A2: Wrong piece of information. 1 The system displays the message saying a specific entered information cannot be accepted. 2 User confirms the message and the flow returns back to basic flow step 3.
Page 60
www.shaeqkhan.com
34 Delete Customer Abdulaziz Alamoudi November 10, 2009 The account must exist. The file is deleted. Branch Manager High 8. Search Customer. Basic Flow Steps The use case begins when the user enters the customers file number. A1: Search Customer. 2 The system displays the file. A2: Invalid File Number. 3 The user selects Delete File. 4 The system displays a confirmation message. 5 The user confirms the message. 6 The file is deleted. 7 The use case ends. Alternate Flow: A1 (Search Customer) 1 The user selects Search Customer 2 The Search Customer use case is executed. 3 The flow goes to step 2 of the primary flow. Alternate Flow: A2 (Invalid File Number) 1 The system displays a message that the entered file doesnt exist. 2 The user confirms the message. 3 The flow returns to step 1 of the primary flow. Step Number 1
Page 61
www.shaeqkhan.com
iii.
Non-Functional Requirement:
Reliability: o The system shall be available for 90% of 24 hrs. o The system shall not be subject to failure for 20 hrs. o The system shall be repaired in at least one hour. o The system shall accurately deal with decimal numbers. Performance: o The system response for operations shall be at most 5 seconds. o The system shall handle five users per department. Supportability: The system shall accommodate changes and enhancements that the development team is going to do in at most 5 days. Design Constraints: o The system shall be design according to IEEE Standards. o The system shall replace existing system. o The system shall be programmed using JAVA.
Page 62
www.shaeqkhan.com
Analysis Model
Page 63
www.shaeqkhan.com
5. Analysis Model
i. Interaction Diagrams
1. Book Car
www.shaeqkhan.com
Page 65
www.shaeqkhan.com
Page 66
www.shaeqkhan.com
Page 67
www.shaeqkhan.com
Page 68
www.shaeqkhan.com
Page 69
www.shaeqkhan.com
Page 70
www.shaeqkhan.com
Page 71
www.shaeqkhan.com
Page 72
www.shaeqkhan.com
Page 73
www.shaeqkhan.com
Page 74
www.shaeqkhan.com
Page 75
www.shaeqkhan.com
Page 76
www.shaeqkhan.com
Page 77
www.shaeqkhan.com
Page 78
www.shaeqkhan.com
Page 79
www.shaeqkhan.com
Page 80
www.shaeqkhan.com
Page 81
www.shaeqkhan.com
Page 82
www.shaeqkhan.com
Page 83
www.shaeqkhan.com
Page 84
www.shaeqkhan.com
Page 85
www.shaeqkhan.com
Page 86
www.shaeqkhan.com
Page 87
www.shaeqkhan.com
Page 88
www.shaeqkhan.com
Page 89
www.shaeqkhan.com
Page 90
www.shaeqkhan.com
Page 91
www.shaeqkhan.com
Page 92
www.shaeqkhan.com
Page 93
www.shaeqkhan.com
Page 94
www.shaeqkhan.com
Page 95
www.shaeqkhan.com
Page 96
www.shaeqkhan.com
Page 97
www.shaeqkhan.com
Page 98
www.shaeqkhan.com
Category
This groups the cars according to their price range and type.
Description
Type
Default Value
Mandatory?
Unique?
categoryType
This defines the type of the car to be stored in the system. - SUV - SEDAN - LUXURY For example, several cars can belong to the category SUV.
String
A new category can be added or deleted to the system by the Branch Manager. When you create a Category it is necessary that you initialize an upper and lower price limit.
Null
Yes
No
MaxDiscount
This defines the maximum discount that can be offered to cars in a particular category
Double
The discount for a car is calculated based on the customers history keeping in mind his regularity of dealings with the company.
0.00%
Yes
No
PriceLowerLimit
The lowest price that can be assigned to a car belonging to a particular category.
Double
SR 20.00
Yes
No
PriceUpperLimit
The highest price that can be assigned to a car belonging to a particular category.
Double
SR 9,000.00
Yes
No
Page 99
www.shaeqkhan.com
Booking
This creates and stores a car booking for a customer. Additional Type Information
Description
Type
Default Value
Mandatory?
Unique?
bookingDate
This stores the date on which the customer makes a booking(bookings) for a car
Date
01 January 20XX
Yes
No
bookingNumber
A unique identifier of the Booking. A Booking is identified by its unique booking number
integer
000000
Yes
Yes
bookingStatus
String
Unbooked
No
No
car
Imports all objects of type Car into a Data Structure for operations.
Car
null
Yes
No
customer
Imports all objects of type Customer into a Data Structure for operations.
Customer
null
Yes
No
finalPayment
double
This includes the cost of any damage done to the car or any fine to be imposed due to delay in return of car(s).
00.00
Yes
No
Page 100
www.shaeqkhan.com
double An initial amount needs to be given as a deposit. 00.00
returnDate
This store the date when the customer is due to return the car to the rental company.
Date
startDate +1
Yes
No
startDate
This store the date when the customer takes the car from the rental company.
Date
01 January 20XX
Yes
No
Page 101
www.shaeqkhan.com
Description
Type
Default Value
Mandatory?
Unique?
Manufacturer
The manufacturing company (Toyota, Ford, etc) Manufacturing n umber of the car (Serial number) The cars model (2000, 2005, etc) The market name of the car (Land Cruiser, Camry, etc) The plate number identifies the car. The outer color of the car The rate specified by: -Months. -Days. -Hours.
String
The name of the company A unique number made of more than 10 characters. Constrained from 1999.
Null
Yes
No
Manufacturing Number
String
Null
Yes
Yes
Car Model
Integer
1999
Yes
No
Series Name
String
Simple text.
Null
No
No
Plates Number
String
Null
Yes
Yes
Color
String
Red, white
Null
No
No
Pay Rate
Double
Yes
No
Car Category
String
Null
Yes
No
Odometer Reading
Double
The reading of the Odometer, how many kilometers have the car been driven. -Available. -Rent. -Under Repair.
0.0
Yes
No
Car Status
String
Available
Yes
No
Page 102
www.shaeqkhan.com
The entity contains past information of the car. The information is related to previous bookings and customers. Additional Type Information Default Value
Description
Type
Mandatory?
Unique?
Booking
Booking
Text.
Null
Yes
Yes
Date
Date of bookings.
Date
Null
Yes
Yes
Customer
Customer
Simple Text
Null
Yes
Yes
Page 103
www.shaeqkhan.com
The person who is going to rent the car. Type Additional Type Information Default Value Mandatory? Unique?
Name
String
Normal text.
Null.
Yes
No
NationalID
Integer
This is the formal number which any person should be known by it.
Null.
Yes
Yes
File number
Integer
When the customer comes for the first time, he is given this number by the receptionist. The default identifier for the customer in the system
000001999999
Yes
Yes
Mobile Number
Integer
050000000 0
Yes
Yes
Address
String
Normal text
Null
Yes
No
String
Used to contact with the customer and send to him new offers from the company
Null
Yes
Yes
Driving License
Integer
If the customer does not have a license number, then the system cannot do accomplish the booking
Null
Yes
Yes
Discount
Double
0%-10%
Yes
No
Occupation
String
Normal text
Null
Yes
No
Page 104
www.shaeqkhan.com
Customer History
Description
Type
Default Value
Mandatory?
Unique?
Booking
This identifies customer's booking information. This identifies the customer's name This identifies the date that the customer when the customer rent the car
Booking
Null
Yes
Yes
Name
String
Normal text
Null.
Yes
No
Date
Date
File Number
Integer
000001-999999
Yes
Yes
Page 105
www.shaeqkhan.com
Page 106
www.shaeqkhan.com
Page 107
www.shaeqkhan.com
Page 108
www.shaeqkhan.com
Page 109
www.shaeqkhan.com
Page 110
www.shaeqkhan.com
Page 111
www.shaeqkhan.com
Page 112
www.shaeqkhan.com
Page 113
www.shaeqkhan.com
Page 114
www.shaeqkhan.com
Evolution
Page 115
www.shaeqkhan.com
Evolution
i. Assumptions on which system is based
The system is designed initially for only one branch. The system will connected to the interior ministry database, police database and bank servers. Every user has his own account and no one can access the others' accounts. The system will be entirely managed by the administrator.
Page 116