Android Based Healthcare Bot
Android Based Healthcare Bot
Institute of technology
Faculty of informatics
Department of information system
Industrial project-1
Android Based Healthcare support Chatbot
Group members
Name Id No.
1. Alemsefa Birhane--------------------------------------------Is/0010/10
2. Nardos Solomon---------------------------------------------Is/0086/10
3. Zereabreham Mulugeta--------------------------------------Is/0124/10
4. Misganaw takele---------------------------------------------Is/0000/10
5. Abdella Ibrahim----------------------------------------------Is/0001/10
0|Page
Table of contents
CHAPTER ONE: Introduction
1.1. Background of the project
1.2. Statement of the problem
1.3. Objectives of the project
1.3.1. General objective
1.3.2. Specific objective
1.4. Scope of the study
1.5. Limitation of the study
1.6. Methodology
1.6.1. Data collection methodology
1.6.2. System analysis and design methodology
1.6.3. System implementation
1.6.4. Testing and deployment methodology
1.6.5. Development environment
1.6.6. System requirement
1.7. Feasibility study
1.8. Project schedule
Introduction
Chatbot is an artificial intelligence (AI) program that can simulate a conversation (or a chat) with
a user in natural language through messaging applications, websites, and mobile applications or
by phone. A chatbot is often described as one of the most advanced and promising expressions of
human-machine interaction. However, from a technological point of view, a chatbot only
represents the natural evolution of a response system to questions that takes advantage of natural
language processing (NLP). One of the great advantages of chat bots is that, unlike applications,
they are not downloaded, it is not necessary to update them and they do not take up space in the
phone's memory. Another one is that we can have several bots integrated in the same chat. It is a
piece of software that is designed to automate a specific task. More specifically, a chatbot is
essentially a conversational user interface that can be connected to a series of data sources
through an API so that it can offer information or services on demand, such as weather forecasts,
breaking news, status updates or order information.
Through chatbots one can communicate with text or voice interface and get reply through
artificial intelligence. Typically, a chat bot will communicate with a real person. Chatbots are
used in applications such as ecommerce customer service, call centers and Internet gaming.
Chatbots are programs built to automatically engage with received messages. Chatbots can be
programmed to respond the same way each time, to respond differently to messages containing
certain keywords and even to use machine learning to adapt their responses to fit the situation.
A developing number of hospitals, nursing homes, and even private centers, presently utilize
online Chatbots for human services on their sites. These bots connect with potential patients
visiting the site, helping them discover specialists, booking their appointments, and getting them
access to the correct treatment.
Chatbots are automated systems which replicate user’s behavior on one side of the chatting
communication. They are mimic systems which imitate the conversations between two
individuals. They provide a simulating platform for effective and smart communications with the
user on the other end. They copy marketers, sales person, counsellors and other mediators and
work to provide services that the abovementioned people provide. There are wide ranges of
chatbots catering in many domains some of them are as follows: business, market, stock,
customer care, healthcare, counselling, recommendation systems, support system, entertainment,
brokering, journalism, online food and accessory shopping, travel chatbots, banking chatbots,
recipe guides, etc. The most famous chatbots like Alexa or Google assistant are the best
examples that can be given for smart communicating chatbots. These are general purpose
chatbots that provide services for all domains and are not restricted to a specific domain. There
are also domain-specific chatbots which provide functionalities to the above-mentioned domains.
Some of them are as follows: Botsify is a chatbot which helps developers to create smart
Facebook Messenger Chatbots and is used to collect information from Facebook users. Imperson
is a chatbot which helps developers to create business chatbots and provide customer care
2|Page
services. NBC is a chatbot which helps the newsreaders to navigate quickly through top
headlines.
Healthcare is the maintenance or improvement of health via the prevention, diagnosis, treatment,
recovery, or cure of disease, illness, injury, and other physical and mental impairments in people.
Health care is delivered by health professionals and allied health fields. Medicine, dentistry,
pharmacy, midwifery, nursing, optometry, audiology, psychology, occupational therapy,
physical therapy, athletic training and other health professions are all part of health care. It
includes work done in providing primary care, secondary care, and tertiary care, as well as in
public health. Access to health care may vary across countries, communities, and individuals,
influenced by social and economic conditions as well as health policies. Providing health care
services means the timely use of personal health services to achieve the best possible health
outcomes. Factors to consider in terms of healthcare access include financial limitations (such as
insurance coverage), geographic barriers (such as additional transportation costs, the possibility
to take paid time off of work to use such services), and personal limitations (lack of ability to
communicate with healthcare providers, poor health literacy, low income). Limitations to health
care services affect negatively the use of medical services, the efficacy of treatments, and overall
outcome (well-being, mortality rates).
1.1 Background of the project
While many would agree that chatbot has become a buzzword recently, but the concept has its
existence from the time when people started developing ways to interact with computers. The
first-ever chatbot was introduced even before the launch of personal computers. ELIZA was the
very first chatbot as mentioned above. It was created by Joseph Weizenbaum in 1966 and it
uses pattern matching and substitution methodology to simulate conversation. The program
was designed in a way that it mimics human conversation. The Chatbot ELIZA worked by
passing the words that users entered into a computer and then pairing them to a list of possible
scripted responses. It uses a script that simulated a psychotherapist. The script proved to be a
significant impact on natural language processing and unnatural intelligence, with copies and
variants protruding up at academies around the country. However, Weizenbaum was troubled
by the reaction of users.
The next chatbot was Parry, written by psychiatrist Kenneth Colby at the Stanford University in
an attempt to simulate a person with paranoid schizophrenia. Then came the A.L.I.C.E, which
was developed in 1995 by Richard Wallace. While A.L.I.C.E won the Loebner prize thrice, it
failed to pass the Turing test. A Turing test examines whether or not a machine is able to think
intelligently like humans.
Jabberwacky chatbot was created by developer Rollo Carpenter in 1988. It aimed to simulate a
natural human conversation in an entertaining way. It has led to other technological growth.
Some individuals use it for academic research purposes through its webpage since its origin.
The chatbot is considered to use an AI technique called contextual pattern matching.
Dr. Sbaitso is a chatbot created by Creative Labs for MS-Dos in 1992.It is one of the earliest
efforts of incorporating A.I. into a chatbot and is recognized for its full voice operated chat
program. The program would converse with the user as if it was a psychologist. Most of its
responses were along the lines of “Why do you feel that way?” rather than any sort of
complicated interaction.
A.L.I.C.E. is a universal language processing chatbot that uses heuristic pattern matching to
carry conversations. In 1995, Richard Wallace pioneered the construction of ALICE. It was
formerly known as Alicebot because it was first to run on a computer by the name of Alice.
The program works with the XML schema known as artificial intelligence markup
language (AIML), which helps specify conversation rules. In 1998, the program was edited in
Java, and in 2001 Wallace printed an AIML specification. From there, other developers drafted
free and open sources of ALICE in different programming languages and a variety of foreign
languages.
4|Page
The program simulates chatting with a real person over the Internet. Alice is a young-looking
woman in human years and tells a user her age, hobbies and other fascinating facts, as well as
answering to the user’s dialog.
After this, various virtual assistants were launched. Siri by Apple was the first one to introduce
conversational assistants. The concepts gained popularity and soon after Google launched their
Google Assistant for Android. Following the lead, Microsoft brought Cortana into existence, and
the like. Taking these step forward, smart speakers were introduced which made voice
conversation possible between humans and the bots. Amazon Alexa & Google Home represents
a different category of conversational UI.
When we come to Chatbots and their place in healthcare obviously, there are countless cases
where a digital personal assistant or a chatbot could help physicians, nurses, patients or their
families. Better organization of patient pathways, medication management, and help in
emergency situations or with first aid, offering a solution for simpler medical issues these are all
possible situations for chatbots to step in and ease the burden on medical profession In some
cases, health chatbots are also able to connect patients with clinicians for diagnosis or treatment,
but that is already one step further down the line. The general idea is that in the future,
these talking or texting smart algorithms might become the first contact point for primary care.
Patients will not get in touch with physicians or nurses or any medical professional with every
one of their health questions but will turn to chatbots first. If the little medical helper cannot
comfortably respond to the raised issues, it will transfer the case to a real-life doctor. As the
number of health chatbots multiplies with incredible speed, we decided to list the most promising
ones to have a clue about where the health chatbot industry is heading. Some examples are listed
below:
oneRemission: This New York-based company launched its chatbot with the aim to help ease
the life of those involved in the fight against cancer with the information they need. For
cancer patients and cancer survivors, the app empowers them by providing a comprehensive
list of diets, exercises, and post-cancer practices, curated by Integrative Medicine experts, so
that they don’t need to constantly rely on a doctor. They can, for example, search about the
cancer-related risks and benefits of a certain food product.
Youper: Basing itself on the latest scientific research, Youper’s A.I. monitors and improves
users’ emotional health with quick personalized conversations using psychological
techniques. To further help one improve their emotional health, the app features personalized
meditations as well as the ability to track mood and monitor emotional health. As users
communicate with the chatbot, it will learn more about them and fine-tune the experience in
order to fit their needs.
Safedrugbot: The idea was born out of a real demand: the developer of the app was asked by
a doctor to retrieve information quickly and easily about drugs to which breastfeeding
mothers may be exposed. The goal was reached: Safedrugbot is a chat messaging service that
offers assistant-like support to health professionals, doctors who need appropriate data about
the use of drugs during breastfeeding. Moreover, it provides information about the active
ingredients present in the medication and alternative medicines.
Babylon: The British subscription, online medical consultation and health service, Babylon
Health, was founded in 2013 and is now valued at more than $2 billion. The company offers
A.I. consultation based on personal medical history and common medical knowledge as well
as lives video consultation with a real doctor whenever a patient needs it. In the first
case, users report the symptoms of their illness to the app, which checks them against a
database of diseases using speech recognition, and then offers an appropriate course of
action. In the second case, which already goes beyond the usual service of a chatbot, doctors
listen and look carefully to diagnose the patient and then write prescriptions or refer to a
specialist if required.
Florence: The chatbot is basically a “personal nurse” in the color blue, and works on
Facebook Messenger, Skype or Kik. “She” can remind patients to take their pills, which
might be a handy feature for older patients. You just write the name of the medicine in chat,
the number of times a day you must take it and at what time. Then, Florence sends you a
message in chat every time you must take the pill. Moreover, Florence can track the user’s
health, for example, body weight, mood or period, thus helping them to reach their goals. The
chatbot also has the skills to find the nearest pharmacy or doctor’s office in case you need it.
6|Page
1.2 Statement of the problem
Contextualization and Personalization of Patient’s Data. The first challenge for developing
personal health agent is the need to contextualize and personalize healthcare treatments and
decisions. Current healthcare system lacks contextual and personalized knowledge about its
patients due to the limited patient-physician time spent during clinical visits, the patient’s ability
to recall prior events, and clinic-centric system that captures only a part of relevant patient data.
Contextual factors in this instance refer to a more in-depth health management and clinical
protocol knowledge that a physician may utilize, whereas personalized factors include a patient’s
health history, data capturing patients health condition, ongoing activities, and lifestyle choices.
A survey presented in reports several notable barriers to the effective use of clinical decision
support systems during patient visits, including physician losing direct eye contact with patients,
falling behind schedule, inability to type quickly enough, and feeling that using the computer in
front of the patient is rude. It concludes that EMRs (electronic medical record) have mixed
effectiveness for supporting decision-making of physicians since exploring them is not
reasonably agile to derive effective knowledge. These factors can potentially lead to missing
patients’ data and likely to affect other healthcare professionals who utilize these data. On the
bright side, patients are increasingly using technology and using mobile applications to generate
what is termed as Patient Generated Health Data (PGHD). Incorporation of such data in better
health management is likely to become more important, and chatbots can further make it easier
to collect some of the patient data such as symptoms or how a patient feels.
Contemporary implementations of chatbot technologies do not understand conversation narrative
and demonstrate very limited cognitive capabilities and commonsense reasoning. Handling these
limitations for a broad domain might take years, but in a specific domain such as health care, and
even narrower applications, such as a specific disease, these limitations can be alleviated by
extending the chatbot technology with domain and disease-specific health background
knowledge (i.e. contextual and personalized knowledge). There are publicly available generic
knowledge graphs as well as healthcare-specific knowledge source e.g., Unified Medical
Language System (UMLS), PubMed, Systematized Nomenclature of Medicine-Clinical Term
(SNOMED-CT), and International Classification of Diseases (ICD). Chatbot technology can
acquire a context-aware (i.e. patient’s context), domain-specific (i.e. health domain) knowledge
graph (extracted and integrated from external sources such as Web of Data) termed as HKG
(Healthy Kids Gold). The HKG can be updated and synchronized by the evolution of Web of
Data or relevant knowledge sources. HKG provides essential facts (background knowledge) that
are necessary for response generation, reasoning, and inference components of chatbot engine.
Limited Patient Health Data due to Episodic Visits and Time Constraints. The American
Academy of Family Physicians (AAFP) defines primary care as promoting effective
communication and encouraging the role of the patients as partner in healthcare. During clinical
visit, the primary care physician assumes the primary contact of patients for diagnosing a wide
range of illnesses and injuries, counseling, and education as well as initiating preventative care.
They are also responsible for making referrals to specialists according to the patient’s condition.
This is a task of significant responsibility since a patient may endure prolonged suffering in case
of a wrong referral. However, with increasing societal demand to healthcare resources, a
significant percentage of physicians reported that they ran out of consultation time to converse
and accurately diagnose the root cause of patients’ conditions. Consequently, some patients are
being deprived of education about their health conditions, causes, available treatments, and
education (such as on lifestyle changes). This indicates a worrisome gap in collecting, managing
and analyzing patient's health data as well as a proper mechanism for educating, advising, and
referring patients.
8|Page
1.3Objectives
1.3.1 General objective
The primary aim of healthcare chatbot system is to Enhance Patient Access, reduce healthcare
professionals' workload.
Patients are not restricted to office hours. They can receive the data they require at every time
of day or night. In other words, it facilitates easy access to doctor at a push of button.
It reduces professionals Workload, by reducing hospital visits, reducing unnecessary
treatments and procedures, and decreasing hospital admissions and readmissions as treatment
compliance and knowledge about their symptoms improve.
They offer companies new opportunities to improve the customer’s engagement process and
operational efficiency by reducing the typical cost of customer service.
AI increases the ability for healthcare professionals to better understand the day-to-day
patterns and needs of the people they care for, and with that understanding they are able to
provide better feedback, guidance and support for staying healthy.
Currently, the safest ways to use medical chatbots include: scheduling doctor appointments based
on the severity of the symptoms, monitoring the health status and notifying a human nurse
immediately if the parameters are out of control, helping homecare assistants stay informed about
patients’ evolution. This is, in fact, replacing the work of customer service representatives. These
intelligent assistants can also take care of billing, inventory, and insurance claims management, as
the healthcare software development company Itransition describes. Other functionalities that are
still under testing include chronical illness management like that of Type 2 Diabetes and mental
health management. These bots are still experimental and under no circumstances should they be
used as a replacement of proper medical care. Yet, they can offer comfort and a bit of reassurance
until the doctor can see you.
10 | P a g e
1.6 Methodology
The Healthcare Chat Bot System should be written in Python, GUI links and a simple, accessible
network API. The system must provide a capacity for parallel operation and system design
should not introduce scalability issues with regard to the number of surface computers, tablets or
displays connected at any one time. The end system should also allow for seamless recovery,
without data loss, from individual device failure. There must be a strong audit chain with all
system actions logged. While interfaces are worth noting that this system is likely to conform to
what is available. With that in mind, the most adaptable and portable technologies should be
used for the implementation. The system has criticality in so far as it is a live system. If the
system is down, then customers must not notice, or notice that the system recovers quickly
(seconds). The system must be reliable enough to run; crash and glitch free more or less
indefinitely, or facilitate error recovery strong enough such that glitches are never revealed to its
end-users.
The implementation is the final and important phase, once the design phase has already finished
the next task issue of implementation. Therefore the validation activity has been performed by
python.
Testing is a process of evaluating the developed system whether it is functional or not and is it
fulfill all the requirements or not .we are o develop a system, so we should predict the type of
testing that is important for our system. There are many testing techniques including:-
Unit testing:-testing each component one by one. Each component of the system would be
tested by the team members while doing the implementation of the system.
Integrating testing:-testing the whole component once and testing how they perform tasks
when they are integrated. This is a testing technique that tests the whole system once.
12 | P a g e
1.6.5 System Development Environment
The team uses the following Software and Hardware materials to develop and test the project.
Software tools
White-star UML
With the original Star UML not being updated anymore UML is a project basing directly
on its code base and offering all its features adapted to the modern environment like
support of Unicode strings or being developed and tested on Windows 7 and 8. As this is
an active project new features and bug fixes are provided on regular basis. If you would
like to download White-Star UML, its source code or learn more details take a look at
the project page.
Microsoft office 2010:-to prepare documents and power points.
Browsers (Mozilla Firefox, UC browser, Baidu Browser, Chrome): because they are the
widely used browsers.
Hardware tools
o Desktop computer
500GB hard disk
4 GB RAM
Screen size 20’’
Pentium(R) Dual-Core 3.2 GHz
o Laptop
500GB hard disk
4GB RAM
Core i3 2.1 GHz
o 32GB flash disc
14 | P a g e
1.7 Feasibility study of the system
Feasibility study is carried out when there is a complex problem or opportunity. It is considered
as the primary investigation. A Feasibility study is undertaken to determine the possibility of
either improving the existing system or developing a completely new system.
o Intangible benefit:-
Moral satisfaction
Work initiation,
Attract users
Increase reliability
o Tangible benefit:-
Organizational development
Globalized
The operational feasibility is concerned with the operability of the system after it has been
installed. That is, some programmer may not like changes in their routine method of work or has
fear that they will lose their peer group. The following areas will have the operational feasibility
in the proposed system:
The organization has approved this system as their working system.
The User of the system has accepted the proposed system as their new working system and
realized the benefits of it.
The system will work in a proper way after it has been installed and the installation process is
easy to use.
Schedule feasibility Study
Time evaluation is the most important consideration in the development of project. The time
schedule required for the developed of this project is very important since more development
time effect machine time, cost and cause delay in the development of other systems.
Software development cost
For this particular project we will be using different software but the software is provided by
the university.
16 | P a g e
the project is completed in approximately seven months. The dedicated project duration is listed
in the following table:
System design
Document review
Documentation
Implementation