You are on page 1of 35

Heritage Institute of Technology,

Kolkata

BYO
BOOK YOUR OWN

A
Project Report
Submitted in partial fulfillment of the requirements for the degree of
MASTER OF COMPUTER APPLICATIONS
MAULANA ABUL KALAM AZAD UNIVERSITY OF TECHNOLOGY,
WEST BENGAL
JULY, 2022

By

Vivek Verma [ 12620010058 ]

Approved by:
Futureguard Edutech Pvt. Ltd.
ACKNOWLEDGEMEN
T

I am highly indebted to my project guide Rahul Sharma


(Senior Software Engineer) for guiding me and providing
constant supervision and necessary information regarding
the project & also for support in completing the project. I
am thankful to the Department of Computer
Applications for providing me easy access to all the
facilities and all the professors for guiding and motivating
me. I am also thankful to Futureguard Edutech Pvt. Ltd.
for giving me the opportunity to work on the project as an
intern and providing me easy access to the project
resources.
DECLARATION

This is to certify that the dissertation/project proposal


entitled “BYO: Book Your Own” is done by me, is an
authentic work carried out for the partial fulfillment of the
requirements for the award of the degree of Master of
Computer Application under the guidance of Prof.
____________. The matter embodied in this project work
has not been submitted earlier for award of any degree to
the best of my knowledge and belief.

_________________________
Vivek Verma [ 12620010058 ]
July 10, 2022

TO WHOMSOEVER IT MAY CONCERN


This is to certify that Vivek Verma (FGINT586VV) (“Intern”) has undertaken internship
project from our organization Futureguard Edutech Private Limited (“Company”) from
January 5, 2022 under the managerial guidance of Rahul Sharma (Senior Software
Engineer).
During the internship, Intern has undertaken project “BYO – Book your Own (Android
Application to book Goods Carrier Vehicle)” under the mentor guidance of Rahul Sharma
(Senior Software Engineer) and the project report is being submitted to Heritage Institute
of Technology, Kolkata by Vivek Verma (12620010058) in partial fulfilment for awarding
degree of Master of Computer Applications.

Yours Sincerely,
For Futureguard Edutech Private Limited

Ravi Kumar Verma


Director
Table Of Contents
Sl. Topic Pg. No.
No.
1 Introduction 6
2 Problem Definition 7
3 Objectives 8
4 Methodology 9
5 System Analysis 10
6 System Specifications 11
7 Data Flow Diagram 12 – 15
9 Entity Realationship Diagram 16 - 18
10 Database Design 20
11 UI Design 21 – 23
12 Modules 24
13 Implementation and Testing 25 – 33
14 Software System Attributes 34
16 Future Scope of the Project 35
17 Conclusion 35
18 Bibliography 35

6
INTRODUCTION
Online Carrier Vehicle Booking Management System is developed to
manage all packers and movers hiring work online. It is useful for
packers and movers booking agencies that are specialized in Hiring
carrier vehicles to customers. Using this system many carrier-booking
the agency is moving ahead to become a pioneer in the vehicle rental
industry by completely focusing on customers. Using this system it is
very easy for a customer to book a carrier vehicle online and the
vehicle-booking agency can also track their booking online. So it is also
very useful for a vehicle booking agency. It is an online system through
which customers can view available vehicles and drivers; schedule the
carrier job, view profiles, and book vehicles. Mostly peoples use carrier
vehicle services for their shifting heavy goods from one location to
another. The booking agency can also check which vehicle is free for
booking and which vehicles are on booking at present time. The
objective and scope of our project Book your Own (BYO) is to record
the details of various activities of the user. It will simplify the task and
reduce the paperwork. Using this vehicle booking management system
drivers can also become the partner of carrier vehicle booking agencies
by getting hired. Book Your Own (BYO) is an Android Application that
allows users to book a vehicle online from the comfort of their homes.
From this system, the vehicle rental company can manage all vehicle
bookings and customer information. Users can book vehicles and the
admin can confirm the booking and cancel the booking based on the
availability of the vehicle and drivers.
Presently packers and movers booking agency do all work offline when
a customer comes to them they take the booking order and call the
vehicle driver to check their availability with their vehicle, if they
manage to find a vehicle for booking they confirm the order otherwise
they cancel the order as they have no vehicle or driver available for the
booking. This process waste a lot of time of the customer and also of
packers and movers booking agency and it also give a bad name to the
agency but with our system vehicle agency can confirm the order within
a minute by checking the availability of vehicles as well as drivers for
booking. So this vehicle the booking system is helpful to ease
customer’s tasks whenever they need to shift their goods to anywhere in
PAN India.

