Customer Service Chatbot For Computer Accessories Ecommerce Site
Customer Service Chatbot For Computer Accessories Ecommerce Site
Gerald Kipngeno
July 2021
A project proposal submitted in partial fulfillment of the requirements for the award of
Bachelor of Science in Computer Science at the School of Computing and information
Technology,
Murang’a University of Technology
i
DECLARATION
This proposal is my own original work and does not contain any unreferenced material from any
other source. I declare that this proposal was done under the guidance of Professor Muchiri. It is
submitted for partial fulfillment of the requirements for the award of Bachelor of science in
computer science. The results embodied in this proposal have not been submitted to any other
university for the award of any degree.
SUPERVISOR
DEDICATION
I dedicate my dissertation work to my family and many friends. A special feeling to my loving
parents whose words of encouragement and push for tenacity ring in my ears. My sisters and
brothers have never left my side and are very special.
I also dedicate this dissertation to many friends who have supported me throughout the whole
process. I will always appreciate all they have done, especially Victor Buzes for helping me
develop my technology skills, Michael litei and Denis Kibet.
iii
ACKNOWLEDGMENTS
I take this opportunity to express my deepest gratitude and appreciation to all those people who
made this proposal work easier with words of encouragement, motivation, discipline and faith by
offering different places to look to expand my ideas and helped me towards the successful
completion of this proposal work.
It’s with pride and deepest sense of gratitude that I place my profound expression towards,
And its illustrious staff especially our most respected lecturer Professor Muchiri, PhD for his
matured and inspiring guidance. I would like to thank the lab faculties for their sincere help in
completion of my proposal work.
I am also grateful to my friends for their valuable suggestions and words of inspiration for my
proposal work.
iv
ABSTRACT
Chatbots have proven to be a solid tool for customer satisfaction and a tremendous asset to
businesses saving them a lot of time and money. Running chatbots in rapidly developing areas of
web business can help the customer take care of themselves.
This study describes a web-based chatbot, a chatbot that simplifies the interface with the website.
The bot understands and converses with the customer in simple language. This chatbot is
connected to an e-commerce site that offers an assortment of items with various strengths. This
chatbot helps you choose the most suitable item for you after chatting with it. This is especially
useful when you haven't limited the element's standards. It basically works like an online robotic
framework. In addition to selling items, this chatbot will also make proposals and measure
demand.
In this paper, the researcher presents a Super-Agent, a customer support chatbot that uses wide
reach and freely accessible web business information. Unmistakable of existing partners, Super-
Agent leverages information from on-page item descriptions as well as customer-produced
content from internet business sites, which is more pragmatic and practical while responding to
dismal inquiries, opening up human care staff to respond to much more valuable inquiries. The
researcher presents a super-agent as a further increase of standard internet browsers and shows
its convenience for the customer's online shopping experience.
v
TABLE OF CONTENTS
DEDICATION................................................................................................................................ii
ACKNOWLEDGMENTS..............................................................................................................iii
TABLE OF CONTENTS................................................................................................................v
LIST OF FIGURES.......................................................................................................................vii
LIST OF TABLES.......................................................................................................................viii
CHAPTER ONE..............................................................................................................................1
INTRODUCTION...........................................................................................................................1
1.1 Overview...................................................................................................................................1
LITERATURE REVIEW................................................................................................................4
2.1 Introduction...............................................................................................................................4
3.1 Introduction.............................................................................................................................16
3.2 System Development Methodology........................................................................................16
3.3 Data Collection Methods.........................................................................................................17
3.4 System Requirements..............................................................................................................18
vi
APPENDICES...............................................................................................................................22
LIST OF FIGURES
LIST OF TABLES
Table 1: Budget.............................................................................................................................22
Table 2: Project Schedule.............................................................................................................23
1
CHAPTER ONE
INTRODUCTION
1.1 Overview
This chapter introduces the background to the study, problem statement, objectives of the study,
significance of the study and scope of the study.
A chatterbot or chatbot is a PC program intended to mimic a clever discussion with at least one
human clients through hear-able or text-based techniques. Chatbots can be customized for casual
conversation, or can likewise fill in as a mechanism of cooperation with clients, giving them
responds to dependent on standard inquiries. This chatbot gets setting and conveys a reaction
dependent on the message given to it. Chatbot is one of numerous instances of AI.
The other perspective to be considered is a website. These days, most sites depend on menu-
based navigation and a search bar to give data to the client. In any case, sites with a lot of
substance and an ineffectively organized navigation can make it hard for client to discover the
data effectively and rapidly. For example, in the event that you think about a web-based
shopping portal, it has an enormous index of items. Perusing the items can be testing and tedious
given the assortment of highlights an item can have.
In this situation a chatbot to make it simpler for the client to discover data. The client has a
choice to converse with the bot and pose it typical inquiries to get reactions. The chatbot has
prearranged reactions, yet it can work with dynamic data from a client message to make a
significant discussion and recommend important data. This is a promising option when
contrasted with utilizing search and sort-based instruments. In this sense, chatbot is utilized to
imagine the substance of a corpus (for example tests of a certifiable book) and to offer responses
to a particular area, which in this setting is an ecommerce website.
2
Today Ecommerce websites contains a wide range of products in each of its category which
results in a huge and complex database. These products are spread across numerous amounts of
web pages and categorized according to their type. Navigating through these web pages to locate
relevant results, according to the user specifications, can be non-resulting, time consuming and
annoy at times.
A user visiting an Ecommerce may look for a specific product, or generally browse the website.
The search tools use keyword matching to display multiple results to the user’s query. Out of
these results, some might be relevant to the user or the results might not be the product that the
user want to buy. This could be a bad experience to the customer. The search tools fail to deliver
relevant results when ambiguous and imprecise words is used to describe a product. Also, in case
a user does not have a clear knowledge about the product he/she intends to buy, systems will not
be able to give appropriate results to such a user.
The chatbot try to solve the above-mentioned problems by presenting an easier way of
interacting with the website as well as user. It interacts with you and also suggests products
suitable for you.
1.4 Objectives
The main objective of this study is to develop an online customer service chatbot for computer
accessories ecommerce site.
(i) To analyse the existing ecommerce chatbots with the aim of establishing requirements
for developing an intelligent customer service chatbot.
3
(ii) To design an intelligent bot that will converse with customers and assist them in making
purchases in ecommerce websites.
(iii) To develop and test an intelligent ecommerce chatbot that comprehends Natural
language.
This study is conducted to propose and develop a system that would be of great advantage to the
customers, computer accessories ecommerce website, researcher and to future researchers.
Customers – Make selling and buying easier and more interesting to customers in the sense that
one can purchase products from the comfort of his or her own home.
Computer accessories ecommerce website - The result of the study would;
Ease the customer support staff the burden of attending to customer queries.
Increase sales to the company
It improves the knowledge of seller’s strategies (i.e. how to adjust, in what order, typical
mistakes and remediation).
Researcher – the conduct of this study helped the researcher to work independently and practice
the knowledge of System Analysis and Design.
Future researchers (Computing world) – This study serves as a guide for other researchers
who intend to explore along the same line of study.
1.6 Scope of the Study
This study takes overview on ecommerce sales chatbot system. Due to time factor, the researcher
will be focusing on training the chatbot to handle sales, to give recommendations to customers
4
and measure demand since we have so many areas of study. Implementing all the fields of study
will take several months before it is successfully implemented, that is a major reason why the
researcher is limiting the research to the above mentioned three fields of study which is sales,
recommendations and demand.
CHAPTER TWO
LITERATURE REVIEW
2.1 Introduction
This chapter describes the requirements gathering and Analysis techniques, System design
techniques, System development techniques/Technologies, System testing techniques, existing
systems and finally a conclusion statement.
Collecting requirements is an important part of any project. It enables the user to understand and
respond to the needs of the customer. The methods used to collect this data may include
techniques such as brainstorming, focus groups, interviews e.t.c.
Brainstorming
Brainstorming is used in gathering requirements to get as many ideas as possible from a group of
people. Typically used to identify possible solutions to problems and clarify details of
opportunities.
Focus Group
A focus group is a gathering of people representative of the users or customers of a product to get
feedback. Feedback can be gathered on needs / opportunities / issues to identify requirements, or
can be gathered to validate and refine requirements already raised. This form of market research
differs from brainstorming in that it is a process managed with specific participants.
5
Interviews
Interviews with stakeholders and users are essential to building great software. Without
understanding the goals and expectations of users and stakeholders, we are unlikely to meet
them. We also need to recognize the perspective of each interviewee, so that we can properly
weigh and process their contributions. Listening is the skill that helps a good analyst gain more
value from an interview than the average analyst. In this technique, the analyst interviews the tea
producers with the management staff of the tea factory to identify their needs.
Requirements analysis is the process of setting user expectations for new software that is being
built or changed. Requirements analysis includes the tasks that make it possible to determine the
needs or conditions to be met for a new or modified product or project, taking into account the
possibly conflicting requirements of the various stakeholders, by analyzing, documenting,
validating and managing the requirements. software or system requirements. Activities
performed in the requirements analysis phase include:
System design is the phase that bridges the gap between the problem area and the existing system
in a manageable way
6
A use case diagram is a graphical representation of a user's possible interactions with a system. A
use case diagram shows various use cases and different types of system users and will often be
accompanied by other types of diagrams.
7
Chatbot System
Container
login
display chat
Query from
user
process
question
add
information
update
information
delete
information
User Bot
Give
recommend
ation
view
information
Make a
decision Admin
Makes
payment
Process
payment
Schedules
product
delivery
Awaits
product
delivery
Logout
It is used to describe the dynamic aspects of the system. It is basically a flowchart to represent
the flow from one activity to another activity. The activity is the operation of the system. The
control flow is drawn from on operation to another.
checkscope
reenter query
apply NLP
technique
Outofscope
within scope
generate
response
display response
to the user
A sequence diagram depicts interaction between objects in a sequential manner i.e. the order in
which those interactions takes place. They describe how and in what order the objects in a
system function.
This section describes technologies that the researcher will use in developing the system i.e.
React, Node.js, Express, Dialog Flow, Heroku, Git and MongoDB.
10
2.4.1 Frontend
React
The researcher will need a frontend app to display the bot. The researcher will be using the
react library, the interface will be made with react. React returns HTML and CSS and it
generates the user interface. That is a webpage and a chatbot.
2.4.2 Backend
The frontend will need to communicate with the backend, to get the data to display. Data like
items on the page and for the bot, it needs to get the bot’s response and extra data for the
response. So, the user request will go to the backend app, to be processed and then returned to
the frontend.
Node.js
Backend will be built using Node.js. Node is a great language for backend web apps.
Express
Express is a node.js framework that makes building backend apps much easier task. It helps
with requests and routing.
Git
The researcher intends to use Git for tracking changes, versioning and deploying to Heroku.
11
2.4.2.3. Deployment
Heroku
The backend app will be hosted on Heroku. The researcher chose Heroku, because it is easy to
use and it has a free tier with no limitations.
The researcher will need something, that will translate what the user says to the bot into
something the backend will be able to understand. For this purpose, the researcher intends
intends to use Dialog Flow for this purpose.
Dialog Flow
It is a Google Service, an NLP, that is natural language processor. It is NLU (Natural Language
Understanding) and also NLP (Natural Language Processing). NLU helps to understand what the
user wants, what action does he or she ask for, what are the extra parameters, what are his or her
intent. So, NLU transforms natural language to something a computer or our app can understand.
NLP are all the systems that work together to handle end-to-end interactions between machines
and humans in the preferred language of the human. It lets people and machines talk to each
other “naturally”. So, Dialog Flow also helps with returning the right response and it provides
integrations with chat platforms.
Thus, it will parse natural language queries, return intents, actions, parameters and contexts.
12
2.4.4. Database
MongoDB
It is document-oriented database.
The researcher intends to use MongoDB to store information. So, the system will have some
information in Mongo to display to the user and the system will also store in the Mongo the
information it will gather from the user.
This is a type of software testing where the individual units or components of a software are
tested. It is done during the development (coding phase).
The researcher intends to perform this type of test during the coding phase to ensure that
different components i.e. the frontend, backend and the Natural Language Processing (Dialog
Flow) section is functioning correctly. Each of the components will be tested independently
during the coding phase to help fix bugs early in the development cycle.
This is a type of testing where software modules are integrated logically and tested as a group.
Different modules that makes up this system i.e. the frontend, backend and Dialog flow would be
tested to ensure that they are working in unity.
This is a testing that validates the complete and fully integrated software product. This test would
be done once the system has been completed to ensure that the system is functioning correctly or
not. Fully integrated components of the system would be tested to check how components
13
interact with one another and with the system as a whole. Every input in the application would
be verified through testing to check for desired outputs.
It is a type of testing performed by the end user or client to verify or accept the software system
before moving the software system to the production environment. The system will be tested
with the end users/client to evaluate the system’s compliance with the business requirements and
verify if it has met the required criteria for delivery to end users.
2.6.1 Argomall
It is a Philippines’ ecommerce giant that sells consumer goods. Their chatbot allows the
customers to know all the key details of Argomall like details of delivery. A consumer can also
ask questions and have a conversation with the support Agent of Argomall.
One of its key features is that it enables Google search API which allows customers to search
keywords like “IphoneX” and the result from their store will pop-up.
Limitations
This chatbot does not give recommendations to the customers when it has collected enough
information based on the user queries collected during the live chat. It does not also measure
demand which is key in a bid to increase sales of the Argomall ecommerce site.
14
2.6.2 Lego
LEGO’s chatbot solves a big problem for the customers i.e. selecting the right gift, they call it
‘Ralph’. Their chatbot gives customized recommendations to every user directly in messenger. It
takes a few questions first like, your location, how old the person is and your budget. Once your
answer these questions it will recommend gifts for you. After having all the details, it also allows
you to choose the theme of the product you want to buy like travel, planning, adventure or
something else. Once the customer selects the product of their choosing, it adds the product to
their cart on Lego’s website so that they can make a purchase.
Limitations
The chatbot does not give the customers the flexibility of using either voice based or text-based
methods in interacting with it. It only uses the text-based techniques for getting customer
queries. It does not also measure demand which will help the customer executives to increase the
stock of the products which are in high demand at a specific point in time.
The Decen Muebles Infantiles sells baby furniture and their chatbot helps in selling them. The
bot shows you some videos of company products, after this, it asks you “how can we help?”
Then it shows you a short option of the menu which includes: -
i) Customer service
ii) Digital assistant
iii) Catalogue viewing
This bot allows the website to give you a personal sales approach as they used in their expos
otherwise most of the products will be lost on the website. Bot asks a variety of questions that
allows it to show exactly what kind of product the customer is looking for even before showing
matched items
15
Limitations
The bot does not incorporate voice-based methods of interacting with it. It only gives the text-
based approaches which may not work well for all customers. It does not also give the customers
the flexibility of viewing a catalogue of products which will be essential at the time when the
customer will be asking questions. Instead, it asks you questions first which is a method which
doesn’t favor all customers. Once the chatbot has collected the customer queries, it only gives
the customer matched items but it doesn’t give the customer recommendations which will assist
the customer in making informed decisions faster when narrowing down to the specific items to
buy. Aside from that, it doesn’t measure demand which is vital in making the customer
executives know which particular kind of products are in high demand at a specific point in time
so that they can increase the number of the said items in their ecommerce store hence increasing
sales.
2.7 Conclusion
Chatbots have been developed for the requirement of the users. They are bringing a new way for
business to communicate with the world and most importantly with the customers and with the
rise of emerging technologies and Artificial intelligence (AI). They are being used in customer
support, the researcher’s chatbot is such an approach. It helps the users to interact with the
chatbot and the chatbot analyses the customer’s needs and gives a recommendation according to
users needs. The development of the chatbot helps both the user and the seller to communicate
effortlessly.
Thus, in this paper, the researcher has planned to implement an Ecommerce engine based chatbot
which will attempt to improve the interaction of the user with the ecommerce site. Chatbots will
store a set of responses, but also will take dynamic user input into account and thus tend to
provide relevant responses and product suggestions.
16
3.1 Introduction
This chapter discusses the System development methodology for the proposed
This software model evolved from the waterfall model. The application is designed, developed
and tested using iterative incremental build stages. At the end of each build a subsystem or
feature will be created. The project will progress in complexity as new requirements are likely to
be discovered and implemented in each.
Incremental build, developing on top of the functionality from the last build leading to the
overall development of the application.
It is very common for software to be released in stages; it is critical that component versions
utilized within the software are managed throughout the entire lifecycle using version control
tools such as GitHub. Each build will only last a few weeks to produce a baseline version of the
application. Feedback can be given on any requirement error or faults found in the application.
Distributing the development of the project over various build cycles can lower the risks
associated with development to a more manageable level as requirements are broken down into
smaller functionality to be implemented at the end of each build.
Testing and debugging are made easier as faults are identified early on during small manageable
cycles. This methodology is flexible during implementation as new requirements are easily
integrated at each build and an updated version is released.
17
Therefore, the researcher chose this methodology since it is the most suitable methodology for
this project. The flexibility of the incremental model makes it easier for this project as it is likely
new requirements will be identified during the later stages of development and each iterative
build makes it easy to implement new requirements throughout the development process.
Questionnaire
The questionnaire will be distributed online to the general public. This will reach a large user
group, producing a diverse and varied results set for analysis providing detailed scope on what
users from different age groups and backgrounds are expecting from a system such as this. It will
give valuable insight into the age group, how often the user utilizes online shopping experience,
if they would prefer assistance through an advisor or phone or using a friendly chatbot service,
level of computer literacy and their expectations from the application.
These questionnaires will be completed using Survey Monkey, which provides free cloud-based
expert custom templates for surveys and robust analytical features with a UI to display data
analysis in a number of formats that make it straight forward to read and analyse the data to
identify requirements.
The structured questionnaire will be made up of open and close ended questions as a convenient
method of extracting information from users. There will be clear descriptions throughout the
online questionnaire make it easy to navigate through and use, increasing the likelihood of
participation from users. Clear and concise information will also be given on how the user should
respond to each question accordingly.
This questionnaire will provide a great understanding on how the public would respond using a
chatbot to assist then with Online shopping experience.
18
Interviews
They are conducted face to face to allow the interviewer to ask more detailed open-ended
questions and follow up questions to elaborate on certain points to capture the user needs.
This approach will be used to collect data from the users of the already existing ecommerce
websites which is in this case, are the customer care executives. This will help the researcher to
understand the challenges they are facing while operating the ecommerce website which doesn’t
have the chatbot and also get to know their expectations of the proposed system. It will be
necessary to take notes during the process to reflect and analyze the content later.
Discovery prototype
This method involves developing a low fidelity throwaway prototype of the proposed system.
This will allow the end user to experience and get an impression of the system and determine
whether it meets their needs. I will be able to meet the user to identify the system requirements
and investigate what requirements can be established. Once the requirements are identified the
prototype is developed and given to users to assess whether or not it meets the requirements
previously discussed. This gives an opportunity to be more involved in the project and provide
feedback on the prototype that will be used to identify the requirements for the final software to
be developed. The prototyping approach allows the researcher to get a deeper understanding of
the requirements through continuous communication and each prototype iteration or cycle.
The software and hardware requirements required to implement the chatbot are stated below.
In terms of the ethical issues regarding participants, both anonymity and consent were ensured
and offered. Individuals who participated in the research were offered full anonymity, no name
was mentioned in the report, nor asked for in the survey. Also, the purpose of the study was
explicitly described so that participants would have no doubt what the study was about or what it
was used for. The participation was completely voluntary. Additionally, gathered data will be
protected and only the researcher will have access to all information, so that confidentiality can
be ensured.
Moreover, the research is proven to be justified by the literature review and the identified gaps
make the subject novel. The researcher did not plagiarize and every content that was taken from
other sources is referenced and credited to the researcher’s best knowledge and believe.
20
References
Schanke, Scott, Gordon Burtch, and Gautam Ray. "Estimating the Impact of
‘Humanizing’Customer Service Chatbots." (2020).
Araújo, Tiago, and Beatriz Casais. "Customer Acceptance of Shopping-Assistant Chatbots." In
about the influence of buttons on the customer experience, brand attitude and brand
Hildebrand, Christian, and Anouk Bergner. "AI-Driven Sales Automation: Using Chatbots to
Boost Sales." NIM Marketing Intelligence Review 11, no. 2 (2019): 36-41.
"Predicting the intentions to use chatbots for travel and tourism." Current Issues in
Nordheim, Cecilie Bertinussen, Asbjørn Følstad, and Cato Alexander Bjørkli. "An Initial Model
Waghmare, Charles. "Deploy Chatbots in Your Business." In Introducing Azure Bot Service, pp.
Trivedi, Jay. "Examining the customer experience of using banking Chatbots and its impact on
brand love: the moderating role of perceived risk." Journal of internet Commerce 18, no.
1 (2019): 91-111.
21
http://alice.pandorabots.com/.
Jamie Condliffe (2015, February 02). Google's Neural Network Chatbot Can Discuss Philosophy
and IT Troubles [Online]. Available: http://gizmodo.com/googles-neuralnetwork-
chatbot-can-discuss-philosophy-a-1715347859
22
APPENDICES
Appendix 1: Budget
ITEM QUANTITY TOTAL (Ksh)
Laptop pc 1 34000
Internet cost 3500
Printing cost 2000
Power supply 1 1500
Windows 10 os 1 1200
Flash disk 4GB 1 2000
Communication (Airtime for 2000
consultation and transport)
Total 46200
Table 1: Budget
23
Title
Introduction
Literature review
Methodology
Presentation
Examination
Requirement gathering & analysis
System Design
Implementation
Testing
Deployment of System
Maintenance
Conclusion
Jun-21 Jun-21 Jun-21 Jul-21 Jul-21 Jul-21 Aug-21 Aug-21 Aug-21 Aug-21