SRSIEEEPDF

PONNI
SRSIEEE830PDF.pdf

Software Requirements Specification

For Uber Ride

Version 4.2

Mahamadou Mahi Diallo

UMGC

SWEN645 9040

Mahi Inc

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

1

Date Version Description Author

06/09/2008 4.0 Initial document Joy Chuck

07/12/2017 4.1 Modernization overview Joseph Kent

01/03/2021 4.2 Advanced modernization Mahi Diallo

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

2

Table of Contents

1.1 Purpose................................................................................................................................. 3

1.2 Definitions, Acronyms and Abbreviations ........................................................................ 4

1.2.1 Definitions ..................................................................................................................... 4

1.2.2 Acronyms....................................................................................................................... 4

1.2.3 Abbreviations ................................................................................................................ 4

1.3 Scope..................................................................................................................................... 4

1.4 References ............................................................................................................................ 6

1.5 Overview ......................................................................................................................... 6

2. Overall Description ............................................................................................................... 6

2.1 Use-Case Model Survey ...................................................................................................... 9

2.1.1 Application Users’ Roles ............................................................................................ 11

2.1.2 Assumptions and Dependencies ................................................................................ 13

2.2 Specific requirements........................................................................................................ 14

2.2.1 Use-case reports.............................................................................................................. 14

3. Supplementary Requirements ............................................................................................ 30

4. Supporting Information ...................................................................................................... 30

Sheldon Linker� 7/20/21 12:18 PM

Sheldon Linker� 7/20/21 12:18 PM

Sheldon Linker� 7/20/21 12:18 PM

Deleted: 3

Deleted: 3

Deleted: 29

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

3

Appendix...................................................................................................................................... 31

1. Introduction

Mahi Inc specializes in the review and analysis of various applications and their features and

quality software in general. Mahi Inc also keeps track of the trends in various applications by

having records of their features. This document is the Software Requirement Specification for

Uber Ride System. It outlines most of the features of the application.

1.1 Purpose

The purpose of this document is giving an overview of Uber application requirements, its

use cases and describing various techniques used in the designing these use cases. In addition,

this document outlines the requirements of the application in the form of textural use cases.

The system will implement several Use Cases which includes the following:

• Requests a ride.

• Make payment.

• Enters details

• Accept customer rider request.

• Confirms payment.

• Pick and drop passengers.

• View passenger list

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

4

1.2 Definitions, Acronyms and Abbreviations

1.2.1 Definitions

• Application – this refers to a computer program that is designed to accomplish a specific

task in the computer system.

• Rider – a user who takes rides using Uber app

• Driver – a person who accepts ride requests from users, picks and takes them to their

destinations.

• Feature – an important component of the application that help users find what they are

looking for.

1.2.2 Acronyms

• GPS – Global Positioning System

1.2.3 Abbreviations

• SRS – Software Requirements Specification

• PCs – Personal Computers

• App – application

• PDAs – Personal Digital Assistants

1.3 Scope

The purpose of the Uber application is to make it easy for customers to get to their

destinations by providing them with information on locations, such as those in Texas or even

Silicon Valley, easy ways of requesting for a ride, estimated time of arrival, driver-partner

information such as type of the vehicle, first name and license plate number. In addition, the

Sheldon Linker� 7/20/21 11:31 AM Comment: As I had mentioned before, an acronym is a name made up of the first letters of other words, such as SRS. But more importantly, your reader may come back to this section to look something up. So either way, combine these 3 lists into one, and show it in alphabetical order.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

5

application also calculates the fare automatically for customers when they arrive at their

destinations.

There are various features of the applications that will be discussed, and these features

include.

• Real-time tracking of driver

• Allowing others to follow ride in real-time.

• Keeping trip history

• In-app call or chat option

• Saves destinations.

• Preferred driver

• Multiple options of payment

• Booking a ride for now or later

• Adding multiple points of drop-off

• Reviewing and rating of drivers

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

6

1.4 References

Alley, J. K. (2016). The impact of Uber Technologies on the New York city transportation

industry.

Grabher, G., & van Tuijl, E. (2020). Uber-production: From global networks to digital

platforms. Environment and Planning A: Economy and Space, 52(5), 1005-1016.

Mäntymäki, M., Baiyere, A., & Islam, A. N. (2019). Digital platforms and the changing nature of

physical work: Insights from ride-hailing. International Journal of Information

