Professional Documents
Culture Documents
All in One
All in One
February 2017
ii
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Declaration of Originality
We declare that this project is our original work and has not been presented for a degree
in any other university.
This project documentation has been submitted for examination with my approval as
university advisor:
February 2017
iii
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Acknowledgement
First of all, the team would like to give our gratitude to AAIT. Then, the team wants to
acknowledge center of Information Technology and Scientific Computing (ITSC). The
team would also like to thank the Final Project Committee for giving us the opportunity
to do our final project. This project won’t be possible without the contribution of few
individuals. Finally, the team gratefully acknowledge our respected advisor Mr.Endrias
Haile, Lecturer at Addis Ababa Institute of Technology, Department of Information
Technology and Scientific Computing, for his generous help and suggestion in this
project proposal.
iv
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Abstract
Among all the things, Health is the one which needs special care. The system, a Web
based Health Consulting and Disease Diagnosis Assistance System, takes the power of
internet to give a chance for the people to consult and know about their health and other
health related issues anytime anywhere. On our day to day activities, we, as human
beings come up with different questions related to our health. When we feel or see
something strange in our body or somebody else’s body (kids, friends, or other family
members), we want to know what is happening.
But unfortunately we do not go to experts or physicians to get answers for our questions
(consult) as soon as these questions come up to our mind or to know what is happening
to our body by the time we feel strange and by the time we see these signs in our body.
Because to consult a physician, one should go to a clinic, hospital or health care providing
center in person and more worst may need to get an appointment first. And people do
not have a passion to do this for every little strange feelings or questions they have. But,
most of the time this little symptom becomes a serious cause for diseases and being
unhealthy. Even if everyone wants to be healthy, they are not brave enough to go to
health centers or consult physicians by the time they should be. Most of the time people
go to clinics or hospitals after they severely got damaged. Of course, there are many
reasons that discourage people to go and consult a physician, like the availability of a
nearby health center, time, money and many other reasons.
But, these factors don’t affect us anymore. No more need to go to health institutions to
get healthy. We can do it from home with Web based Health Consulting and Disease
Diagnosis Assistance System. The system gives people the opportunity to contact the top
physicians to consult anywhere from home, to talk to the right physicians, doctors that
are specialized in the required medical field and more generally, the system helps people
to act in favor of their health.
There are around 10,000 diseases plus symptoms for each disease. Physicians, as human
beings, are limited to remember all these diseases and symptoms in a specified time.
Physicians don’t have to remember all the diseases and their symptoms. What they have
to do is, just use the Disease Diagnosis Assistance feature of the system.
In conclusion, this project, by closely examining the current problems, will shed new light
on rarely acknowledged health related issue of the people.
v
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Table of Contents
Declaration of Originality ...........................................................................................................iii
Acknowledgement .......................................................................................................................iv
Abstract...........................................................................................................................................v
Table of Contents .........................................................................................................................vi
List of Tables ..................................................................................................................................x
List of figures ............................................................................................................................... xii
Definitions, Acronyms, Abbreviations ................................................................................... xiv
Chapter 1: Introduction ............................................................................................................... 1
1.1 Background ......................................................................................................................... 1
1.2 The Existing System ........................................................................................................... 1
1.3 Statement of the Problem .................................................................................................. 2
1.4 Objective of the Project ...................................................................................................... 2
1.4.1 General Objective......................................................................................................... 2
1.4.2 Specific Objective ......................................................................................................... 2
1.5 Proposed System ................................................................................................................ 3
1.6 Feasibility Study ................................................................................................................. 5
1.6.1. Economic Feasibility................................................................................................... 5
1.6.2. Technical Feasibility ................................................................................................... 5
1.6.3. Schedule Feasibility .................................................................................................... 6
1.7 Scope .................................................................................................................................... 6
1.8 Methodology ....................................................................................................................... 6
1.8.1. Requirements............................................................................................................... 6
1.8.2. Design ........................................................................................................................... 7
1.8.3. Implementation ........................................................................................................... 7
1.8.4. Testing .......................................................................................................................... 7
1.9 Project Management plan.................................................................................................. 7
1.9.1. Time Management plan ............................................................................................. 7
1.9.2. Quality Management Plan......................................................................................... 8
1.9.3. Communication Management Plan ......................................................................... 9
vi
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
vii
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
viii
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
ix
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
List of Tables
Table 1: Definitions, Acronyms, Abbreviations.................................................................... xiv
Table 2: Time Table ...................................................................................................................... 8
Table 3: Internal Communication Management Plan ............................................................. 9
Table 4: FR: 01-Text Messaging ................................................................................................ 17
Table 5: FR: 02-Audio Messaging ............................................................................................ 17
Table 6: FR: 03-Recent Chats .................................................................................................... 18
Table 7: FR: 04-Chat History..................................................................................................... 19
Table 8: FR: 05-Rating and feedback on consultation ........................................................... 19
Table 9: FR: 06-Presenting nearby experts.............................................................................. 20
Table 10: FR: 07 – Posting Articles ........................................................................................... 20
Table 11: FR: 08-Commenting Articles ................................................................................... 21
Table 12: FR: 09-Accepting Symptom inputs ......................................................................... 22
Table 13: FR: 10-Predicting Disease ......................................................................................... 22
Table 14: FR: 11-Adding new Disease and Symptoms ......................................................... 23
Table 15: FR: 12-Updating Disease .......................................................................................... 24
Table 16: FR: 13-Searching for experts .................................................................................... 24
Table 17: FR: 14-Searching for Disease.................................................................................... 25
Table 18: Logical Database........................................................................................................ 38
Table 20: User class .................................................................................................................... 56
Table 21: Attributes description for User class ...................................................................... 56
Table 22: Operation description for User class ...................................................................... 57
Table 23: PersonalInfo class ...................................................................................................... 57
Table 24: Attributes description for PersonalInfo class ........................................................ 57
Table 25: Address class.............................................................................................................. 58
Table 26: Attributes description for Address class ............................................................... 58
Table 27: Physician class ........................................................................................................... 58
Table 28: Attributes description for Physician class ............................................................. 59
Table 29: Operation description for Physician class ............................................................. 59
Table 30: Patient class ................................................................................................................ 59
Table 31: Attributes description for Patient class .................................................................. 60
Table 32: Operation description for Patient class .................................................................. 60
Table 33: Organization class ..................................................................................................... 60
Table 34: Attributes description for Organization class ....................................................... 61
Table 35: Operation description for Organization class ....................................................... 61
Table 36: Admin class ................................................................................................................ 61
Table 37: Attributes description for Admin class .................................................................. 61
Table 38: Operation description for Admin class .................................................................. 61
x
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
xi
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
List of figures
Figure 1: System Architecture .................................................................................................... 4
Figure 2: Gantt chart of Schedule .............................................................................................. 8
Figure 3: Home Page ................................................................................................................ 14
Figure 4: Chatting Page ............................................................................................................ 15
Figure 5: Use case Diagram ..................................................................................................... 27
Figure 6: Entity Relation Diagram .......................................................................................... 38
Figure 7: The High Level Architectural Design of Web based Health Consulting and
Diseases Diagnosing Assistance System ................................................................................ 42
Figure 8: The UML Component Diagram for Diseases Diagnosing Subsystem ............... 43
Figure 9: The UML Component Diagram of Web based Health Consulting and Diseases
Diagnosing Assistance System ................................................................................................. 44
Figure 10: The UML Deployment Diagram of Web based Health Consulting and
Diseases Diagnosing Assistance System ................................................................................ 45
Figure 11: The UML Class Diagram of Web based Health Consulting and Diseases
Diagnosing Assistance System ................................................................................................. 46
Figure 12: User Registration Sequence diagram .................................................................... 47
Figure 13: User Authentication Sequence diagram............................................................... 48
Figure 14: Providing Feedback Sequence diagram ............................................................... 49
Figure 15: Search Experts Sequence diagram ........................................................................ 50
Figure 16: Using Consultation Service Sequence diagram .................................................. 50
Figure 17: Providing Consultation Service Sequence diagram ........................................... 51
Figure 18: Insert Symptoms Sequence diagram .................................................................... 51
Figure 19: Diagnosing Diseases Sequence diagram .............................................................. 52
Figure 20: Add Diseases Sequence diagram .......................................................................... 53
Figure 21: Article Posting Sequence diagram ........................................................................ 54
Figure 22: Article Reading Sequence diagram ....................................................................... 54
Figure 23: Verifying Documents Sequence diagram ............................................................ 55
Figure 24: Home Page Interface ............................................................................................... 69
Figure 25: Registration Page interface .................................................................................... 70
Figure 26: Login Interface ......................................................................................................... 70
Figure 27: Feedback Giving Page............................................................................................. 71
Figure 28: Consulting Service Page ......................................................................................... 72
Figure 29: User Consulting the Doctor ................................................................................... 73
Figure 30: Doctor giving the consulting service .................................................................... 73
Figure 31: Flow Diagram - User Registration ....................................................................... 76
Figure 32: Flow Diagram – Edit Profile ................................................................................. 77
Figure 33: Flow Diagram – Article Posting ........................................................................... 78
xii
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
xiii
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
xiv
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Chapter 1: Introduction
1.1 Background
Ethiopia has a poor health status in relation to other low-income countries, even within
Sub-Saharan Africa. Infectious and communicable diseases account for about 60-80% of
the health problems in the country. Poor access to health services have contributed to the
high burden of ill-health in the country [6].
The major health problems of the country remain largely preventable communicable
diseases. Despite major progresses made to improve the health status of the population
in the last one and half decades, Ethiopians still face a high rate of morbidity and
mortality and the health status remains relatively poor [1].
The project, Web based Health Consulting and Disease Diagnosis Assistance System,
aims at building a powerful health consulting and diagnosis system with a goal of making
life easier by giving a chance to everyone to know about his/her health and take care of
it. It enables people to consult the right physicians plus empower physicians with disease
analysis prediction.
1
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
shakes. But, this is the basic thing that everyone has to know to be healthy. Most of us
don’t go to health centers for any little strange feelings. Instead, we mostly hope that we
will be fine.
The general objective of the project is to develop a Web based Health Consulting and
Disease Diagnosis Assistance System.
1.4.2 Specific Objective
In order to achieve the aforementioned general objective, the project has also the
following specific objectives:
Identify the problems of the current system on the health sector
Propose a new system that enables to solve the problems identified
Identify the requirements for the new system to be developed
Analyze and structure the requirements of the new system
Design the new system
2
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Develop the new system (a Web based Health Consulting and Disease Diagnosis
Assistance System) to enable people to consult physicians and to assist physicians
in analyzing symptoms and making decisions
This system can be considered as a playing field in which two groups can play in it, the
physician group and the public or customer group. It creates the opportunity for the
public and the physician to play on this field. The system is used as a means of
communication between customers and experts. Communication is possible via text or
audio messaging. Customers use this means to contact experts and get consultancy
services.
Physicians can be benefited from the Disease Diagnosis Assistance Sub system in the
process of analyzing disease and drawing conclusions. The system asks physicians
multiple kinds of questions. Based on the knowledge stored in the system, it analyzes
the answers or the data provided by the physician and draw a conclusion with a brief
description.
The system is used as a source of knowledge or a means of addressing issues to the public.
Experts can post useful articles to the system so that the public can read these articles and
gain knowledge. There is also a situation that physicians want to address some urgent or
non-urgent issues to the people. In this case, this system will play a significant role.
Physicians post articles regarding any issues so that the whole people can be aware of.
In this system, interested doctors/physicians abroad will have an account to log into this
system. Then, the physician can post general health related things that will be useful to
the public in the front page. But, this is optional (i.e. the physician is not forced to post).
The following figure shows high level system architecture and how it functions.
3
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
A means of communication
via text or audio messaging Ask for consultation
Consult customers who want services
consultation
Get consultation
Ask Questions
Answer Questions
Disease Diagnosis
Assistance (stored
knowledge)
4
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
When customers use location based search, to search physicians, they enter a
place/location, then the system filters out available experts within that
area/location. In first place, the system presents experts to the customer by
filtering out based on the customer’s place/location so that the customer can view
nearby experts.
b. Specialty based search:
When a customer wants to get an expert in a specific area, the customer can use
this type of search. The customer chooses specialization areas (heart, nerve, skin,
eye, mind, etc….) as a search parameter, then the system filters out experts and
present the customer available experts in that area.
Payment Issues:
Customers will pay when they are registering to get services from experts like
consultancy. Experts will be paid based on the services they provide to the customer.
Payment methods may include hello cash, m-birr, and banks or from the users mobile.
The team don’t make a clear decision on this. One thing to be sure is, the team will provide
a means of payment.
While developing this project the team is going to use a free software and use our own
and lab computers. And the team is going to develop this system by ourselves along with
the help of our advisors. So, there is no need for additional man power. But, the project
costs a lot of time. It will cost a time of around seven months. There are also costs to be
remembered like costs of transportation when gathering requirements, internet costs and
etc…
1.6.1.2. Operational Cost
For this system to be up and running, it needs a server to be hosted and a domain name.
So, it needs a cost of a server or a cost to rent a server for hosting. The operational cost is
two kind. One, if the system is going to be hosted on its own server, it costs the cost of
the server. Two, if the system is going to be hosted on a rented server, its cost will be the
rent of the server. So, the system is operationally feasible in this country.
1.6.2. Technical Feasibility
Most of the people that are expected/intended to use this system has a good
understanding on how to use computers and browse websites. And the
doctors/physicians are also skilled on using the computer and browsing sites. There will
5
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
not be any problem on using the system. So, this system is technically feasible in this
country.
1.6.3. Schedule Feasibility
The development process of this project is dynamic, but the project will be completed by
the time frame allocated in the project management plan in section [1.9.1]. The project is
feasible according to the time frame shown in the Time management plan provided in
section [1.9.1].
1.7 Scope
The system is going to be developed for the public plus for the physicians. Any interested
user, registered or unregistered user, can use this system. It is only applicable if there is
internet. The final product of this system;
Enables people to talk with experts of their choice via text and audio message to
get consultancy
Enables people to get access to read useful health related articles from physicians
Enables people to get advice from experts on what to do on some situations, like
during emergency
Enables people to find nearby experts
Enables early prevention of diseases
Enables doctors to follow up their patients
Enables early detection of spreadable diseases
Empower physicians in analysis and decision making process
1.8 Methodology
The methodology that is going to be used to develop the proposed system is Modified
Water Fall method. Because, the Modified Water Fall provides and orderly sequence of
development steps with some flexible iterative stages to facilitate the adequacy of
documentation and design reviews to ensure the quality, reliability, and maintainability
of the developed system. This enables to back loop in the development life cycle of the
system so that it allows the phases to overlap when it is necessary. Since it allows the
overlapping of phases, the MWF methodology is the preferred method of choice for this
system.
1.8.1. Requirements
Requirements will be gathered from different people and will be analyzed until the team
gets a clear picture of the problem. Doctors/physicians and other people will be
asked/interviewed to gather these requirements as much as possible.
6
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
In the coming 4 weeks the team is going to have a clearly defined functional and non-
functional requirements by following this methodology. And these requirements will be
documented into a Software Requirement Specification, SRS.
1.8.2. Design
After finishing the SRS, the constraints of the system will be defined. The constraints will
be easy to use. In this section, the system’s overall design will be defined using different
sequence diagrams and class diagrams. There are different powerful tools used to design
diagrams/UML diagrams out there. One of these tools will be used to design this project.
These constraints and designs (diagrams) will be documented into a document called
SDS, Software Design Specification.
1.8.3. Implementation
Different popular tools and technologies will be used to implement the system. The
system will be implemented using Java Technology.
1.8.4. Testing
Unit Testing, Integration Testing and System Testing will be conducted throughout the
development process of the system. Unit testing has to be performed to isolate each part
of the program and show that individuals are correct in terms of requirements and
functionality. Integration testing has to be performed to determine if the combined parts
of the application function correctly. System testing is needed to test that once all the
components are integrated, the system as a whole meets the specified quality standards
and requirements.
The functionality of the system will be tested locally (in local host). But, if the system
needs to be tested in a real world it needs a server to be hosted to operate. This project
can be said successful, if it is accomplished by the right time. But, the real success of the
system will be measured by its service to the public when it becomes operational.
Everything will be tested before it starts functioning and start to provide service to the
public.
The project will be carried on according to time plan provided in the table and Gantt chart
below.
7
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
During the various stages of developing this software, different quality measurement
process will be carried out. This includes consultations with advisors to ensure that the
pre-defined standards of the documentation are met. The final testing stage of the project
life cycle is expected to meet to relentlessly measure the usability, reliability, efficiency
and understandability of the system to the highest degree to match the requirements
specified.
All the team members will participate in risk management. There will not be a single risk
manager. Every member of the group is responsible to identify (as scope, schedule,
8
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
operational or resource risks), quantify (as low, medium, high and critical), response
(avoid, pass on the risk, and take corrective measures to reduce the impact of the risk, or
acknowledge the risk), monitor and control every risks that will arise throughout the
development process of the system. Most importantly, a big effort will be made to
identify risks proactively. Possible risks that might be occur during the development of
the project are pointed out in Appendix-A
The role of our advisor is significant in ensuring the document standards of the project.
The team will continuously advice and discuss with our advisor so that the document
meets standards of documentation.
The team will follow standard conventions of coding to ensure coding standards. The
team members will write the code in a way that other team members can understand.
1.9.3. Communication Management Plan
This team is formed based on the strengths of each individual in a way that would
guarantee the maximum output of the system that will meet the requirements. The team
will have meetings and group discussions. Since we (the group) live together in one
campus and are friends, we can’t spent our day without seeing each other. And we have
the opportunity to talk about the project always. The team will also communicate with
the advisor in a consistence manner to ensure that the project is going on as expected.
Type of Method / Tool Frequency/ Information Participants
Communication Schedule
Project Meetings In person Weekly Project status, problems, Team Members
and on risks, changed
event requirements
Weekly report Via Email Weekly Review of the status of Team members,
the project. Advisor
Team-Advisor In person As needed Discuss what is done, Team members,
meetings what to be done and how Advisor
to do.
9
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
2.2. Scope
The Web based Health Consulting and Diseases Diagnosing Assistance System is a health
information technology system that is designed to provide physicians and other health
professionals with clinical decision support, that is, assistance with clinical decision-
making tasks and a way for providing consultancy services.
The proposed system targets people who have basic computer interaction skills and
access to internet. Some of the benefits the system provides are:-
- Enables people get consultancy from physicians via text and audio messaging
- Enables people grab knowledge from articles created by physicians
- Enables physicians make accurate diagnosis by providing possible diseases
suggestions based on patient data.
- Enables users provide feedback on services they use and functionalities of the
system.
2.3. Overview
The rest of this document includes three sections. The second section provides the general
description of the system which describes the general factors that affect the product and
its requirements. The third section presents specific requirements which contains all the
software requirements at a specific level of detail. The fourth section gives information
about change management process which is all about identifying and describing the
process that will be used to update the SRS, as needed, when project scope or
requirements change.
10
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
The Web based Health Consulting and Diseases Diagnosing Assistance System is a health
information technology system that is designed to provide physicians and other health
professionals with clinical decision support, that is, assistance with clinical decision-
making tasks and a way for providing consultancy services. The systems link health
observations with health knowledge to influence health choices by clinicians for
improved health care.
The system is a first of its type for Ethiopia and a technology that is not highly driven into
worldwide. There are a lot of research works in the area. However, there are only some
novice systems implementing the idea. And most of them are designed for the public,
who usually don’t have the knowledge of how to interpret medical diagnosis results,
which makes them unpopular due to current regulations and high probability of missed
serious diagnoses.
The main purpose of the proposed system is to assist clinicians at the point of care. This
means that clinicians interact with the system to help to analyze, and reach a diagnosis
based on, patient data. This doesn’t mean the clinician would input the information and
wait for the system to output the "right" choice and the clinician would simply act on that
output. However, the usage of the system to assist means that the clinicians interacts with
the system, utilizing both their own knowledge and the system, to make a better analysis
of the patient's data than either human or system could make on their own. Typically, the
system makes suggestions for the clinician to look through, and the clinician is expected
to pick out useful information from the presented results and discount erroneous system
suggestions.
11
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
The Web based Health Consulting and Diseases Diagnosing Assistance System has four
different types of users.
2.4.3.1. Ordinary user
Frequency of use: As needed
Subset of product function used: These users use the system to read articles written on
different health related issues by physicians. They may give comments on those articles and request
for account in the system.
Minimum technical expertise: Basic computer interaction skills.
Privilege Level: These users can get detail information on articles.
Minimum Education Level: Elementary Level
2.4.3.2. Registered user
Frequency of use: As needed
Subset of product function used: These users have all the privileges of ordinary users. In
addition, these users can get consultancy services.
Minimum technical expertise: Basic computer interaction skills.
Privilege Level: These users can get detail information on physicians, and can give feedback on
their services too.
Minimum Education Level: Elementary Level
2.4.3.3. Physicians
Frequency of use: As needed
Subset of product function used: These users are the most influential of all other users. They
can provide consultancy services, write articles, use the diseases diagnosing assistance tool, modify
the diseases diagnosing assistance tool, and review modifications on the diseases diagnosing
assistance tool.
Minimum technical expertise: Basic computer interaction skills.
Privilege Level: These user can access profiles of their clients (Registered Users) in addition to
all the things they can do mentioned above.
Minimum Education Level: High Level Education on Medical Fields
2.4.3.4. Administrators
Frequency of use: As needed
Subset of product function used: These users verifies license document of physicians.
Minimum technical expertise: Basic computer interaction skills.
Privilege Level: These user can access profiles of their clients in addition to all the things they
can do mentioned above.
Minimum Education Level: High Level of Education on Medical Fields
12
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
The major constraints or issues that will limit the options available to develop the
proposed system are:-
a) Regulatory policies:- The usage of computer aided diseases diagnostic tools have some
legal issues
b) Infrastructure: - The system is mainly developed for Ethiopia and internet payment in
Ethiopia is under developed.
c) Reliability Requirement: - The system must be available 24 hours a day 7 days a week
365 days a year.
d) Criticality of the application- The system is important to the people for the availability
of professional counseling service and diseases diagnosing tool.
e) Security- The user and system data will be kept on a server and necessary precautions
ought to be taken by developers for the data not to be compromised.
2.4.5. Assumptions and Dependencies
To run the Web based Health Consulting and Diseases Diagnosing Assistance System an
internet browser application is needed. And it is assumed that the user is familiar with
an internet browser and has access to decent internet connection.
13
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
14
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
15
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
ID FR: 01
Name Text Messaging
16
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Inputs User writes a text into the provided text area for
messaging.
Processing The user requests the system to send the text into
another user. The system accepts the text input
and process the text, then send the text into the
receiver through the network (internet).
Outputs Text messaging service (the text message sent).
Error Handling Can’t send your message, Please enter an
appropriate text.
ID FR: 02
Name Audio Messaging
Introduction Sometimes voice expresses feelings more than
texts. There may be a situation that the user
wants to express what he/she want vocally. In
situations when users want to express their
feelings vocally using voice rather than texts, the
system shall provide the user the ability to send
audio messages. Clients and experts can
communicate using audio messaging through the
audio recorder provided by the system.
Inputs An audio recorded by the recorder provided by
the system.
Processing The user requests the system to record his/her
voice and send it to another user (from client to
expert or from expert to client). The system
accepts recorded audio and process it, then send
the audio to the intended receiver using the
network (internet).
Outputs Audio messaging service (the audio message
sent).
Error Handling Your message is not send, try again.
17
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
ID FR: 03
Name Recent Chats
Introduction The system shall display chats that are done
recently. When a user browse the chatting
system, he/she will
see the chats that he/she made recently. The
system shall display recent chats in the order of
time they have
been done. The last chat the user has made will
be at the top of his/her recent chats.
Inputs Previous chats that the user has made with other
users.
Processing The system scans the chats that has been made
earlier and order them according to the time and
display the
chats starting from the top most recent chat.
Outputs Recent chats are displayed (chats are displayed in
the order of being recent).
Error Handling There are no possible errors here.
ID FR: 04
Name Chat History
Introduction The system shall display the chat history of a user
with a specific user. When a user clicks on a
specific user from the list of recent chats, the
system shall display previous text and audio
messages with that user.
Inputs Messages sent and received previously.
Processing The system reads sent and received text as well
as audio messages from the database and display
it in order
based on the time they has been sent or received.
18
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
ID FR: 05
Name Rating and feedback on consultation
Introduction The system shall allow clients to rate and give
feedback for the experts who provide
consultation service for that client. This is the
way that clients express their satisfaction on
consultation service.
Inputs Rating and feedbacks inputs
Processing The user wants to rate the expert who provide
him/her consultation. The user rates and writes
texts as a feedback. The system accepts these
inputs and process them. Then, the system rates
the expert.
Outputs The expert is rated and received feedback.
Error Handling Please enter appropriate texts for feedback.
ID FR: 06
Name Presenting nearby experts
Introduction When a client seeks consultation, he/she looks
for an expert so that he/she can get consultation
service from
that expert. At that time, the system shall present
possible nearby experts based on client’s location
if
available. But, if there are no registered experts
within the client’s location, the system will
19
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
present other
experts with no consideration of location.
ID FR: 07
Name Posting Articles
Introduction Interested experts (physicians) can post useful
articles into the front page of the system so that
anyone can
grab knowledge or anyone can be addressed
about an issue. The system shall allow this
capability of experts
and provide a means to do this.
Inputs Articles prepared by experts (physicians).
Processing Experts or physicians prepare and provide useful
articles to the system. The system accepts these
articles
and process it. Then, display it on its home page.
Outputs Useful articles displayed on the front page.
Error Handling There are no possible errors here.
20
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
ID FR: 08
Name Commenting Articles
Introduction Articles posted by experts for the public will be
commented by any interested user. Users can
express their
feeling about that comment. The system shall
give users the ability to comment on the posted
articles.
Inputs Text input to the provided comment area below
the article.
Processing The system takes text inputs from the comment
area and process and analyze the text. Then,
make that text
a comment for the posted article.
Outputs The article is commented.
Error Handling You cannot comment this article. You have to
register to give comments.
ID FR: 09
Name Accepting Symptom inputs
Introduction The system can be used as an assistance tool for
the physicians to diagnose disease. To use this
tool, the
physician enters symptom inputs so that the
system (this tool) predicts the possible disease.
The system
shall accept these symptom inputs.
Inputs Text on provided fields for symptoms.
21
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
ID FR: 10
Name Predicting Disease
Introduction The main purpose of the disease diagnosis
assistance tool is to help the physician by
predicting a possible
disease based on the symptom inputs entered
from the physician. The system shall accept
symptom inputs
from the physician and be able to predict the
possible diseases based on the symptoms.
Inputs Symptom inputs.
ID FR: 11
Name Adding new Disease and Symptoms
Introduction All the diseases and their symptoms may not be
known by the system. The system shall give the
experts
the ability to add unregistered diseases and
22
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
ID FR: 12
Name Updating Disease
Introduction The system may not be always reliable.
Sometimes for some diseases and symptoms it
may need revision
and update. The system shall allow experts to
update disease(s) and symptoms as necessary to
make itself
as reliable as possible. The updating process also
require reviews of other experts like adding new
disease(s) and symptoms.
Inputs An update for a disease or a symptom and
reviews of experts on the specified action.
Processing The system accepts update inputs of a disease or
symptom or both and expert reviews for the
action. Then,
the system processes and analyzes the update
23
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
ID FR: 13
Name Searching for Experts
Introduction A client can search an expert based on location or
specialty area. The system shall allow the client
to
search for an expert of what he/she want based
on two criteria ( location and specialty area) to get
consultation service.
Inputs Location or specialty are of medicine like heart
specialist or nerve specialist.
Processing The user enters inputs to the search bar (by
location search bar or by specialty area search
bar). The
system accepts these inputs either location input,
specialty are input or both inputs and process
them.
Then, the system displays the search result to the
client.
Outputs Experts displayed based on location, specialty
area or both as a search result.
Error Handling No expert is found around this location.
ID FR: 14
Name Searching for Disease
24
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
2.7.1. Actors
The following are the known actors, parties outside the system that interact with the
system, of the proposed system:-
1. Registration
2. Authentication
25
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
3. Providing Feedback
4. Searching for Experts
5. Using Consultation Service
6. Subscribing Service
7. Providing Consultation Service
8. Insert Symptoms
9. Diagnosing Diseases
10. Update and Add Diseases
11. Review Modifications
12. Article Posting
13. Article Reading
14. Verifying Documents
26
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
27
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
28
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Extensions
5.a The system find the given information is incorrect.
5.a.1 The system displays a warning message with the proper description about the
cause.
2.7.4.3. Use Case 03: Providing Feedback
Use Case Name: Providing Feedback
Primary Actor: User, Healthcare Provider, Administrator
Description: Enables the actor give a rating or comment on a given event.
Pre-conditions: The actor is registered and authenticated.
Post-conditions: The actor gives feedback on a given event.
Failures: The system fails to allow the actor give feedback.
Triggers: The actor wants to give a feedback on an event.
Main Success Scenario
1. The actor wants to give feedback on an event.
2. The actor clicks the feedback button.
3. The system displays the feedback form.
4. The actor enters the required information and clicks the submit button.
5. The system checks the provided information is correct.
6. The system displays a confirmation message.
Extensions
5.a The system find the given information is incorrect.
5.a.1 The system displays a warning message with the proper description about the
cause.
Variations
3.a The actor choose type of feedback i.e. rating or comment.
2.7.4.4. Use Case 04: Searching for Expert
Use Case Name: Searching for Expert
Primary Actor: User
Description: Enables the actor find the expert he/she needs.
Pre-conditions: The actor is registered and authenticated.
Post-conditions: The actor gets a result for his search query.
Failures: The system fails to get a result.
Triggers: The actor wants to search for a specific or group of experts.
Main Success Scenario
1. The actor wants to search for a specific or group of experts.
2. The actor navigates to the search box.
3. The actor enters his/her query string and clicks the search button.
4. The system checks the provided information is correct.
5. The system displays a result.
29
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
30
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
3.a. The system finds the actor have registered bank account
3.a.1 The system updates the actor’s information in the database and displays a
confirmation message.
5.a The system finds the given information is incorrect.
5.a.1 The system displays a warning message with the proper description about the
cause.
Variations
3.a The actor choose type of subscription i.e. tool or service.
2.7.4.7. Use Case 07: Providing Consultation Service
Use Case Name: Providing Consultation Service
Primary Actor: Healthcare Provider
Description: Enables the actor to give consultation service
Pre-conditions: The actor is registered, authenticated, and have subscribe the service.
Post-conditions: The actor gives consultation service.
Failures: The system fails to allow the actor provide consultation service.
Triggers: The actor wants to provide consultation service.
Main Success Scenario
1. The actor wants to provide consultation service.
2. The actor clicks the consult button.
3. The system displays the available customers.
4. The actor selects a customer and start consulting via messaging.
Extensions
3.a The system finds no available customers.
3.a.1 The system displays an information message that explains the
situation
2.7.4.8. Use Case 08: Insert Symptoms
Use case name: Insert Symptoms
Primary Actors: Healthcare provider
Description: Enables the actor enter symptoms of a diseases to the system.
Preconditions: The actor is registered, authenticated and have subscribe the diseases
diagnosing tool.
Post-conditions: The actor inserts symptoms of a diseases.
Failure: The system fails to allow the actor insert symptoms.
Trigger: The actor wants to insert symptom of a diseases.
Main Success Scenario
1. The actor wants to insert symptom of a diseases.
2. The actor clicks the insert symptom button.
3. The system displays the diseases symptom registration form.
4. The actor enters the required information and clicks the submit button.
31
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
32
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
33
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
2.8.1. Performance
For our Web based Health Consulting and Diseases Diagnosis Assistance System project,
we will be using a better standard client personal computer, so our system should have
high performance and the response time will be faster when tested from a local computer.
Its response time for searching, inserting, deletion, updating should averagely be around
4 seconds. Selecting an element from the list, opening new windows, clicking links and
dismissing pop-up messages should take less than 1 second. Our system will accurately
execute requests from multiple users simultaneously and give response in 8 second.
34
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
2.8.2. Reliability
The Web based Health Consulting and Diseases Diagnosis Assistance System will be
developed to perform the expected user needs with higher precision. There are some
issues like registration of diseases with their corresponding symptoms and registration
of user, especially when taking information of doctors which needs to be reliable and this
attribute is very essential.
2.8.3. Availability
The system must operate twenty-four hours a day, seven days a week. The database has
rollback segments, and a centralized backup can be performed to act upon a system
recovery form failure.
2.8.4. Security
The Web based Health Consulting and Diseases Diagnosis Assistance System should be
secured and it should be used by the accurately authorized personnel.
Every user must have their own privilege, which means they should be identified
by their own secured account and perform their functions.
To secure our system from security treat we will use layered approach of
application development.
If a user forgot the password, he/she can change the password by email or by
answering some questions and he can login to his account.
The system provide about two privileged level
Level 1 – normal users are users which have no account can access the
system such as reading article.
2.8.5. Maintainability
The system should be flexible enough for changes and be capable of any
modifications that would be applied to it. The business logic must be clearly separate
from the User Interface to allow different user interfaces to be developed in the future.
So, the identified requirements will be maintained during operation. Maintenance of the
Web based Health Consulting and Diseases Diagnosis Assistance System is handled at
the transition stage and as scheduled under project brief document.
To ensure the maintainability of the system we are going to include a short manual to
help the client understand the system well, comments will be addressed to the codes to
assist future readability and understanding of the code and we will are also going
to program the codes in a structured way which will further assist the maintainability.
35
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
2.8.6. Portability
The system is expected to be compatible with all web browsers and devices of
various specifications. It should be easily portable from one operating system to another,
since the system will be used by different users found in different locations.
One of the functionalities the proposed system does not include is allowing the
integration of medical devices to receive and provide real time data which is an important
feature that enables the physician better understand client’s conditions during
consultancy programs and better clarify the patient’s condition for the diseases
diagnosing tool.
The other functionality the proposed system doesn’t provide is recommending tablets.
The system seems to work in a way the clinician would input the information and wait
for the system to output the "right" choice and the clinician would simply act on that
output. However, the system makes suggestions for the clinician to look through, and the
clinician is expected to pick out useful information from the presented results and
discount erroneous system suggestions and then make tablet recommendations.
Design constraints are limitations that occur because of unavailability of another system
or a certain body not providing resources that are required to complete a specific
section. One possible constraint is online payment, yes this is a valuable asset to any
system that has an intention of simplifying life. Due to the unavailability of online
payment service the proposed system uses some work arounds using banks cooperation
to make online payments.
36
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
In addition the system allow doctors and patient to view their communication history
using stored messages in the database.
Database Table Attribute Description
User User Id This data holds detail
Address ID information of different
First Name users in the system. Using
Last Name it the system identify users
User Name using their email and
Email password when they login
Phone Number and also it gives users
Password different privilege. On the
User Type other hand it uses to know
in what field the doctors
specialize.
Address Address Id This data used to identify
Kebele location of users depending
Woreda on the data the system can
Subcity suggest nearby doctors for
City patients if they wants to
Country communicate with doctors.
Message Message Id Here the database store
User Id messages that the patient
Comment Id and doctor share and the
Rating Id system provide means of
Text message viewing history.
Audio
Image
Symptom Symptom Id This data is used to store
Symptom description different symptoms for
different disease
depending on the
symptom the doctors
provide the system give
back match result for
doctors.
Disease Disease name This data is used to provide
Symptom id search result for diseases
Comment Id registered in the system.
Rating Id
Article Article Id On these section the
User id database store some article
37
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
38
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
39
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Since change is something that you cannot avoid through the development of software it
should be handled with diligence. Most of the time change on SRS come from client side
to handle such a change the first measure taken is to discuss about pros and cons that this
change bring with clients. Then we are going to have a group discussion regarding the
first action taken with the client and if it is decided that the change is critical or if the
impact on the development progress is affordable, we will accept the change and inform
the client and plan to implement it. Pros and cons of any change that should be made is
discussed among teammates and then applied.
On the other hand if change comes from team members during implementation, the team
will assess the feasibility of the proposed changes considering the time constraints and
structural constraints of the implemented modules and develop an implementation
strategy. A change plan will be created for the implementation of the change. The team
will then continue implementing the new requirements.
40
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
This Software Design Specification (SDS) document is prepared in order to give the
software development team overall guidance to the architecture of the Web based Health
Consulting and Diseases Diagnosing Assistance System project. The document discusses
the software architecture and design of the Web based Health Consulting and Diseases
Diagnosing Assistance System in detail. Moreover the document facilitates
communication and understanding of the system by providing several views of the
system design.
3.2. General Overview
The Web based Health Consulting and Diseases Diagnosing Assistance System is a health
information technology system that is designed to provide physicians and other health
professionals with clinical decision support, that is, assistance with clinical decision
making tasks and a way for providing consultancy services. The system is composed of
multiple independent subsystems and heterogeneous clients which includes web clients
(browsers), desktop and mobile application clients (both out of scope of this project) and
other systems.
Given the composted nature, composed of many sub systems, and heterogeneous clients
of the Web based Health Consulting and Diseases Diagnosing Assistance System the
RESTful (Representation State Transfer) architectural style, will be used for its
development.
The RESTful architectural style is an architecture style for designing networked
applications and is characterized by the following three main features:-
1. Client-server - The client handles the front end the server handles the backend
and can both be replaced independently of each other.
2. Stateless - No client data is stored on the server between requests and session state
is stored on the client.
3. Cacheable - Clients can cache response (just like browsers caching static elements
of a web page) to improve performance.
Complying with these constraints, and thus conforming to the REST architectural style
enables the proposed system to have desirable emergent properties, such as performance,
scalability, simplicity, modifiability, visibility, portability, and reliability. The high level
architectural design of the system is provided below in Figure 1.
41
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Figure 7: The High Level Architectural Design of Web based Health Consulting and Diseases
Diagnosing Assistance System
The proposed system will be developed using the Java programming language, a general-
purpose computer programming language that is class-based, and object-oriented. As a
result, the system will be developed using the object oriented approach which provides
realistic representation of real word situations, greater reusability, and maintainability.
The development of the system requires the use of different libraries such as Hibernate,
spring, AngularJS, Bootstrap and Drools. Drools is used in the development of the
diseases diagnosing assistance subsystem which is based on artificial intelligence. It is
specifically used to capture diagnosing process knowledge or rules. During
implementation phase the system may require to change and use other inference engine
implementation libraries in order to increase the accuracy and consistency.
42
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
For brevity reasons the details of the Diseases Diagnosing subsystem component
diagram has been taken out of the overall component diagram of the system and is
shown separately.
43
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Figure 9: The UML Component Diagram of Web based Health Consulting and Diseases
Diagnosing Assistance System
44
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Figure 10: The UML Deployment Diagram of Web based Health Consulting and Diseases
Diagnosing Assistance System
45
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Figure 11: The UML Class Diagram of Web based Health Consulting and Diseases Diagnosing
Assistance System
46
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
47
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
48
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
49
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
50
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
51
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
52
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
53
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
54
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
55
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
The classes represented here are the ones identified on our class diagram and sequence
diagram with additional extra information
User
+UserID:Integer
-UserName:String
-Password:String
+ PhoneNumber:Integer
+Address:Address
-Email:String
+Register ()
+Login ()
+Logout ()
UserName String Private Name <> NULL and must contain at least 2 characters
56
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
PersonalInfo
+FirstName:String
+MiddleName:String
+LastName:String
+Age:Integer
57
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Address
+Country:String
+Region/State:String
+City:String
+Subcity:String
+Woreda:String
+Kebele:String
+HouseNumber:String
+SpecificLocation:String
Physician
58
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
+PersonalInfo:PersonalInfo
-AccountNumber:Integer
-Specialization:String
+diseaseSearch()
+Register ()
Patient
59
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
+PersonalInfo:PersonalInfo
-AccountNumber:Integer
+Register ()
+expertSearch()
Organization
+OrganizationName:String
-AccountNumber:Integer
+Register ()
60
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Admin
+PersonalInfo:PersonalInfo
+Register ()
+VerifyUser()
+DeleteUser()
61
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Payment
+PayerAccount:Integer
+RecieverAccount:Integer
+PerformTransaction ()
62
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Chat
+Sender
+Recipient
+ShowChatHistory()
+DeleteMessage()
TextMessage
+TextContent
+SendText ()
63
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
AudioMessage
+AudioContent
+SendAudio ()
64
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Articles
+ArticleId:Integer
+ArticleName:String
+ArticleTitle:String
+ArticleBody:String
+PostArticle ()
+RemoveArticle()
+ModifyArticle()
ArticleName String Public ArticleName <> NULL and must contain at least one
character
ArticleTitle String Public ArticleTitle <> NULL and must contain at least one two
characters
ArticleBody String Public ArticleBody <> NULL and must contain characters
65
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Feedback
+Date:Date
+FeedbackFor
+ViewFeedback ()
Comments
+CommentID:Integer
+CommentBody:
66
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
+Postcomment ()
+RemoveComment()
+ModifyComment()
CommentBody String Public CommentBody <> NULL and must contain a text
Ratings
+Value:Integer
+Rate ()
67
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Value Integer Public Value <> NULL and must contain a number between 0
and 5
68
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
69
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
70
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
71
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
72
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
73
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
BIBLIOGRAPHY
[1] Health Status in Ethiopia, written in the background section of this document:
available on https://en.wikipedia.org/wiki/Health_in_Ethiopia [Accessed: on
November 9, 2016]
[6] Overview of Health Sector in Ethiopia, written in the background section: available
on http://www.moh.gov.et/overviewsector [Accessed: On November 9, 2016]
74
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
APPENDIX
A.1 Risk Categories
Risk Description
Scope Risk Defining what is required is not always easy.
Possible causes of Scope risks:
- Scope creep
- Insufficiently defined scope
- Unexpected changes in the legal
framework
75
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
User Registration
76
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Edit profile
77
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Post Article
78
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Insert Symptoms
79
Web based Health Consulting and Disease Diagnosing 2016
Assistance System
Providing Feedback
80