Project Book (16200 - 17004)
Project Book (16200 - 17004)
Breakdown Assistance
Submitted By
Registration Number: 15502000932
Department of Computer Science and Engineering
Institute of Science and Technology
National University, Bangladesh
April, 2022
DECLARATION
We hereby declare that We have completed the work of this project under the supervision of
Sanjida Hoque Shoshey, Lecturer, Department of Computer Science and Engineering (CSE),
Institute of Science and Technology (IST), affiliated with the National University of Bangladesh.
we also declare that neither this project nor any part of this has been submitted elsewhere for the
award of any degree.
Signature
ii
APPROVAL
iii
ACKNOWLEDGMENTS
This is my humble attempt to present gratitude in preparing this report. I have truly drawn upon
my own experience as a student of computer science. This project would not have been possible
without the dedications and contributions of a number of individuals.
First and foremost, I would like to express my gratitude to Allah for always helping me, then I
would like to thank, Sanjida Hoque Shoshey, Lecturer, Department of Computer Science and
Engineering (CSE) for agreeing to supervise me during the project. Her eagerness helped me in
every step of the way as well as encouraged me to work with full effort.
iv
ABSTRACT
On Road Vehicle Breakdown Assistance (ORVBA) is going to be a good solution for the people who
seek help in the remote locations with mechanical issues of their vehicle. Users of the On Road
Vehicle Breakdown Assistance will be the registered public and they be getting connected with the
particular mechanic through the trustworthy On Road Vehicle Breakdown Assistance (ORVBA)
system. Because only the legally and approved mechanics are enlisted in the On Road Vehicle
Breakdown Assistance (ORVBA) system. Also, they are under monitoring by the ORVBA system for
not charging any extra service fee from the users as every user is updating their feedback about the
availed service through ORVBA system On Road Vehicle Breakdown Assistance (ORVBA) Finder
Project.
v
Table of Contents
Chapter Title Page No.
1 Introduction
1.1 Introduction 2
1.2 Objective 2
1.3 Motivation 2-3
1.4 Scope of Project 3
1.5 Methodology 3
1.6 Summary 4
2 Literature Review
2.1 Introduction 6
2.2 Application Program Interface 6
2.2.1 APIs by Use Cases 7
2.2.2 API Protocols 7
2.2.2.1 Remote Procedure Call (RPC) 7
2.2.2.2 Service Object Access Protocol (SOAP) 8
2.2.2.3 gRPC 8
2.3 Web Server 8
2.3.1 Node JS 9
2.4 NoSQL 9
2.4.1 Types of NoSQL Database 9-10
2.4.2 MongoDB 10
2.5 Web Application 10
2.5.1 Typical Web Application Flow 11
2.5.2 Progressive Web Application 11
2.5.3 Single Page Application 11-12
2.6 Summary 12
3 System Analysis
3.1 Introduction 14
3.2 Existing System 14
3.3 How does the traditional system work? 14
3.4 Advantages 14
3.5 Disadvantages 15
3.6 Summary 15
vi
4.6 UML Diagram 21
4.6.1 Use Case Diagram 21
4.7 Features 22
4.8 Summary 22
5 System Development
5.1 Introduction 24
5.2 Technology and Tool Overview 24
5.2.1 Node JS 24
5.2.2 Express JS 24
5.2.3 Firebase 25
5.2.4 Mongo DB 25
5.2.5 Bootstrap 25
5.3 Hardware and Software Requirement 26
5.3.1 Minimum Software Requirement 26
5.3.2 Minimum Hardware Requirement 26
5.4 System Overview 27
5.4.1 Create Account and Sign In 27
5.4.2 Request For service 28
5.4.3 Sending Request to Garage for Service 29-32
5.4.4 Request for Buying Products 32-33
5.5 Admin Dashboard 33-34
5.6 Garage Dashboard 35
5.7 Comparison with Existing system 35
5.8 Summary 35
6 System Testing
6.1 Introduction 37
6.2 Types of Testing 37
6.2.1 Functional Testing 37
6.2.2 Non- Functional Testing 38
6.2.3 Maintenance 38
6.3 Unit Testing 38
6.4 System Testing 38
6.5 Unit Testing Tool for React 39
6.5.1 Jest 39
6.5.2 Selenium Webdriver 39
6.5.3 Jasmine 39
6.6 Benefits of testing 40
vii
7 Conclusion and Future Work
7.1 Conclusion 42
7.2 Future Work 42
References 43-44
viii
List of Figures
Figure No. Title Page No.
ix
List of Tables
x
Chapter 1
Introduction
xi
1.1 Introduction
On Road Vehicle Breakdown Assistance is a web application which can search a mechanic basis of
the user’s location. On-road vehicle breakdown assistance is designed for the user to get quick service
at the event on any vehicle breakdown. Many internet users can access this website. This website will
help to reduce wasting user time for found a proper mechanic. It shows the user locating and directs
the nearest service provider to user. There is a chat platform to chat with mechanic. In that chat
platform user can ask questions and mechanic can reply for that relevant question. User requests
included user location, required service type, vehicle details, and description. Admin can view all
registered user and mechanic details.
1.2 Objective
Our modern age of technology greatly depends on the internet. Everything is converted to computer
based for easier and faster communication. Here we tried to develop such a system, which will ensure
some aspects,
1.3 Motivation
Today most of the people use their own vehicle for travel. While traveling most of drivers are face to
trouble as vehicle breakdown on the road. Vehicle breakdown cause to waste the user valuable time.
That is a worst experience they have to face. As well as it causes to get tired for the journey. when
the vehicle breakdown on the road, the driver has to search for mechanic and have to see a spare-part
shops near to their location. At that time if driver unable to search a good mechanic they have to ask
for help someone, but that may be not good technological help for driver.
But if driver have smart device and using this vehicle breakdown assistance, user can find suitable
mechanic within the few minutes. The most advantage of that is user can find a mechanic basis on
user location. If user needs vehicle spear-part shop, there is the facility search any shops.
2
If user has a technical problem related to vehicle, they can ask it via chat.
The user can find suitable mechanic within the few minutes with this system. The most advantage of
that is user can find a mechanic basis on user location. If user need vehicle spear-part the system will
also provide all kind of spare-parts through its own online store. If user has a technical problem related
to vehicle, they can ask it via chat.
1.5 Methodology
The design and development of the system followed the waterfall model as described below. The
waterfall model follows a series of processes, which are used during development. Usually, the stages
will require the gathering of requirements and their analysis.
3
The design of the system is the next stage, followed by coding the actual system. Then evaluation,
testing and debugging, if necessary, is the next step. Finally, the system will either be accepted and
therefore maintained or rejected.
1.6 Summary
In conclusion, thus our On-Road Vehicle Breakdown Assistance give better service. Our website
easily identifies the nearby mechanic which is very useful to the user who uses it in emergency needs.
Our website shall make all possible efforts to locate and direct the nearest service provider to user’s
location. It helps us the user for mechanical breakdown towing, fuel delivery, flare tire.
4
Chapter 2
Literature Review
1
2.1 Introduction
Literature review is a searching similar system and identifies the difference between researcher project
with existing systems. This is help to get a deep idea of the project. It provides the combination of
theoretical, methodological and current knowledge of findings according to subject. There is need to
gather the information according to the project. This chapter describe the how difference the “On-
Road Vehicle Breakdown Assistance” with other similar system.
An Application Program Interface (API) is a set of programming code that enables data
transmission between one software product and another. It also contains the terms of this data
exchange.
The software that needs to access information or functionality from software, calls its API while
specifying the requirements of how data/functionality must be provided. The other software returns
data/functionality requested by the former application.
6
2.2.1 APIs by Use Cases
APIs can be classified according to the systems for which they are designed.
Operating systems APIs defines how applications use the resources and services of operating
systems. Every OS has its set of APIs, for instance, Windows API or Linux API.
Remote APIs define standards of interaction for applications running on different machines. In
other words, one software product accesses resources located outside the device that requests
them, which explains the name. Since two remotely located applications are connected over a
communications network, particularly the internet, most remote APIs are written based on web
standards.
Web APIs class is the most common. Web APIs provides machine-readable data and
functionality transfer between web-based systems which represent client-server architecture.
These APIs mainly deliver requests from web applications and responses from servers using
Hypertext Transfer Protocol (HTTP).
The goal of API protocols is to standardize data exchange between web services. In this case,
standardization means the ability of diverse systems, written in different programming languages
and/or running on different Oss, or using different technologies, to seamlessly communicate with each
other
Web APIs may adhere to resource exchange principles based on a Remote Procedure Call. This
protocol specifies the interaction between client-server-based applications. One program (client)
requests data or functionality from another program (server), located in another computer on a
network, and the server sends the required response.
7
2.2.2.2 Service Object Access Protocol (SOAP)
2.2.2.3 gRPC
gRPC is an open-source universal API framework that is also classified under RPC. Unlike SOAP,
gRPC is much newer and was released publicly in 2015 by Google. With gRPC, the client application
can directly call methods from a server application located on a different computer as if it was a local
object. This makes it easier to create distributed services and applications. Like SOAP and REST, the
transport layer for gRPC is HTTP. However, similar to RCP, gRPC allows developers to define any
kind of function calls, rather than selecting from predefined options such as PUT and GET in the case
of REST.
A web server is software and hardware that uses HTTP (Hypertext Transfer Protocol) and other
protocols to respond to client requests made over the World Wide Web. The main job of a web server
is to display website content through storing, processing and delivering webpage to users.
8
2.3.1 Node JS
Node.js has a built-in module called HTTP, which allows Node.js to transfer data over the Hyper
Text Transfer Protocol (HTTP). The HTTP module can create an HTTP server that listens to server
ports and gives a response back to the client.
Node.js is a server-side platform built on Google Chrome’s JavaScript Engine (V8 Engine). Node.js
was developed by Ryan Dahl in 2009 and its latest version is v17.02.0. Node.js uses an event-
driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data- intensive
real-time applications that run across distributed devices.
Node.js is an open source, cross-platform runtime environment for developing server-side and
networking applications. Node.js applications are written in JavaScript, and can be run within the
Node.js runtime on OS X, Microsoft Windows, and Linux.
2.4 NoSQL
NoSQL databases (aka “not only SQL”) are non-tabular databases and store data differently than
relational tables. NoSQL databases come in a variety of types based on their data model. The main
types are document, key-value, wide-column, and graph. They provide flexible schemas and scale
easily with large amounts of data and high user loads.
When people use the term “NoSQL database,” they typically use it to refer to any non-relational
database.
Over time, four major types of NoSQL databases emerged: document databases, key-value
databases, wide-column stores, and graph databases.
9
Key-Value Databases: Key-value databases are a simpler type of database where each item
contains keys and values.
Wide-Column Stores: Wide-column stores store data in tables, rows, and dynamic columns.
Graph Database: Graph databases store data in nodes and edges. Nodes typically store
information about people, places, and things, while edges store information about the
relationships between the nodes.
2.4.2 MongoDB
A web application is a computer program that utilizes web browsers and web technology to perform
tasks over the Internet.
Web applications use a combination of server-side scripts to handle the storage and retrieval of the
information, and client-side scripts to present information to users. This allows users to interact with
the company using online forms, content management systems, shopping carts and more.
10
2.5.1 Typical Web Application
User triggers a request to the web server over the Internet, either through a web browser or
the application’s user interface.
Web server forwards this request to the appropriate web application server.
Web application server performs the requested task – such as querying the database or
processing the data – then generates the results of the requested data.
Web application server sends results to the web server with the requested information or
processed data.
Web server responds back to the client with the requested information that then appears on
the user’s display.
Progressive Web Apps are just web applications. Using progressive enhancement, new capabilities
are enabled in modern browsers. Using service workers and a web app manifest, your web
application becomes reliable and installable. If the new capabilities aren’t available, users still get
the core experience.
Companies that have launched Progressive Web Apps have seen impressive results. After switching
to a PWA, Twitter saw a 65% increase in pages per session, 75% more Tweets, and a 20% decrease
in bounce rate, all while reducing the size of their app by over 97%.
Progressive Web Apps provide you with a unique opportunity to deliver a web experience your users
will love. Using the latest web features to bring enhanced capabilities and reliability, Progressive Web
Apps allow what you build to be installed by anyone, anywhere, on any device with a single codebase.
Single Page Applications are a great tool for making incredibly engaging and unique experiences
for your users.
11
Some Single Page Application examples are like Gmail, Google Maps, Netflix, and many more are
using SPAs to build a fluid, scalable experience.
Single page application (SPA) is a single page where a lot of information stays the same and only a
few pieces need to be updated at a time. The SPA only sends what you need with each click, and
your browser renders that information. This is different to a traditional page load where the server
re-renders a full page with every click you make and sends it to your browser. This piece by piece,
client-side method makes load time must faster for users and makes the amount of information a
server has to send a lot less and a lot more cost efficient.
2.6 Summary
12
Chapter 3
System Analysis
13
3.1 Introduction
System analysis considers the functional requirements of the project. It is also where system
analysis takes place or analyzing the needs of the end users to ensure the system can meet their
expectations. In order to determine the requirements like – Who is going to use the system? How
will they use the system? What data should be input into the system? What data should be output by
the system? – These are general questions that get answered during the analysis process. Before
building a product a core understanding or knowledge of the product is very important. In this
chapter there is a brief description of an existing On Road Vehicle Breakdown system.
Help Me’ is a web-based solution that offers online mechanic finding service. Where users who
have their own mechanic database which is very minimal. Users with the contacts of people at the
particular place may look for a help from them only if they are ready to do. It is not possible to find
out the suitable mechanic for the desired service at remote locations. The only way they have is to
look for any other transportation at the time of issue and then they need to get a mechanic to the
particular location at which they have left their vehicle.
3.4 Advantages
14
3.5 Disadvantages
User needs to gather the mechanic related information through friends or through website.
It increases the human work and user could not easily identify the mechanic details and get help
from that workshop Retool is not suitable for small projects.
Though the mechanic details provided by the mechanic may vary by its location of workshop.
User could not find the nearby location of mechanic and get help they required on time.
3.6 Summary
In this chapter, a brief description about an existing On Road Vehicle Breakdown system is given
which gives an idea about the features and functionalities, working procedure etc.
15
Chapter 4
16
4.1 Introduction
In this chapter we will take a look at the design aspects of the “On Road Vehicle Breakdown
system”. An introduction of the provided features will be given. Subsequently, the program flow,
workflow, use case, class, data flow diagram will be outlined.
On Road Vehicle Breakdown Assistance is a web application which can search a mechanic basis of
the user’s location. On-road vehicle breakdown assistance is designed for the user to get quick
service at the event on any vehicle breakdown. Many internet users can access this website. This
website will help to reduce wasting user time for found a proper mechanic. It shows the user
locating and directs the nearest service provider to user. There is a chat platform to chat with
mechanic. In that chat platform user can ask questions and mechanic can reply for that relevant
question. User requests included user location, required service type, vehicle details, and
description. Admin can view all registered user and mechanic details.
This section describes the whole process of the work involved in developing the project “On Road
Vehicle Breakdown Assistance”.
The user has to register an account in order to use On Road Vehicle Breakdown Assistance. The
registration procedure is straight forward which can be done using Email Verification and Open
Authorization. After registering an account, User can login to the On Road Vehicle Breakdown
Assistance using valid credentials.
17
4.4 Work Flow Diagram
18
4.5 Data Flow Diagram
A data flow diagram shows the way information flows through a process or system. It includes data
inputs and outputs, data stores, and the various sub-processes the data moves through. Data flow
diagrams visually represent systems and processes that would be hard to describe in a chunk of text.
Visualizing each element makes it easy to identify inefficiencies and produce the best possible
system.
The Level-0 Diagram shows the system under consideration as a single high-level process and then
shows the relationship that the system has with other external entities. Another name for a Level-0
diagram is a Context-Level Data-Flow Diagram.
19
4.5.2 Level-1 Data Flow Diagram
A Level 1 DFD notates each of the main sub-processes that together form the complete system. We
can think of a level 1 DFD as an “exploded view” of the context diagram.
20
4.6 UML Design
UML, which stands for Unified Modeling Language, is a way to visually represent the architecture,
design, and implementation of complex software systems. UML is a standardized modeling language
that can be used across different programming languages and development processes, so the majority
of software developers will understand it and be able to apply it to their work.
Use case diagrams model how users called “actors” interact with the system. This type of UML
diagram should be a high-level overview of the relationships between actors and systems, so it can
be a great tool for explaining a system to a non-technical audience.
21
4.7 Features
While traveling most of drivers are face to trouble as vehicle breakdown on the road. Vehicle
breakdown cause to waste the user valuable time. That is a worst experience they have to face. As
well as it causes to get tired for the journey. When the vehicle breakdown on the road, the driver has
to search for mechanic and have to see a spare-part shops near to their location. At that time if driver
unable to search a good mechanic they have to ask for help someone, but that may be not good
technological help for driver.
But if driver have smart device and using this vehicle breakdown assistance, user can find suitable
mechanic within the few minutes. The most advantage of that is user can find a mechanic basis on
user location. If user needs vehicle spear-part shop, there are the facility searches any shops. If user
has a technical problem related to vehicle, they can ask it via chat.
4.8 Summary
In this chapter, a small overview of the proposed system is given which gives knowledge about the
proposed system design. This design includes the features of the proposed system, description and
working approach of the system. A representation of the workflow diagram and use case diagram,
dataflow diagram of the system is also presented in this chapter.
22
Chapter 5
System Development
23
5.1 Introduction
After carefully planning our project, we are ready to start the system development phase. The
system development phase involves putting the project plan into action. The system development
phase is where we actually do the project work to produce the deliverables. The word deliverable
means anything that our project delivers. The deliverables for our project include all of the
products or services we are performing, including all the project management documents we put
together. In this chapter, we will look at the technology needed for the project, used software
packages, and tools.
5.2.1 Node JS
Node.js is an open source, cross-platform runtime environment for developing server-side and
networking applications. Node.js applications are written in JavaScript, and can be run within the
Node.js runtime on OS X, Microsoft Windows, and Linux. Node.js has a built-in module called
HTTP, which allows Node.js to transfer data over the Hyper Text Transfer Protocol (HTTP). The
HTTP module can create an HTTP server that listens to server ports and gives a response back to
the client.
5.2.2 Express JS
Node.js is a fast JavaScript runtime environment that we use to build server-side applications,
but it does not know how to perform serving files, handling requests, and handling HTTP
methods, so this is where Express JS comes in. Express is a minimal and flexible Node.js web
application framework that provides a robust set of features for web and mobile applications.
Express provides a thin layer of fundamental web application features, without obscuring
Node.js features.
24
5.2.3 Firebase
Firebase is an app development platform that helps you build and grow apps and games users
love. Backed by Google and trusted by millions of businesses around the world. Firebase
provides tools for tracking analytics, reporting and fixing app crashes, creating marketing and
product experiment. Firebase offers a number of services out of which Authentication is one of
them. Firebase Authentication makes it easy for developers to build secure authentication
systems and enhances the sign-in and onboarding experience for users. This feature offers a
complete identity solution, supporting email and password accounts, phone auth, as well as
Google, Facebook, GitHub, Twitter login and more.
5.2.4 Mongo DB
MongoDB is a document-oriented NoSQL database used for high volume data storage. Instead
of using tables and rows as in the traditional relational databases, MongoDB makes use of
collections and documents. Documents consist of key-value pairs which are the basic unit of data
in MongoDB. Collections contain sets of documents and function which is the equivalent of
relational database tables. MongoDB is a database which came into light around the mid-2000s.
MongoDB makes use of records which are made up of documents that contain a data structure
composed of field and value pairs.
5.2.5 Bootstrap
Bootstrap is a free, open-source front-end development framework for the creation of websites
and web apps. Designed to enable responsive development of mobile-first websites, Bootstrap
provides a collection of syntax for template designs. Bootstrap makes responsive web design a
reality. It makes it possible for a web page or app to detect the visitor's screen size and
orientation and automatically adapt the display accordingly. The mobile-first approach assumes
smartphones, tablets and task-specific mobile apps are employees' primary tools for getting work
25
done. Bootstrap addresses the requirements of those technologies in design and includes UI
components, layouts, JavaScript tools and the implementation framework.
Editor VS Code
RAM Minimum 2 GB
26
Table 5.2: Required Hardware Tools for Development
The system overview is presented when a project is completed. It is used to present the concept
or the system. A good system overview provides enough information that the reader has a good
sense of the capacity of the system, what it can do, what it can interact with as well as any
special requirements. On Road Vehicle Breakdown Assistance can be named as TrustNRide.
A TrustNRide account gives user the access to use the system. In order to validate the user
activity having an account is the system is must. The procedure of creating account and sign in is
pretty straight forward like the other top systems. User can either use the Open Authorization or
the conventional email procedure to create and sign in to the account. Having an account ensures
that user has the ability to order any service or buy product from the system.
27
Figure 5.2: TrustNRide Sign in Page UI
After entering the system dashboard, the next step will be taken depending on the type of service
the user is interested in taking.
28
5.4.3 Sending Request to Garage for Service
For find the nearest garage, the user first needs to provide his own location. According to the
location provided by the user, the nearest garages will be displayed on the website. The user will
be able to choose the nearest garage among the garages that appear in the search results.
The user can choose the nearest garage according to his choice. Then the user will enter the
profile of the garage of his choice. In the profile of the garage, the name of the garage, phone
number and location will be provided.
29
Figure 5.6: Garage Profile Page UI
The location of the garage will be shown on the map inside the profile of the garage.
The user can see what kind of service the garage is providing in the garage's profile. The user can
choose the desired service and send a request to the garage for that service.
30
Figure 5.8: Showing Available Service Garage Profile
The user can pay for the service through his bank card.
31
Figure 5.10: Payment Gateway Page UI
32
Figure 5.12: Available Product Information and Add to Cart Page UI
Admin can accept pending order request and view delivery orders. Admin can add new garage
on the website, can add products and can add which area the website provides services.
33
Figure 5.14 Admin Dashboard Page UI
34
5.6 Garage Dashboard
5.8 Summary
In this chapter a description of the technology and tool overview is given. It also provides the
knowledge of Node JS, Express JS, Mongo DB, Firebase Authentication, Bootstrap, search
technique of provided service, and system overview.
35
Chapter 6
System Testing
36
6.1 Introduction
Software testing is an activity to check whether the actual results match the expected results and
to ensure that the software system is defect free. It involves execution of a software component
or system component to evaluate one or more properties of interest.
Software testing also helps to identify errors, gaps or missing requirements in contrary to the
actual requirements. It can be either done manually or using automated tools. Testing can be both
manual and also automation.
Functional Testing is a quality assurance (QA) process and type of black box testing that based
on its test cases on the specification of the software component under test cases. Different types
of functional testing are given below:
Unit Testing.
Integration Testing.
Smoke
UAT (User Acceptance Testing)
Localization
Globalization
Interoperability
37
6.2.2 Non-Functional Testing
Performance
Endurance
Load
Volume
Scalability
Useability
6.2.3 Maintenance
Once the system is deployed and it is in service for yours and decades. During this time the
system and its operational environment is often corrected, changed or extended. Different types
of non-Functional testing are given below:
Regression
Maintenance
Unit testing is a level of software testing where individual units/components are tested. The
purpose is to validate that each unit of the software performs are designed.
System Testing is a level of the software testing where complete and integrated software is
tested. The purpose of this test is to evaluate the system's compliance with specified
requirements.
38
6.5 Unit Testing Tool for React
In computer programming, unit testing is a software testing method by which individual units of
source code—sets of one or more computer program modules together with associated control
data, usage procedures, and operating procedures—are tested to determine whether they are fit
for use.
6.5.1 Jest
Selenium Webdriver is a high-end, top-of-the-line testing automation tools for creating end-to-
end testing scenarios. The power of Selenium Webdriver lies in its ability to control Web
browsers through programs and diversity in terms of its functionality on a range of browsers and
operating systems.
6.5.3 Jasmine
Largely a behavior-driven development framework for testing JavaScript code, Jasmine works
synchronously with Karma. Being the ‘go-to testing framework within the Angular
documentation, Jasmine is relatively dependency-free and does not require a Document Object
Model (DOM). Jasmine is loaded with a feature called ‘spy’ that allows spying on a function,
and attributes, parameters, and arguments can be tracked effectively.
39
6.6 Benefits of Testing
Software Testing is a process of identifying bugs or faults in your existing product before it is in
the hand of our end users.
Software testing helps in identifying and fixing bugs before the software becomes
operational, the risk of failure can be reduced considerably.
Any software does not necessarily work alone. Sometimes it has to integrate and function
with other existing legacy systems, as need be. In such cases software testing gives a
much-needed assurance that it will work suitably and its performance won't get affected
due to the integration.
Software testing is a part of the software development process. It performs a root cause
analysis for which helps in making it more efficient.
Software testing is carried out keeping the end user in mind. With a foresight for the
scenarios that the end user will possibly face, tests are carried out and their accuracy and
efficiency are duly noted for any discrepancies.
Reliability of software can be measured by certification or its conformation with any
technical standard. This helps in creating confidence and a healthy business relationship.
Software Testing can be of great use when done at right time as it enhances the efficiency of the
products by keeping end user in mind
40
Chapter 7
Conclusion and Future Work
41
7.1 Conclusion
When the vehicle breakdown occurs, the driver has to see a mechanic or the repair shop. The
driver has to ask for help from the people. If driver using this vehicle break down assistance user
can find mechanic basis on user location easily. Driver can get the mechanical help directly and
easily. If there is any need of spare parts while repairing the vehicle user have to looking for
spare parts shop. When the breakdown occurs user can find repair shop or spare- parts shops
also. This is help to save user’s time while the traveling. When the breakdown occurs, user can
fix their vehicle immediately. They won’t waste their time on the road. That helps to save their
valuable time. That makes comfortable the user. They won’t make tired their journey. There is a
chat platform that user and mechanic can chat. There user can ask question that related to vehicle
breakdown. The mechanic can reply for that. This is help to improve user’s technological
knowledge about vehicle.
On Road Vehicle Breakdown Assistance can be enhanced in some points. These are:
1. Use of Proper Maps: By adding all the features of the map, the user can be more
properly connected with the garage.
2. Add Mobile Banking Payment System: By adding mobile banking payment system
along with bank card, users can clear payment more easily from anywhere.
3. Support for Relational Database: Currently our service only offers support for Non-
relational Databases. There is a huge demand for Relational Databases too. Adding
support for Relational Databases will allow users to mock their applications without any
barrier.
4. Persist Data for Offline Usage: Allowing users to persist their data in offline mode will
be a great addition for users with unreliable internet connection or on the go.
42
References
[1] Mi-JinKim, Jong-Wook Jang and Yun-Sik Yu, "a Study on In-Vehicle Diagnosis System
using OBD-II with Navigation", IJCSNS International Journal of Computer Science and
Network Security, vol. 10, no. 9, September 2010.
[2] Javier E. Meseguer, Carlos T. Calafate, Juan Carlos Cano and Pietro Manzoni, "Driving
Styles: a smartphone application to assess driver behavior".
[3] Min Goo Lee, Yong Kuk Park, Kyung Kwon Jung and Jun Jae Yoo, "Estimation of Fuel
Consumption using In-Vehicle Parameters", International Journal of u-and e-Service Science and
Technology, vol. 4, no. 4, December 2011.
[4] M. Jyothi, Kiran and S. Ravi Teja, "Vehicle health monitoring system", International Journal
of Engineering Research and applications (IJERA), vol. 2, no. 5, September-October 2012.
[5] J. Kumar and V. Garg, "Security analysis of unstructured data in NOSQL MongoDB
database", 2017 International Conference on Computing and Communication Technologies for
Smart Nation (IC3TSN), 2017. Available: 10.1109/ic3tsn.2017.8284495 [Accessed 13 March
2022]
[6] D. Fortunato and J. Bernardino, "Progressive web apps: An alternative to the native mobile
Apps", 2018 13th Iberian Conference on Information Systems and Technologies (CISTI), 2018.
Available: 10.23919/cisti.2018.8399228 [Accessed 13 March 2022].
[7] A. Biørn-Hansen, T. Majchrzak and T. Grønli, "Progressive Web Apps: The Possible Web-
native Unifier for Mobile Development", Proceedings of the 13th International Conference on
Web Information Systems and Technologies, 2017. Available: 10.5220/0006353703440351
[Accessed 13 March 2022].
43
[8] "Cross-Origin Resource Sharing (CORS) - HTTP | MDN", Developer.mozilla.org, 2022.
[Online]. Available: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS. [Accessed:
13- Sep- 2022]
[9] "Express - Node.js web application framework", Expressjs.com, 2022. [Online]. Available:
https://expressjs.com/.[Accessed:13-Sep-2022].
[10] "Run JavaScript Everywhere.", Run JavaScript Everywhere., 2022. [Online]. Available:
https://nodejs.dev/en/.[Accessed:13-Sep-2022].
44