Management, 49, 452-460.

1.5 Overview

This subsection illustrates the software requirements specification of the Uber application, its

features and how the SRS is organized. The requirements specification for this application is

described further in the use cases.

The features of this application are also described, roles and responsibilities of the users are

explained. The use case model will also be designed to give more information on the processes

that take place in the Uber application. The following Software Requirements Specification is

divided into two major sections: Overall Description and Specific Requirements.

2. Overall Description

Uber is a technology platform whereby the applications on our smartphones connect riders

and driver-partners. Users is the cities where Uber is operating can use Uber rider application to

request for a ride. In most of parts where Uber operates, users are allowed to pay their fare in

Sheldon Linker� 7/20/21 11:34 AM Comment: As stated before, there should always be a reference to the initiating document. in our case, that's the class assignment link

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

7

cash, but they must select this option before requesting for a ride. The information about the rider

is also provided in the app.

In addition, the Uber application has the following features.

i. Book a ride for now or later.

This feature in the Uber application enables users to book the ride. With the book now or

later feature, driver-partners can easily get rides and travel easily from one place to another. The

book later feature enables users to easily book rides for a trip in future. This feature is very

important for users who are about to leave their homes, office or even going for a doctor’s

appointment and they want to get there in time.

ii. Multiple options of payment

Not every customer is comfortable paying via card or cash for their ride. Some of the users

do not carry cash while a few of them do not want to share their card details in the application.

Therefore, including multiple options of payments in the application has made it easy for the

riders whereby they are able to select from various options that are available in the app.

iii. Real-time tracking of driver

This feature is included in the application to boost the satisfaction level of the users and make

sure they are not frustrated when they are in the unknown regarding the driver. This is achieved

with the help of GPS integration. This feature helps in tracking the location of drivers and which

way they are traveling.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

8

iv. Preferred driver

Regular Uber riders who take rides for their homes and offices come across several drivers

and after some time they start having preferences of drivers based on the experience with them.

The application allows these users to have a choice of their preferred drivers, and this gives Uber

an added advantage.

v. Allow others to follow ride in real-time.

Since safety comes first to everyone, it feels safe when riders can share their details of the

ride with some else who is mostly close to them. This feature allows someone else to keep an eye

on the route that is taken by the driver and letting persons know if they have reached their

respective destinations safely or not.

This feature is also very useful if the rider is new to a particular city and are not aware of the

route that is being used by the driver. Therefore, sharing these details helps one to get an idea of

whether the route taken is right or wrong and gives a chance for the person they’re sharing with

to give insights into the route taken by the Uber driver.

vi. In-app call or call option

This feature is very important when the user wants to connect with driver mostly to ask

them for direction and inquire on their whereabouts. In some other cases, users would want to

chat directly with the support team for help. In addition, this feature also helps drivers to avoid

the trouble of rider’s address when they can just call or chat with riders and get the details and

get directions.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

9

vii. Driver rating and review

The reviews and ratings of the drivers give one more information on them, their behavior,

and the kind of experience they offer to the riders. The riders who have had a trip with the driver

in the past share their feedback and this helps one to know what they expect. The ratings are

reviews are excellent ways of improving the business of Uber.

viii. Add multiple drop-off points.

ix. Saving of destinations

x. Keeping of trip history

2.1 Use-Case Model Survey

Users of the application should be able to retrieve information of their trip at any time and

given an option to share this with their close relatives and friends.

The following figure is the use case diagram for Uber.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

10

Figure 1: Driver & Rider Summary Use Case Diagram

There are 7 Use Cases that make up the requirements of the Uber application and other

details are shown in the table below:

Use Case Description

1. Request a ride. Displays various functions to enable the rider to select the type of

ride they need, location and request for the ride.

2. View passenger

list

Displays a list of the available riders who have requested for a ride.

3. Pick and drop Displays information on the locations to pick up and drop riders.

Sheldon Linker� 7/20/21 11:49 AM Comment: In this column, some items have dots and some don't. Pick a style and stick with it. I'd go for no dot in this column. When a table spans a page boundary, its rows should not split, and its header should repeat. Both can be accomplished with table row attributes.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

11

passengers.

4. Confirms

payment.

Enables driver to confirm that the payment for the ride has been

made by the customer.

5. Accept customer

request.

Notifies drivers of the requests made by the rider and gives them an

