1. Introduction
XYZ is a car rental company located in Saudi Arabia, and has branches in all major cities. XYZ main business line is to provide rental service of small civilian cars for individuals. XYZ is planning to expand its business and to approach larger customer base by allowing customers to book from online. Also XYZ needs to automate its current paperwork processes to reduce the operation cost and increase the control over its processes.
Get Help With Your Essay
If you need assistance with writing your essay, our professional essay writing service is here to help!
Document Purpose
The purpose of this document is to describe business requirements of an Application completely, accurately and unambiguously in Technology-independent manner. All attempts have been made in using mostly business terminology and business language while describing the requirements in this document. Minimal and commonly understood Technical terminology is used. Use case approach is used in modeling the business requirements in this document
Intended Audience
The main intended audience for this document are the business owners of Osteoporosis Surveillance system. They must be able to verify that their business requirements have been documented here completely, accurately and unambiguously.
As such, the audience can be summarized as follows:
Audience |
How this document will be used |
Business Analyst |
|
IT Manager/Technical Architect/ Technical Team Lead |
|
Project Manager |
|
Development Team |
|
Quality Team |
|
Scope Diagram:
To be done by later.
Project Scope:
Project scope is to:
- Develop Major Modules
- Develop Web-based Application, which contains the following:
- Renting Car Module:
This module be concerned with managing Rent and return car by customer and concerning with payment rent fees and its related penalties if violation happened.
- Repairing Car Module:
This module be concerned with managing and tracking car repairing during its operation.
- Insuring Car Module:
This module be concerned with managing and tracking car insurance period and coverage.
- Disposing a Car Module:
This module be concerned with managing disposing cars and using its spare parts for other cars.
- Customer Car Rent Module:
This module be concerned with allow public customer to rent car over his account.
- Develop smart phone Application, which contains the following:
- Customer Car Rent Module:
This module be concerned with allow public customer to rent car over his account.
- Integrate with the following points:
- Financial System:
The Electronic System for Car Rent (ESCR) should integrate with Financial System by send all transaction of create new contract, penalties, Income, disposing, or repairing car by credit or deposit car balance in financial system using XML posting transaction
Any financial transaction whither credit (e.g., renting fees) or debit (e.g., maintenance fees) must be all communicated to the financial system.
- Insurance Company:
The ESCR should integrate with should integrate with Insurance system to renew car insurance contract using XML posting transaction
- Government Traffic violation System:
The ESCR should integrate with Traffic system to retrieve all traffic violation tickets on XYZ Company cars in order to collect the violation ticket fees from customer using XML posting transaction.
- Payment Gateway:
The ESCR should integrate with third party payment gateway to collect car rent fees over with SADAD, Credit Card and PayPal channels.
- SMS Gateway:
The ESCR should integrate with third party SMS gateway to send SMS notification generated by system to customer.
- Email Gateway:
The ESCR should integrate with email gateway to send SMS notification generated by system to customer.
- The user interface must support the following web browsers:
- Internet Explorer v8 & v10
- Google Chrome v33, and v32 (Latest 2 versions).
- Ability to add (Migrate) current cars information.
- Data retention policy is to keep only last 3 years data in the system, any other older data is to be archived on tapes on yearly basis.
- Email system and SMS gateway supposed availability is 24/7/365.
Stakeholders
Stakeholders measures provides a clear definition of each stakeholder of the Use case and functionality, what do every stakeholder or get from the functionalities, why do each stakeholder care if feature works or nor, and how do each stakeholder measure success/failure of the feature?
Stakeholder |
Description |
Customer |
Stakeholder concerned with renting car and payment way |
Branch Manager |
Stakeholder concerned with managing and monitoring rented and renting branch’s cars, repairing branch’s cars, Depositing branch’s cars, insuring branch’s cars. |
Riyadh Branch Manager |
Same as Branch Manager stakeholder but he has extra permission to approve new registration of customers accounts. |
Definitions, Acronyms, and Abbreviations
Abb. |
Description |
Electronic System for Car Rent |
ESCR |
Government Traffic Violation System |
GTVS |
References
- Business Case – XYZ Company Electronic System for Car Rental Document.
General Constraints
This subsection of the SRS should provide a general description of any other items that will limit the developer’s options for designing the system.
Assumptions and Dependencies
This subsection of the SRS should list each of the factors that affect the requirements stated in the SRS. These factors are not design constraints on the software but are, rather, any changes to them that can affect the requirements in the SRS.
Specific Requirements
This part of SRS will be the largest and most important section of the SRS. The customer requirements will be embodied because they will be used to guide the project’s software design, implementation, and testing.
External Interface Requirements (Integration Points)
Functional Requirements
This section describes specific features of the software project. If desired, some requirements may be specified in the use-case format and listed in the Use Cases Section.
Traceability Matrix
The purpose of the traceability matrix is to link requirements, design specifications, and validation. Traceability among these activities and documents is essential. Traceability matrix acts as a map, providing the links necessary for determining where information is located
ID |
Use case Name |
Module Name |
Priority |
Use Case Description |
Create New account |
Account |
High |
||
Approve Accounts |
Account |
High |
||
Book a Car |
Renting Car |
High |
||
Return Car |
Renting Car |
High |
||
Renew car Insurance Contract |
Insuring Car |
High |
||
Send Car for Maintenance |
Repairing Car |
Medium |
||
Return Car from Maintenance |
Repairing Car |
Medium |
||
Dispose Car |
Disposing Car |
Low |
||
Pay car spare part |
Disposing Car |
Low |
System Processes:
- Customer Registration Process:
Process Description:
- Customer access ESCR application through browser or smartphone application.
- Customer selects to create new account on ESCR.
- System requests customer to fill his required information which is:
- customer name
- customer mobile number
- customer email address
- reference person name
- reference person mobile number
- Customer (Citizen) ID
- The system validates the filled data then save new create account request in system with New State.
- The Request goes to Riyadh Branch Manager to approve request upon verification.
- In case the Riyadh Branch Manager approved the request system will create new account in system and inform user to email that his request has been approved and system should send generated password and use his email as username.
- In case the Riyadh Branch Manager Reject account request he should fill reason of rejection then system will send email to user with apology email with reason of rejection and he is able to request create account (Step1).
Customer Registration Wireframes:
Please view wireframe in paper
Customer Registration Use Cases
UC1.1Register New Account Use Case:
Actor:
Customer (anonymous User)
Description:
This use case concerned with allowing anonymous user to register as Car Rent Customer.
Priority: High
Trigger:
Anonymous User access system home page (Web or by smart phone)
Precondition:
N/A
Normal Flow:
- The actor selects to Create new Account in ESCR.
- The system response by prompt user to fill account information which are:
- customer name
- customer mobile number
- customer email address
- reference person name
- reference person mobile number
- Customer (Citizen) ID
- The actor fills fields:
- customer name
- customer mobile number
- customer email address
- reference person name
- reference person mobile number
- Customer (Citizen) ID
- The actor selects to create new account.
- The system validates filled information.
- The system creates new account in system with New state and prompt user with the following message “Dear Customer thank you for registering in ESCR, your account will be validated, please wait till notification sent to your email.”
Alternative Flow:
- In case the user did not fill required fields (Message appear)
- In case the email format is wrong (Message appear)
- In case already exist email (Message appear)
- ….. (all cases should be filled)
Sub Flow:
N/A
Rules:
- Email should be unique in system
- Citizen ID should be unique in system.
Data Dictionary:
Field Name |
Field Type |
Validation |
Mandatory |
Comment |
customer name |
Text Box |
N/A |
Yes |
|
Customer (Citizen) ID |
Text Box |
Yes |
||
reference person mobile number |
Text Box |
Only digits not exceeds 14 digits and not less 10 digits |
Yes |
|
reference person name |
Text Box |
N/A |
||
customer email address |
Text Box |
Should in email format |
Yes |
|
customer mobile number |
Text Box |
Only digits not exceeds 14 digits and not less 10 digits |
Yes |
SoQ:
N/A
- Renting Car Process:
Renting Process:
Process Description:
- From ESCR website or through its smartphone app, the customer can select the car and book it directly as well as submitting his payment.
- The customer has 2 option ether to login from first step or to login upon payment step.
- The customer needs to login into the system
- The Customer selects to specify the rental duration, then selects available cars. [Please view Note 1 below].
- The system should calculate the fees and applies the discount (if applicable and based on the customer information) [Please view Note 2 below].
- The customer will be requested to make the payment electronically (SADAD, Credit Cards or PayPal). [Please view Note 3 below].
- Once the customer paid the fees, system should display the receipt to the customer and should send a copy of the receipt to the customer’s email.
- The receipt should have all the contract details, which is:
- The customer information
- the car information
- copy of the car insurance contract
- the payment information
- Map/address of the branch where the car is located.
- The fees and a reference to the contract are required to be communicated to the financial system in a timely manner.
Note1:
Available car means any car in branch did not has any of the following cases:
- Car in rent duration with customer
- Car in reaping workshop
- Car Disposed
- Insurance contract expired unless it status in renewed.(any car should not rented to customer if the insurance contract not issued for example the expiry date is 1 March., then not car will not be available for rent from 1 March. till contract is renewed it will be back to be available)
Note2:
The discount should be calculated as follows:
- Students: 5%
- Senior (older than 50 years): 10%
- Returned Customer: 15%
- More than 7 days: 10%
- More than 7 days and return customer 25%
- Student and returned customer: %20
- People with disabilities: 15%
- People with disabilities, senior, and returned customer: 20%
- People with disabilities, senior, returned customer, and more than 7 days: 25%
- People with disabilities, student, returned customer, and more than 7 days: 25%
- People with disabilities, and student: 20%
Note3:
Note that the customer can cancel the operation at any time before making the payment.
Return Car Process:
Description:
- Once the Customer return the car the Branch manager check for the following:
- traffic violation (in case found the customer should pay the amount)
- rental duration(The customer should be charged a penalty of 100$ for each exceeded day)
- car issues (in case issue happened the customer should pay penalty as below:
- Body Scratch ïƒ 10$
- Window or Mirror Broken ïƒ 100$
- Total Loss ïƒ 10000$
- Accident but car still working ïƒ 1000$
- Other ïƒ 1500$
- Distance (the customer should be charged for extra distance exceeded the 100 Km per day limit, as 3$ per Km)
- Repairing Car Process:
< Repairing Car Process Diagram>
- When car is returned the system should check if car last maintenance reaches 30 days or if the car exceeded 5,000 Km since the last time it has been repaired (whichever comes first).
- The branch manager should send the car to the maintenance workshop
- Once the maintenance is done Branch Manager should upload the maintenance details and the invoices into the car record in the system.
- Fees are required to be communicated to the financial system in a timely manner.
- The car should be not available for rental during the maintenance period.
- Issuing Car Process:
- The system will keep track of the expiry date of the car insurance contract,
- In case the car issue is about to expire (15 Days) system will send a notification to the branch manager.
- The branch manager from the system, will renew the contract using integration with insurance system and submit the payment electronically (SADAD, Credit Card or PayPal).
- The system will update the car record with the expiry date and insurance contract details.
- The insurance fees will to be communicated to the financial system in a timely manner.
- Disposing a Car Process:
- The system must keep track of all the cars, and once a car is 5 years old since the manufacturing date an email notification must be sent to the branch manager.
- The car must be removed automatically from the system.
- Disposed cars should be used a spare parts for other cars. And the income made from selling the car is required to be communicated to the financial system in a timely manner.
Non-Functional Requirements
Performance
Reliability
Availability
Security
Maintainability
Portability
Design Constraints
Logical Database Requirements
Other Requirements
Analysis Models
Sequence Diagrams
Data Flow Diagrams (DFD)
State-Transition Diagrams (STD)
Change Management Process
Appendices
Appendix 1
Appendix 2
Cite This Work
To export a reference to this article please select a referencing style below: