---
###### tags: `BA Report`
# Shariot Executive Summary
This report looks at how to build the new application for Autobahn Rent A Car Pte Ltd to move into the online rental car services market. Being a traditional rental car service, the avenues of generating customers is limited so they look to capitalize on the fast-growing IT-savvy consumers as well as the ease of access of applications over web-browsers and phones.
The competitors in this market are few and they have tedious processes for their operations and UI that are not that user friendly. Autobahn Rent A Car Pte Ltd wishes to step in and set themselves as the leader in this market by providing users with a platform where ease of use will be paramount. By putting the user’s experience first, be it through the simple and intuitive use of the application, the sleek user interface or the excellent customer service, we allow Autobahn Rent A Car Pte Ltd to shine amongst its competitors.
A detailed analysis was conducted through interviewing all stakeholders to understand their journey and pain points. This document recorded all of the interviewees in the form of user personas. The analysis confirms the numerous pain points experienced by different stakeholders as well as understanding the business rules that they operate by. There were many manual processes and processes that required a staff to coordinate. This report concludes with a proposal from Doxa Holding International Pte. Ltd. of an end to end integrated IT system that will address all of the various stakeholders’ pain points and ensuring that the new system will be an avenue to grow their business and cut down on manpower.
This report will also include the detailed flows of the system design and non-functional requirements such as the high level architecture, redundancy/high availability, and security.
# Revision History
<!--
Use the following snippets to create 4 columns table
-->
| Version | Date | Description of Change | Author |
| -------- | -------- | -------- |-------- |
| Version 1 | | Intinal specifications | Roy Oon |
| Version 2 | 03 August 2020 | Revision 2 | Dara Nguyen |
# The Report
## Background information
The current business model of Autobahn Rent A Car Pte Ltd is a traditional car rental service. They have cars under other online rental services such as Tribecar. However, they are intending to break into the market of online rental services with the intention of becoming the top car rental service by emerging as the most fuss-free application and intuitive usage as its main attraction.
The traditional way of car rental required manual entries as well as the need of a customer service staff to be guiding the customer through the various documents required to rent a car. These factors drive up the cost of running of such a business as well as weaken the ability of the business to go above and beyond in their customer service.
Additionally, scalability of the operation for traditional business model was the Achilles’ heel of the industry. In order to make money, the business needs to achieve economy of scale. Achieving economy of scale, however, is an exercise that can only be achieved if the operation is fast and nimble.
One of the most important value proposition to end consumer for car sharing is the car availability at the locations convenient to customers. Traditional business model requires the company to have as many physical outlets manned by enough staffs to ensure acceptable customer satisfaction. That translates to “best case scenario” of linear increase of cost of doing business. In other words, the economy of scale that is next to impossible to attain.
In addition to the challenge of economy of scale, the consumer behavior has also changed over the years. Consumer demands instant gratification and empowerment. They are becoming more tech-savvy. Some even spurn traditional business operation. In Singapore, when people think of getting transportation, aside from Government sponsored transportation, they instantly think about Grab. They want the ease of use and speed of execution in getting the services they need. In fact, one part of customer segment targeted by Autobahn Rent A Car Pte Ltd includes the private hire drivers who are very familiar with online car platforms such as Grab and Gojek.
The challenges Autobahn Rent A Car Pte Ltd presented to us are quite clear. They need a platform that help increase the footprint of their car available for renting in convenient locations throughout Singapore without a huge increase in the cost of doing business. They need to automate many of the mundane processes. They need a platform that will be easily scalable to help them achieve meteoric growth. Finally they need to have a platform that is user friendly to all segment of their target customers.
## Scope of this report
As stated in the previous section, we have discussed on the problems that we seek to address. This report covers the following:
1. Interview and set up profiles of the users that are tied to the system
2. Set up use cases based on the defined persona pain points
3. Detailed swim lane process flows to address pain points in the system
## Conclusion with recommendation
After careful analysis, we determined that the main issues that plagues rental services are the many situations that crop up regarding getting the vehicle they have booked as well as the customer service being an unpleasant experience. It is inevitable that users will face issues along their usage of the services, so in order to maintain the best possible user experience, notifications will give users a heads up so they are able to make plans and working hand-in-hand with an excellent customer service that is able to handle all the issues that users will face.
It is clear that the very first thing to do in ensuring the uptake of this service provided by Autobahn Rent A Car Pte Ltd by consumers is to close the gap of these hassles that affect traditional rental services and set themselves apart from their online car sharing competitors while at the same time allowing Autobahn Rent A Car Pte Ltd to learn from the usage of its application to further improve the service they provide. Our proposed solutions will be based on the following:
1. Experience for customers should be as easy as possible
2. Reduce need to use customer service
3. Gathering of Data to study customer’s usage of the service
We call this system Shariot®. It’s a cloud based solution with intuitive and user friendly mobile app the front that and a web based app for the customer service. The system will be able to reduce the manpower needed to do a rental and at the same time empower users to be able to do most functions without the need a customer service to aid them. This will result in a service where Shariot can be more focused to give better customer service to those that require it without compromising in giving a good quality hassle-free renting experience.
This document contains a section for modules/functionalities that will be out of scope for delivery.
The rest of this document capture users’ stories and detail flows that reflect the proposed solution at the granularity suitable for wireframe development that subsequently used for actual software development.
## Out of Scope
The success of development and deployment always hinges on getting the minimal viable product out the door as soon as possible. When timeliness is critical, not all modules will be possible under the constraint of budget and time. In the scope of Business Analysis as covered in this report, the following modules/functionalities will be out of scope for delivery
* Chat and/or Chat with Artificial intelligence
* Data Mining on Facebook and Google (The easy login using Facebook and Google will be delivered)
* Marketing programs outside of allowing the use of coupons and/or promo code
* SingPass API integration
## 3rd Party Integrations
The following 3rd party integrations will be included:
* Email and SMS notification
* Facebook and Google Login
* Car Tracker integration
* WireCard integration
* DBS PayNow integration
# Personas
## Leisure Consumer
Name: Jessica (40)
Quote: I want to be able to book a car without hassle, fast and easy.
<!--
Use the following snippets to create 2 columns table
that has 2 images in each column (1 row only)
-->
||
| ------------------------------------ | ------------------------------------ |
Tasks:
1. Register for account
2. Book Vehicle
3. Modify Bookings
4. Add Named Drivers
5. Cancel Bookings
6. Use Vehicle
7. Extend Trip
8. Contact customer service
9. Use emergency number
10. Check history of transactions
11. Get deposit refund
12. Use Wallet
<!--
Use the following snippets to create 3 columns table
-->
| | Needs | Pain-points |
| -------- | -------- | -------- |
| 1 | Easy Registration| Difficult registration or having to give too much personal information will deter me from using it. |
| 2 | Easy booking | Complicated Processes are not worth my time. |
| 3 | Prompt customer service | With how many situations that require customer service to resolve, it will be very frustrating that if the customer service cannot resolve my problem|Having to key in my credit card information for each booking is extremely time consuming. |
| 4 | Modify bookings | My plan changes, it will be frustrating that if I need to cancel tho booking and make a new one |
| 5 | Easily use vehicle | Misplace vehicle key, forget end time |
| 6 | Get deposit refund | Complicated processes are not worth my time and make me frustrated |
| 7 | Extend Trip | My plan changes, need to use vehicle longer than expected, returning vehicle and make a new booking is not worth my time |
## Private Hire Driver
Name: Eric (38)
Quote: How do I make the best use of my time to earn money?
<!--
Use the following snippets to create 2 columns table
that has 2 images in each column (1 row only)
-->
||
| ------------------------------------ | ------------------------------------ |
Tasks:
1. Register for account
2. Book Vehicle
3. Modify Bookings
4. Add Named Drivers
5. Cancel Bookings
6. Use Vehicle
7. Extend Trip
8. Contact customer service
9. Use emergency number
10. Check history of transactions
11. Get deposit refund
12. Use Wallet
13. Register with Grab/Gojek with his rental vehicle information
| | Needs | Pain-points|
| -------- | -------- | -------- |
| 1 | To have necessary information regarding the vehicle to register with Grab/Gojek | Process is troublesome as I have to approach car rental customer service to get this information, taking up more time than I would like. |
| 2 | Prompt vehicle change | Because of the time needed to register with Grab/Gojek, I would prefer if my booked vehicle needs to change, I can know as soon as possible to allow me to plan ahead. |
| 3 | Able to submit MC to get a cancellation of my booking without cost| Grab/Gojek is a job, not being able to cancel when sick will be a big loss for me |
## Customer Service
Name: Elise (30)
<!--
Use the following snippets to create 2 columns table
that has 2 images in each column (1 row only)
-->
||
| ------------------------------------ | ------------------------------------ |
Tasks:
1. Answer customer enquiries
2. Handle emergency call
3. Submit refunds for approval
4. Cancel bookings for private hire drivers when MC given
5. Block users if they get involved in accidents
6. Unlock vehicles for users to retrieve their items
| | Needs | Pain-points|
| -------- | -------- | -------- |
| 1 | To know the location of my driver in order to assist him/her in case of emergency | Driver in distress may not be able to tell me his/her location |
| 2 | To easily identify my customer when they call me for assistance | Driver may not be able to tell me enough information to identify himself/herself and related transaction |
| 3 | To submit refund requests effectively|Long and manual processes will cause me to be not productive and not able to serve my customer well
## Management/Back Office (Ops)
Name: Sue (38)
Quote: I should be able to see all the things needed for me do my work or make business decisions
||
| ------------------------------------ | ------------------------------------ |
Tasks:
1. Verify users
2. Register for private hire drivers for incentive program
3. Manage users
4. Manage vehicles
5. Unblock users after accidents
6. Make new business decisions to help the business
| | Needs | Pain-points|
| -------- | -------- | -------- |
| 1 | Easy to read data on performance of business |Manual processes are time-consuming to convert into meaningful data |
| 2 | To have all information I want at my fingertips | VManual processes are time-consuming to convert into meaningful data |
## Marketing
Name: James (30)
Quote: Good products, good schemes, good profits.
||
| ------------------------------------ | ------------------------------------ |
Tasks:
1. Understand customer behaviour
2. Create marketing campaigns.
3. Reach out to more potential clients.
4. Evaluate current operations.
5. Evaluate effectiveness of marketing campaigns
| | Needs | Pain-points|
| -------- | -------- | -------- |
| 1 | To measure effectiveness of marketing strategies | Difficult to determine the effectiveness of marketing strategies as a traditional rental service |
| 2 | To identify areas of improvement | Difficult to analyse information as a traditional rental service|
# User Stories
## Leisure Consumer
As an Leisure Consumer,
| | I would like | So that|
| -------- | -------- | -------- |
| 1 | An application that is easy to sign up| I can use the application as soon as possible.|
| 2 | An application to have multiple ways to login | I can save time typing in information. |
| 3 | To give feedback regarding my booking/experience | I can have a better experience or commend on the good service.|
| 4 | My booked vehicle to be present at my booking| I can proceed with my usage on time|
| 5 | Any changes to my vehicle to be notified in advance | I do not have to go through any hassle during my booked duration.|
| 6 | An easier way to verify car condition and fuel gauge | I can spend less time of my booked duration and more on travelling. |
| 7 | My vehicle of choice during booking to remain bookable during my booking process | I do not need to restart the whole booking process. |
| 8 |To set a favourite car| I can book the car of my choice faster |
| 9 | To be able to bring pets on the car | I can travel around with my pet |
| 10 | An emergency/breakdown button | I can access the necessary help as soon as possible|
| 11 | A “Thank you” message at the end of each booking | I feel appreciated as a customer |
| 12 | An example when the application asks for information such as pictures for the car condition | I can give the correct information and protect myself |
| 13 | Changes in vehicle not to be forced, and changes resulting in upgrades do not increase price | I have a choice in keeping my booking and not spend more money |
| 14 | Slide/some other verification during payment | I do not make bookings accidentally |
| 15 | Multiple payment methods| I can choose which way I want to pay |
| 16 | Promo codes | I can get discounts and save money |
| 17 | Able to cancel a booking within a time frame, without cost | I can save money when I need to cancel |
| 18 |I want the application to be customized to me | I feel important and get information that I would need/like |
| 19 | I want a cheap, good and clean car | I spend as little money on rental as possible |
| 20 | A lot of pick up locations |I don’t need to worry about having to travel far to pick up locations |
| 21 | FAQ | I can get help fast |
| 22 | Notifications | I know when my verification is done, my booking completed, changes in vehicles needed, charges due to fines, new promo codes |
## Private Hire Driver
As a Private Hire Driver,
| | I would like | So that|
| -------- | -------- | -------- |
| 1 | Information for private hire drivers to be easily accessed | I can proceed with my registration with Grab/Gojek promptly |
| 2 | To be able to select the car plate number | I do not have to go through the registration process again with Grab/Gojek|
| 3 | Allow me to cancel without cost when I can provide a Medical Certificate| I do not lose money while trying to work as private hire driver|
| 4 | To know if the application is affiliated with Gojek/Grab |I know if I can register for the incentive program |
| 5 | A way to give my information for registration for the incentive program |Shariot can manually submit to Grab/Gojek |
## Customer Service
As a Customer Service,
| | I would like | So that|
| -------- | -------- | -------- |
| 1 | To communicate with customer about their issues | I can provide them with the necessary help |
| 2 | Block users when they make an accident report | IThey cannot book anymore |
| 3 | Unlock/Lock vehicles | Consumers can retrieve their items|
| 4 | Update Maintenance Information about vehicles | Management can view and decide the necessary steps for the vehicle |
| 5 | Make vehicles unbookable | Vehicles in accident/broke down are not in the application available for booking |
| 6 | Cancel bookings| I can assist private hire drivers when they submit their MC|
| 7 | Change vehicle| I can allocate another vehicle to consumer when the vehicle they booked is broken down or in an accident |
| 8 | Submit refunds for bookings | Management can approve them |
## Management/Back Office
As an Management/Back Office Staff,
| | I would like | So that|
| -------- | -------- | -------- |
| 1 | To unblock users after they have been blocked due to being in an accident | Consumers can continue using our service |
| 2 | To approve refunds | I can confirm the legitimacy of the refunds |
| 3 | View the Driver ID, IC submitted by users| I can manually verify with traffic police |
| 4 | Add/Remove vehicle | I can remove or add new vehicles when needed|
| 5 | Change statuses of vehicles |Vehicles become unbookable to consumers and for my tracking of vehicle health|
| 6 | To see the utilisation rate of my vehicles| I can use this information to decide further business development |
| 7 | To see revenue generated by time frame | I can see how profitable is this service|
| 8 | The number of bookings and durations of each vehicle | I can better understand the usage of the vehicles and make new business decisions |
| 9 | To see the rate of return|I can gauge the profitability of this business |
| 10 | To see users with their related accident/breakdown cases, expired booking sessions| I can identify problematic users and block them if needed |
| 11 | To see user’s behaviour ( how often he books/ how long, what kind of car, what timings, places they travel to, how much they spend per month) | I can make business decisions to better fit users |
| 12 |Charge consumers for fines/tickets | I will not lose money for these reasons |
| 13 | Block users | Users cannot continue booking for reasons such as owing money for tickets/fines |
## Marketer
As an Marketer,
| | I would like | So that|
| -------- | -------- | -------- |
| 1 | The number of bookings and durations of each vehicle | I can better understand the usage of the vehicles and make new business decisions.|
| 2 | To see the utilisation rate of my vehicles | I can use this information to decide further business development |
| 3 | To see user’s behaviour ( how often he books/ how long, what kind of car, what timings, places they travel to, how much they spend per month) | I can make business decisions to better fit users|
| 4 | To capture the date of user profiles, payment methods|I can better understand my customers |
| 5 | To manage promo codes | I can control validity of promo codes either manually or using time expiration |
| 6 | ABreakdown of the users generated from its different sources ( facebook/Instagram) | I can better focus my marketing efforts to have more users |
| 7 |Breakdown of users against cars rented |I can identify gender/age group patterns with their usage behaviour |
# High Level Flow

# Functional Requirements
## Swimlane Diagrams
### User
#### Registration
###### tags: `Registration`

#### Booking Process
###### tags: `Booking Process`

#### Usage Process
###### tags: `Usage Process`

#### Cancel Booking
###### tags: `Cancel Booking`

#### Item Retrieval
###### tags: `Item Retrieval`

#### Change of Vehicle Notification
###### tags: `Change of Vehicle Notification`

### Management
#### Process Refund Requests
###### tags: `Process Refund Requests`

#### Change Vehicle Status
###### tags: `Change Vehicle Status`

#### Charge users for fines/tickets
###### tags: `Charge users for fines/tickets`

#### Change Process Blocked User
###### tags: `Process Blocked User`

### Marketing
#### Manage Promo Codes
###### tags: `Manage Promo Codes`

# Non Functional Requirements
## System Architecture

It will be 3-tiers architecture of having cluster web server and cluster application server and mirroring databases. All the requests are SSL encrypted which provide secure channel of communication. All the users will be authenticated before any operation/transaction. The network is firewall-protected to make the network secure.
The load balancer will route the traffic of request to the server based on the occupancy of the server so that the server can handle the request efficiently.
The multi-zone database will assure the data availability. In the event of failure of principal database the mirror database will serve as principal data base until the other database is rectified.
# Reliability
## Operation Time
Our system will be running 24/7.
Our server is cluster servers and using load balancing we don’t overload one server so servers availability is high.
## Hardware failure (servers, network)
In case of one server failure we have other cluster server to take over the load until the another available on real time basis. We are using mirror data base so in case of failure of principal database, we can use the mirror data base which is fully synchronised with principal database.
We keep spare of server hardware and to reduce the downtime.
## Recovery
Up time is 99.9% per month (max 43.2 minutes downtime per month).
Maximum 30 minutes down time.
We have 24/7 vendor support in case of major breakdown.
# Security
We use AWS Cloud, the high-standard cloud provider which complies to the global practice compliance programs, more information can be found here: https://aws.amazon.com/compliance/programs/
All the request to server are encrypted and servers are set up with firewall as well as encryption at rest in order to protect the data security.
In the scope of the development, the product should comply with the PDPA (Personal Data Protection Act).
- And MORE ➜ [HackMD Tutorials](https://hackmd.io/c/tutorials)