option to accept the request.

6. Make payment. Displays various modes of payment a rider can choose from and

enables them to make the payment.

7. Enters details

Gives users an interface to input details about themselves.

2.1.1 Application Users’ Roles

This specifies and describes the roles, the associated responsibilities and all the use cases

primarily driven by the users.

i. Driver

Definition

Driver is the role played by the persons specifically registered by Uber to accept ride

requests from customers and take them to their destinations.

Responsibilities

The following are the responsibilities of a rider.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

12

• Accepting ride request from the customers and promptly attending to them.

• Viewing the list of all the available passengers.

• Picking up and dropping of passengers.

• Confirming receipt of payment.

Required capabilities.

The rider requires the following skills to effectively interact with the Uber app.

• Basic skills required in using a smartphone.

• Ability to use Google Maps.

• Good interpersonal skills.

• Able to locate simple functionalities on smartphone such as GPS and others.

ii. Rider

Definition

A rider is the role played by the customers of the Uber app who request for rides using the

application.

Responsibilities

The following are the responsibilities of a rider.

• Entering their pick-up location.

• Entering their destination.

• Registering and entering their details into the system.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

13

• Choosing the type of ride, they need.

• Requesting for a ride

Required capabilities.

The rider requires the following skills to effectively interact with the Uber app.

• Basic skills required in using a smartphone.

• Ability to use Google Maps.

• Able to locate simple functionalities on smartphone such as GPS and others.

2.1.2 Assumptions and Dependencies

External hardware

• Client hardware

- Employee workstations: these are the personal computers used by the workers to

carry their daily tasks.

- User client: refers to all the devices used in communication, such as PCs, PDAs, and

smartphones.

• Client hardware

- Local Area Network: this is the internal local area network that is used for

communication among Ubers employees.

- Internet: the global network applied in communication among users of the app,

employees, drivers, and the Uber platform.

Other assumptions Sheldon Linker� 7/20/21 11:51 AM Comment: A header or title should not be the last thing on a page. (throughout)

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

14

i. It is assumed that all the riders are requesting for the ride while at the cities where Uber

operates.

ii. Another assumption is that the riders will pay the fare through option they chose before

placing a ride.

iii. It is also assumed that drivers are all-over the city so no customer will miss their ride.

2.2 Specific requirements

This section outlines the requirements for the Uber application captured in the use cases and

any applicable supplementary specifications.

2.2.1 Use-case reports

This subsection describes the functional and non-requirements of the application.

1. Use Case Name: Request a Ride

Summary: The Request Ride option helps a rider to place a ride on the application.

Preconditions: Pick up and drop off locations are selected.

The type of ride is selected.

Triggers: The rider select the Confirm Ride option after select pick up and drop points.

Basic course of events (Scenario)

Sheldon Linker� 7/20/21 12:01 PM Comment: Don't let case numbers be confused with section numbering. You can change "1" and "2" and so on to "Case 1" and "Case 2" and so on, or to 2.2.1.1 and 2.2.1.2 and so on.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

15

Actor System Screen

! The

rider

selects

Enter

pickup

point

! The

system

displays

a

window

to input

the

pickup

location

and

destinati

on.

Sheldon Linker� 7/20/21 11:57 AM Comment: The format you're using here makes it harder to read than it should be. You don't even have enough room for a whole word in some cases. Switch from margins of 0.25/0.5 to 0. These items should be numbered. QA and project management are both going to need those numbers. In primary use cases, start your numbering at 1. In alternate flows, start your numbering where the alternate case diverges from the primary. Each sentence (throughout) must end in a period.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

16

! The

rider

selects

and

confirm

s the

ride

type.

! The

system

displays

the

Confirm

Pickup

option

for the

user.

Alternative paths:

! The requested ride is canceled.

Actor System Screen

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

17

Rider selects Cancel

The system displays the

Cancel Request

Rider clicks the Cancel

Request option

Post conditions:

! A ride has been requested.

! A driver accepts the ride request.

• Exceptional:

- No ride available in the area.

- Rider changes their route or cancels ride.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

18

2. Use Case: Accepts customer ride request

• Summary: The Accept Ride Request option helps a driver to view the available rides and

either accepts or does not.

• Preconditions: A rider must request for a ride.

• Triggers: The driver selects the Confirm Ride Request option on the available rides.

• Basic course of events

Actor System Screen