7
PROBLEM DEFINITION
Moving from one apartment to the other in the same city or relocating to
another can be a Herculean task. While earlier we had to depend on
ourselves to ensure that everything is packed and moved safely, the
services of packers and movers have come to rescue to ensure a smooth
relocation. Packers and movers are service providers that pack and
move our belongings including furniture, suitcases, artefacts, and
furnishings, among others safely. This helps to ease out the moving
process as these service providers become our one stop shop for
relocating solutions.
Relocating? Time to call up the packers and movers agency. Take your
pick based on whether you are moving within the city or to another. If
you are moving within the city, hire a local packer and mover, and if
moving to another, pick the service provider that operates in multi-
cities. Shortlist on the basis of services provided and takes quotations.
Pick the one that provides you with maximum services at an affordable
cost. Also, credibility check is important. Hence, read customer
feedback across their social media platforms and on the company
website.

8
OBJECTIVES
We aim to design and create a booking management system for a
packers and movers vehicle rental company. This enables renting a
vehicle as well driver that can be used by a customer to shift goods from
one location to another in PAN India. This system increases customer
retention and efficiently simplifies vehicle booking and staff
Management.

This application Book Your Own (BYO) has a very user-friendly


interface. Thus the users will feel very easy to book using the app. The
app for the driver makes them advanced in terms of usage and
technology. By using this system admin can manage customers’
booking confirmations, postpone bookings, or cancel booking requests
based on availability. The vehicle and driver information are uploaded
or updated or deleted to/from the database from the admin portal. The
system is efficient and works fast.

The customer has to create a new account before logging in or he/she


can log into the Android App with his/her created account. Then he/she
can book the available vehicles. Whereas, Driver needs to login into the
Android App (BYO-Driver) using the provided credentials from the
admin. Likewise, all admin, customers, and drivers can track the
booking.

9
METHODOLOGY
10
SYSTEM ANALYSIS
The act, process, or profession of studying an activity (such as a procedure, a
business, or a physiological function) typically by mathematical means in order
to define its goals or purposes and to discover operations and procedures for
accomplishing them most efficiently.

Feasibility Study:
Technical feasibility: Since Flutter is an open source and easily available
platform by Google, it is easy to develop android application like “BYO - Book
Your Own” using it. Moreover applications developed in Flutter can run on both
Android and also in IOS with minimal updates and are very fast and user
interactive. Also in Firebase it is easy to handle collections of data and even
provides various other features.
Economic feasibility: Since Flutter is a open source and free to all platform it
is also economically feasible to develop an android application like “BYO -
Book Your Own” using it.
Legal feasibility: Since Flutter is a open source and free to all platform it is
also legally feasible to develop an android application like “BYO - Book Your
Own” using it, because it is provided by Google and there is no copyright issue.
Operational feasibility: Since Applications developed in Flutter are user
interactive, users can handle this kind of Applications easily.
Social feasibility: “BYO - Book Your Own” can be very much popular in the
society if handled effeciently.

11
SOFTWARE AND HARDWARE REQUIREMENTS
This section describes the minimum software and hardware requirements of the system to
run this project
 Operating System Android
 Version Android Jelly Bean, v16, 4.1.x
 RAM 2GB
 Secondary Storage 50MB
TECHNOLOGY USED
We have developed this project using the below technology
 FLUTTER: Screen layout has been designed in Flutter.
 DART: For all the validation tasks and logical coding, Dart which comes with Flutter
