0% found this document useful (0 votes)
17 views30 pages

Graduation Project

Comparely is a mobile application that simplifies ride bookings by allowing users to compare prices and estimated arrival times from multiple ridesharing services like Uber, Careem, and Jeeny. It addresses issues of time inefficiency, cost optimization, and decision-making complexity by providing a centralized platform for users to make informed choices. The document outlines the project's objectives, deliverables, requirements, and system design, including user interface and database design.

Uploaded by

ahmed adwi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views30 pages

Graduation Project

Comparely is a mobile application that simplifies ride bookings by allowing users to compare prices and estimated arrival times from multiple ridesharing services like Uber, Careem, and Jeeny. It addresses issues of time inefficiency, cost optimization, and decision-making complexity by providing a centralized platform for users to make informed choices. The document outlines the project's objectives, deliverables, requirements, and system design, including user interface and database design.

Uploaded by

ahmed adwi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 30

Princess Sumaya University for Technology

King Hussein School for Computing Sciences

Comparely

Prepared By:
Ahmed Adawi​​ 20200929

Noordan Zaza​​ 20201062

Supervised By:
Dr. Ashraf Ahmad
Chapter 1​
Introduction

1.1 Overview:
Comparely is a user-friendly mobile application designed to simplify the process of
booking a ride from various ridesharing platforms. It empowers users to make informed
choices by comparing available car services based on price and estimated time of arrival
(ETA) to their location.

Whether you prioritize affordability or speed, this app is your go-to companion for
efficient and cost-effective transportation. Our key features include multi-platform
integration, the app integrates with three popular ridesharing services which are Uber,
Careem, and Jeeny to provide users with a comprehensive selection of car options,
another feature is price comparison where users can enter their destination and view a
comparison of ride prices from different providers for the same route.

This feature allows them to choose the most cost-effective option for their journey. Want
to reach your destination quickly? The app also offers an ETA comparison feature that
displays estimated arrival times for each available car service. Users can select the
service that best meets their time constraints.

1.2 Problem Statement:


1.2.1 Time Inefficiency:
The main objective of this application is to address the major problem of time
inefficiency that users encounter when they compare different ride-sharing options.
Currently, consumers have to manually switch between various applications such as
Careem, Uber, and Jeeny in order to find out the costs and journey times. This process is
not only time-consuming but also impractical, especially when quick travel decisions
need to be made.
1.2.2 Difficulty in Cost Optimization:

Customers have a major challenge when it comes to budgeting because there isn't a
comprehensive tool for price comparison. Users are unable to efficiently assess and
select the least expensive ride-sharing service due to the absence of a centralized
platform. As a result, consumers may choose to ignore less expensive options that are
concurrently available on many platforms, which raises trip expenses.

1.2.3 Lack of Integrated Distance Comparison:

The inability of a centralized price comparison tool to optimize costs is one of the main
problems that users encounter. Users find it difficult to quickly compare and choose the
most affordable ride-sharing service in the absence of a centralized platform. Because
they might not be aware of more affordable options that are offered on other platforms
at the same time, they wind up paying higher travel expenses. The project also attempts
to address the issue of not having a centralized platform to compare trip distances and
expected times of arrival (ETA) among different ride-sharing providers. It is currently
challenging for users to select the quickest or most convenient option since they lack a
straightforward means of comparing the journey time and distance estimations offered
by various businesses.

1.2.4 Decision-Making Complexity:


The ultimate goal of the research is to address the problem of difficult decision-making
brought on by the dispersed information found on different ride-sharing platforms. At
the moment, consumers must assess and contrast many elements on their own using
multiple programs, including price, travel time, and expected time of arrival (ETA). In
addition to making decision-making more difficult, this fragmented process adds
cognitive stress to the user. Users frequently make less informed decisions in the
absence of a consolidated and thorough picture of all pertinent information, which may
result in compromises on convenience, cost, or time. The purpose of the proposed
application is to streamline this decision-making process by combining all relevant data
into a single, easily navigable platform.
1.3 Related Work:

1.4 Document Outline:

Chapter Title Description


Chapter 1: Introduction An overview of the project's problem is
provided, with examples of any
related work.
Chapter 2: Project Plan Includes a thorough explanation of the
project's deliverables, tasks, and team
member responsibilities. It also includes risk
assessment, cost estimation, and necessary
tools.
Chapter 3: Requirements The description of each stakeholder, and
Specification the required software and hardware
specifications, along with both functional and
non-functional requirements.
Chapter 4: System Showing the logical and physical model
Design design, which include diagrams and the user
interface design.
Chapter 2​
Project Plan
2.1 Project Deliverables:

2.2 Project tasks:

2.3 Roles and Responsibilities:

Team Member Responsibilities


Ahmed Adawi Front-End, Back-End, Documentation

Noordan Zaza Front-End, Back-End, Documentation

2.4 Risk Assessment:

2.5 Cost Estimation:

2.6 Project Management Tools:

Name Description

Google Docs We employed it exclusively for the purpose of hosting


and organizing our project files, as well as for
submitting the final documentation.

Lucid Chart Designing the UML diagrams.


Figma Design of user-interface.

ERDplus Designing the database

Creately Designing the UML diagrams.


Chapter 3​
Requirements Specification

3.1 Stakeholders:

ID Stakeholder Description

S1 Users insert user information, get to see what prices