! Notifies driver of

the available rides

! User selects the

accept ride option

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

19

Post conditions

• The driver accepts the ride request.

• Exceptional

- Driver time out

- Insufficient account balance

3. Use Case Name: View Passenger List

Summary: The system displays a number of the available passengers that drivers should choose

from or rather accept the rides.

Preconditions: A ride has been requested by a customer.

The type of ride is also selected.

Triggers: The driver selects the view available rides option.

Basic course of events (Scenario):

Actor System Screen

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

20

! The user selects the

view passenger list

option.

! Displays the list of

available rides

Alternative paths:

! The requested ride is canceled.

Actor System Screen

The system removes that ride

from the list

Post conditions:

! A ride has been requested.

• Exceptional:

- No ride available in the area.

4. Rider changes their route or cancels ride. Use Case Name: Confirm payment

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

21

Summary: The Confirm Payment option helps the driver to verify that payment has been made

by the rider and it is of the right amount.

Preconditions: The rider has been picked up and dropped off at their destinations.

Payment has been made by the rider.

Triggers: The driver selects the Confirm Payment option after payment has been made by the

rider.

Basic course of events (Scenario)

Actor System Screen

! The rider makes

payment

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

22

! The system

displays the

amount paid

! The driver

confirms

payment

Post conditions:

! Payment has been made

! The right amount of fare has been paid

• Exceptional:

Sheldon Linker� 7/20/21 11:58 AM Comment: Each use of "Exceptional" should be "Exception" or "Exceptions" or "Exceptional case" or "Exceptional cases".

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

23

- No payment method available

5. Use Case Name: Make payment

Summary: The Make Payment option enables a rider to choose the mode of payment they want

to use in making payment and paying for their fare.

Preconditions: Pick up and drop off locations are selected

The ride is confirmed

The type of ride is selected

Triggers: The rider select the Make Payment option after confirming the ride.

Basic course of events (Scenario)

Actor System Screen

! Displays the

mode of

payment

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

24

! Selects the

mode of

payment

and makes

the payment

for the fare

Alternative paths:

! The preferred mode of payment is not displaying

Actor System Screen

! The system

displays the other

available payment

methods

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

25

! Rider selects the

method of payment

they prefer

Post conditions:

! A rider selects their preferred payment method

! The ride is also confirmed

• Exceptional:

- No payment method displayed by the system

6. Use Case Name: Pick up and drop off passengers

Summary: The system displays options for the users to notify users of their pickup and drop off

ETA

Preconditions: Pick up and drop off locations are selected.

The type of ride is selected.

The ride has been confirmed

Triggers: The rider select the Confirm Pickup and Destination option

Basic course of events (Scenario)

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

26

Actor System Screen

! The rider

enters the

pickup and

destination

! Displays the

available

locations for

pickup and

destination

Alternative paths:

! The rider changes the pickup location and destination

Sheldon Linker� 7/20/21 12:00 PM Comment: This sentence is missing its subject.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

27

Actor System Screen

! Rider selects an

alternative

pickup and

destination

Post conditions:

! System accepts the entered locations

! The rider confirms that the locations entered are correct

• Exceptional:

- No pickup and destinations

7. Use Case Name: Enters details

Summary: This option enables users to update their personal information in the system

Preconditions: User selected the create profile option

Triggers: The rider select the Create Profile option

Basic course of events (Scenario)

Actor System Screen

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

28

! The rider

selects

create

profile

option

! Confirm

account setup

Sheldon Linker� 7/20/21 12:00 PM Comment: This sentence is not written in 3rd person.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

29

! The rider

selects and

confirms

the ride

type.

! The system

displays the

Confirm

Pickup option

for the user.

Post conditions:

! A user profile has been set up

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

30

3. Supplementary Requirements

The application has other more requirements and even more use cases. Riders are also able

to cancel ride requests before they are picked, and this might be due to several reasons such as to

attend to a personal emergency.

The applications are only supported on smartphones, and this means that both the driver and

rider must have one. The phone should also support GPS to make it easy for the rider and driver

to locate each other.

4. Supporting Information

The following is an image for Uber application and other related information.

Uber Ride Version: 4.2 Software Requirements Specification Date : 10/06/2021 MInc-001

31

Appendix

The Uber application can be downloaded from the Google Play store.

Guidelines on how to install and use the application can be found on their official website, that

is, www.uber.com.