is used.
 FIREBASE: Firebase is used as the server and also serves as the database to this
project
SOFTWARE USED
 Operating system- Windows 7 is the minimum requirement to build this project. Here,
Windows 10 is used as the operating system as it is stable and supports more features
and is more user friendly.
 Development tools and Programming language- VS Code is used as the code editor,
Flutter is used for designing the UI and the whole coding is done by Dart language and
Firebase is used for sever side scripting and storing of data.
HARDWARE USED
 Intel core i3 8th generation or above is preferred. In this project, Intel core i5 10 th
generation is used as a processor because it is faster than other processors and provide
reliable and stable system and we can run our PC for longtime. By using this
processor, we can keep on developing our project without any worries.
 Minimum Ram of 4 GB is required for this project. Ram 8 GB is used as it will
provide fast reading and writing capabilities and will in turn support in processing.
 A system with Android OS of minimum SDK version 19 should be present to be used
as a emulator.

12
DATA FLOW DIAGRAM
A Data Flow Diagram (DFD) is a diagram that describes the flow of data and the processes
that change data throughout a system. It is a structured analysis and design tool that can be
used for flowcharting in place of or in association with information. When analysts prepare
the Data Flow Diagram, they specify the user needs at a level of detail that virtually
determines the information flow into and out of the system and the required data resources.
This network is constructed by using a set of symbols that do not imply physical
implementations.
The Data Flow Diagram reviews the current physical system, prepares input and output
specification, specifies the implementation plan etc. Four basic symbols are used to construct
data flow diagrams. They are symbols that represent data source, data flows, and data
transformations and data storage. The points at which data are transformed are represented
by enclosed figures, usually circles, which are called nodes

LEVEL 0 DFD/ CONTEXT


LEVEL DFD

13
LEVEL 1 DFD

14
Use Case Diagram

15
DATABASE DESIGN

17
USER INTERFACE DESIGN [ADMIN]
Login

Dashboard

18
Customer Master
Driver Master
19

Ride Master
USER INTERFACE

Coupon Master
DESIGN [ADMIN]
20
USER INTERFACE DESIGN
[CUSTOMER]

Register Screen Login Screen


21

Dashboard Screen Rewards Screen

22
23
Booking Screen 1.2 Booking Screen 1.3

24

Booking Screen 1.4 Track Trip Screen


25
USER INTERFACE DESIGN [DRIVER]

Login Screen Home Screen


26

Trips Screen Settings Screen


27

MODULES
There are 2 modules in general in this application- User module and Admin module.
User module can be further classified into the following modules: -
 Login Module- Here the users can log in and sign in using their google account and
google authentication feature is used so there are no issues related to security.
 Add Friends Module- In this module, the user can search and view other user’s profile
and unfriend or send requests to them. Users can also accept and decline requests of
others to him/her to be their friend.
 Post module- The user can post or share images, videos, files or texts with his friends
and delete them whenever required. Also, users can view and download other posts.
 Like, Comment and Share module- The user can like, share or comment on other
posts and can delete his comments on them and view the comments done by others.
 Chat Module- In this module, the user can chat with their friends or even call them.
Also, they can create a group with his friends and chat with all of them at a time.
 Stories Module - Users can upload/delete their day to day stories which are
temporary and does not remain in their timeline, and also view and download other’s
stories. Also, the user can view who has seen the story uploaded by him time to time.
 Edit Profile Module- User can edit his details like image, name and phone number.
 Notifications Module- User can view messages sent by the admin and can even send
a mail to the admin.
Admin module can be further classified into the following modules: -
 Login Module- In this module, the admin can log in through their google account.
 View Users Module- Here the admin can view all the users on this application “BYO -
Book Your Own” and even delete a particular user completely. Admin can search and
filter users on the basis of different categories. Also, the admin can generate a report
in pdf format with details of all the users.
 User Profile module- Admin can view the particular user’s all posts, friends and