and ETAs are like.

S2 Ridesharing gets access to data that may be helpful.


companies

3.2 Platform Requirements:

Client-side

Requirement Description Importance

PRC1 Mobile Phone Required


PRC2 Internet Connection Required
PRC3 Connection to server Required

Server-side

Requirement Description Importance

PRC1 Internet connection Required


PRC2 Database storage Required
3.3 Functional Requirements:

ID Requirement Description
FR1 Sign-Up Our application will allow users to create a new
account by using their name, password, and
phone number.
FR2 Sign-In The application will allow the user to log in by
using their phone number and password.
FR3 View Profile The application will allow the user to see their
own information.
FR4 Edit Profile The application will allow the user to edit their
profile to change their information.
FR5 Enter The application will allow the user to enter
locations pickup and dropoff locations.
FR6 Forgot The application enables users to securely reset
Password their passwords, an OTP should be sent and
validated.
FR7 Logout The application allows the user to logout of the
account
FR8 Save data The system must be able to save user data and
other data.
3.4 Non-Functional Requirements:

The following table shows the non-functional requirements in our application:

ID Requirement Description
NFR1 Usability User Interface: The user interface should be simple
to use and intuitive.
NFR2 Performance Measuring the performance of the system.
NFR3 Compatibility The program needs to ensure that it works on a
variety of hardware and operating systems,
including different versions of mobile operating
systems.

3.5 Other Requirements:


Chapter 4​
System Design
4.1 Logical Model Design:

4.1.1 Activity Diagrams:


4.1.1.1 Sign-Up Activity Diagram:
The provided diagram illustrates the process of a user signing up for the system. Upon
opening the application, the user will be presented with the choice to click on the "sign up"
button and input their credentials, as well as their first and last names. Subsequently, the
system will verify the validity of the user's details. In the event that the details are invalid, an
error message will be shown. Conversely, if the details are valid, the target page will be
displayed.
4.1.1.2 Sign-In Activity Diagram:
The provided diagram illustrates the process of a user signing into the system. Upon
opening the app, the user will input their user credentials directly and proceed to
click on the "Sign in" button. Subsequently, the system will verify the validity of the
user details. In the event that the details are invalid, an error message will be
presented. Conversely, if the user details are valid, the target page will be displayed.
4.1.1.3 Booking Activity Diagram:
The activity diagram depicts the progression of a user's experience during a ride-booking
procedure. It commences with the user selecting their present location, proceeds with the
user choosing a destination, and subsequently involves comparing prices to determine the
most favorable option. Ultimately, the user is guided to the dedicated application of the
respective service to validate and complete the booking.
4.1.2 Sequence Diagrams:
4.1.2.1 Sign-Up Sequence Diagram:
The diagram below represents the Sign-Up sequence diagram, which describes the process
of creating a new account on the system. The user starts by entering their personal
information, such as name, phone number, and password. The system then validates this
information for correctness and completeness. If the information is valid, the system sends
an OTP to the user's phone for verification. Once the user enters the received OTP and
submits it, the system verifies it and creates a new account. In case the sign-up information
is invalid and the user has fewer than three attempts, the system informs the user of the
invalid sign-up and allows them to try again. However, if the total number of attempts
reaches four, the system denies the sign-up attempt for a certain period. Once the user
successfully signs up, they are directed to a welcome page where they can begin using the
service.
4.1.2.2 Sign-In Sequence Diagram:
The provided diagram showcases the Log-In Sequence Diagram, which effectively
demonstrates the process of logging into the system. Initially, the user inputs their sign-in
details, including their phone number and password. Subsequently, the system verifies this
information by cross-checking it with the server. If the sign-in details are accurate, the
system acknowledges the user's sign-in attempt and grants them access to the service.
Conversely, if the sign-in details are incorrect and the user has made less than three
attempts, the system clears the information fields and rejects the sign-in attempt. However,
if the total number of attempts reaches three, the system denies the sign-in attempt for a
specific duration.
4.1.3 Use case Diagrams:
4.1.4 Class Diagram:

4.1.4.1 App Class Diagram:


4.1.5 State Diagram:

4.1.5.1 Sign-Up State Diagram:


The Sign-Up State Diagram depicts the procedure of establishing a fresh account on the
system. In this scenario, the user is granted a restricted number of attempts, specifically
three, to effectively register with accurate particulars. In the event that the user inputs
incorrect or insufficient information, the system will reject the sign-up endeavor and request
the user to make another attempt. If, after three attempts, the user fails to register
successfully, the system will prohibit any further attempts for a specified duration. This
design aids in safeguarding the system against any undesired or malicious sign-ups.
4.1.5.2 Sign-In State Diagram:
The Sign-In State Diagram depicts the procedure of accessing the system by Signing-In. In
this scenario, the user is allowed a restricted number of attempts, specifically three, to
Sign-in successfully with the accurate credentials. In case the user provides incorrect or
incomplete information, the system will reject the Sign-in attempt and request the user to
retry. If the user fails to log in successfully after three attempts, the system will prohibit any
further attempts for a specific duration. This design aids in safeguarding the system against
any unauthorized or malicious Sign-ins.
4.1.5.3 Booking State Diagram:

4.2 Physical Model Design:

4.2.1 Database Design:


4.2.1.1 Database Entity Relationship Diagram:
4.2.1.2 Database Schema:

You might also like