requests and even send messages. Admin can delete posts and the comments on it.
Also, the admin can generate a pdf with all the details of the user like his posts,
friends and requests in it.
 Search Posts Module- The admin can search for posts based on its time posted.
 Add admin- The admin can also add some other email ids as admins who can again
later perform all the tasks of the admin.

28

IMPLEMENTATION AND
TESTING
INTRODUCTION
A software system test plan is a document that describes the objectives, scope,
approach and focus of software testing effort. The process of preparing a test plan
is a usual way to think the efforts needed to validate the acceptability of a
software product. The complete document will help people outside the test group
understand the "WHY" and "HOW" product validation. It should be thorough
enough to be useful but not so thorough that no one outside the test group will
read it. Testing is the process of running a system with the intention of finding
errors. Testing enhances the integrity of a system by detecting deviations in
design and errors in the system. Testing aims at detecting error-prone areas. This
helps in the prevention of errors in a system. Testing also adds value to the
product by conforming to the user requirements. The main purpose of testing is
to detect errors and error-prone areas in a system. Testing must be thorough and
well-planned. A partially tested system is as bad as an untested system and the
price of an untested and under-tested system is high. The implementation is the
final and important phase. It involves user-training, system testing in order to
ensure successful running of the proposed system. The user tests the system and
changes are made according to their needs. The testing involves the testing of the
developed system using various kinds of data. While testing, errors are noted and
correctness is the mode.

29
OBJECTIVES OF TESTING
The objective our test plan is to find and report as many bugs as possible to
improve the integrity of our program. Although exhaustive testing is not possible,
we will exercise a broad range of tests to achieve our goal. Our user interface to
utilize these functions is designed to be user-friendly and provide easy
manipulation of the tree. The application will only be used as a demonstration
tool, but we would like to ensure that it could be run from a variety of platforms
with little impact on performance or usability.
Process Overview
The following represents the overall flow of the testing process:
 Identify which particular test(s) will be used to test each module.
o Review the test data and test cases to ensure that the unit has been
thoroughly verified and that the test data and test cases are adequate
to verify proper operation of the unit.
o Identify the expected results for each test.
o Document the test case configuration, test data, and expected results.
o Perform the test(s).
o Document the test data, test cases, and test configuration used during
the testing process. This information shall be submitted via the
Unit/System Test Report (STR).
o Successful unit testing is required before the unit is eligible for
component integration/system testing.
o Unsuccessful testing requires a Bug Report Form to be generated.
This document shall describe the test case, the problem encountered,
its possible cause, and the sequence of events that led to the problem.
It shall be used as a basis for later technical analysis.
 Test documents and reports shall be submitted. Any specifications to be
reviewed, revised, or updated shall be handled immediately

30
TEST CASES
Test Type Unit Testing

Test Case Number 1

Test Case Name Customer Registration


The customer will launch the app and try to create account. The user needs to input their
Test Case Description Fullname, Unique Mobile, and Password. The test case will validate the inputs and
proceed to check for uniqueness for Mobile provided.

Items to be tested
1 Validation of the Fullname which should be at least 3 characters.

2 Validation of mobile uniqueness comparing with other mobiles in the database.

Specification

Input Expected Output/Result


Fullname with length 10
characters Fullname input is valid
Mobile Number provided
which already exist in the
database Already an account with the mobile. Try another

Unique Mobile Account created Successfully

Test Type Unit Testing

Test Case Number 2

Test Case Name Customer Login


The customer will launch the app and try to login to the account. The user needs to input
Test Case Description their Unique Mobile, and Password. The test case will validate the inputs and proceed to
check for such account with mobile and password provided.

Items to be tested

1 Validation of the mobile which should be 10 digits.

2 Check for records in the database with the provided credentials.

Specification

Input Expected Output/Result


Mobile with 10 digits and
wrong password Wrong Password. Try again
Mobile with 10 digits and
correct password Login Successful. Redirect to Dashboard.

Mobile with 5 digits Invalid Mobile. Must be 10 digits.

Test Type Unit Testing

Test Case Number 3

Test Case Name Driver Login


The driver will launch the app and try to login to the account. The driver needs to input
Test Case Description their Unique Mobile, and Password provided by the admin. The test case will validate the
inputs and proceed to check for such account with mobile and password provided.

Items to be tested
1 Validation of the mobile which should be 10 digits.

2 Check for records in the database with the provided credentials.

Specification

Input Expected Output/Result


Mobile with 10 digits and
wrong password Wrong Password. Try again
Mobile with 10 digits and
correct password Login Successful. Redirect to Dashboard.

Mobile with 5 digits Invalid Mobile. Must be 10 digits.

Test Type Unit Testing

Test Case Number 4

Test Case Name Admin Login


The admin will open the portal using the link and try to login to the account. The admin
Test Case Description needs to input Email, and Password. The test case will validate the inputs and proceed to
check for such account with email and password provided.

Items to be tested

1 Validation of the email using regular expressions.

2 Check for records in the database with the provided credentials.

Specification

Input Expected Output/Result


Correct Email and wrong
password Wrong Password. Try again
Correct Email and correct
password Login Successful. Redirect to Dashboard.

Incorrect email Invalid email.

Test Type Unit Testing

Test Case Number 5

Test Case Name Booking


The customer will try to book a vehicle at a schedule time. The App will try to search for
Test Case Description the available driver and vehicle for that particular time period. If any available then show
it.

Items to be tested

1 Schedule time must be greater than today’s date and time


2 Check for records in the database for available drivers and vehicles

Specification

Input Expected Output/Result


Schedule time less than
today’s date and time Invalid time. Booking not allowed.
Schedule time for future
booking and driver is
available Shows drivers list that are available for booking. Click to proceed.

33

SOFTWARE SYSTEM
ATTRIBUTES

DATABASE SECURITY
System security measure is meant to be provided to make your system reliable
and secured from unauthorized user may create threats to the system. So you
should follow some security measures. We have used security levels in database
level at system level. Also, Firebase offers a very secure and authentic database.

SYSTEM SECURITY
If we talk about the system security in our proposed system we have
implemented with the help of shared preferences, using which we can store
authentication details in user’s device. Once a user has logged out then he/she
will not be able to perform any task before signing back again. A high level of
authentic login is given to the system as Google authentication is used here, so
this not a easy task to enter without authorization and authentication.

LIMITATIONS
 Since it is an ONLINE platform users need internet connection to use it.
 People who are not familiar with phones can’t use it properly.
 For instance, an user can share or post only one entity and not multiple files
at a time.
 Until further updates, the user cannot edit a post, comment or a story once
posted.
 Since, for now a free version of Firebase is in use, so the storage is limited,
but it can be extended later on the basis of its popularity.

34
Future Scope of the Project
There is a huge future scope of this facility as many more features such as a notification
system for every requests, chats etc. can be added to notify and keep all the users updated
every time. A cloud storage system for backups can also be added. For now, a user can post
only one entity at a time but a feature to upload multiple files at a time can be added. Also, a
feature of suggestions to different users, promotions, posts, and advertisements on the basis
of their regular activities can be added to this project that would take this project to a whole
new level thus making it more interactive, more user friendly, more efficient and a project
which fulfills each user’s need in the best way possible.
CONCLUSION
This android application “BYO - Book Your Own” provides a computerized version of
socializing in the outside world which will benefit the users as well as some organizations to
promote anything worldwide.
It makes entire process online where the users can add friends, accept and send requests,
share something easily with all of his/her friends, support others with likes and comments,
chat and call friends, create chat groups, add stories etc. The admin can handle and maintain
everything by messaging, deleting and viewing profiles of all the users and henceforth
generate reports in pdf format. All these can be done just from the phone in their pocket.

REFERENCE/BIBLIOGRAPHY
https://pub.dev
https://docs.flutter.dev
https://stackoverflow.com
https://firebase.google.com
Various books and Youtube videos

You might also like