You are on page 1of 19

HAWASSA UNIVERSITY FACULTY OF INFORMATICS

INSTITUTE OF TECHNOLOGY Department of Information Systems

INDUSTRIAL PROJECT II Final Presentation

Android based Healthcare Chatbot


Group Members
No. Name ID No. Role
1. Alemsefa Birhane Is/0010/10 Project Manager
2. Nardos Solomon Is/0086/10 Project team member
3. Zereabrham Mulugeta Is/0126/10 Programmer
4. Abdella Ibrahim Is/0001/10 Project team member
5. Misganaw Takele Is/0000/10 Project team member

2/7/23 Industrial Project II 1


Introduction
The system developed in this project is healthcare chatbot/diseases
prediction bot desktop/ mobile application.
By using this system, users can get to know what disease it could be
based on their symptoms.
 The application provides the required information in less time and
also helps in quicker decision making.
There are two types of prediction the system uses; the first one is
bases on bot question(yes/no) and the other is the user selects
minimum 2 symptoms from the provided symptoms.

2/7/23 Industrial Project II 2


Algorithms
For the development of this project, we used Pseudocode which is
way of expressing an algorithm in syntax-free style.
Simply, It is “text-based” detail design.
For example, PseudoCode for Registration
 Steps/procedure
Class name= signup
Method_name =register_user
Begin
Variables: username ,address, email, password, confirm_password,
gender, phone _no

2/7/23 Industrial Project II 3


Cont.…
If (*variables are valid*)
Then
Add to table record (username, email, password, phone_no, address,
gender)
Otherwise
Display “inputs are invalid”
End if
End

2/7/23 Industrial Project II 4


Cont.…
Pseudo code for prediction2 of diseases
Steps/procedure
Class name= Diseases_Prediction
Begin
Variables: training_dataset, disease, testing_dataset, name, predict
If variables are valid If
NameEn.get ()
symptom1.get ()
symptom2.get then
print(“predict disease”)
print(“accuracy”)
else:
print(“provide name first”)
print(“provide at least two symptoms”)
End if
End

2/7/23 Industrial Project II 5


Coding standards and procedures
naming conventions
Just like other programming languages, python has its own naming
conventions and standards. some of them are:
 Avoid using names that are too general/ too wordy. Strike a good balance between the
two.
 Package names and modules should be all lower case.

 When multiple words are needed, an underscore should separate them.

 Classes name should follow UpperCaseCamelCase convention, built-in functions typically


use lowercase word.
 Non-public method should begin with a single underscore.

 Constant names must be fully capitalized.

2/7/23 Industrial Project II 6


Coding procedures
We broke down the essential steps to plan for coding our project :
Decide what project to work on(in our case, it was provided by our
department)
We searched for similar projects previously done from different
sources
We chose language and necessary tools that is python language.
Tools used are pycharm, visual studio, DB browser SQLite3.
We listed features and entities required.

2/7/23 Industrial Project II 7


Cont.….
Mapped the project of architecture.
Added a pseudocode.
Finally coding.

2/7/23 Industrial Project II 8


Cont.….

2/7/23 Industrial Project II 9


Cont.….

2/7/23 Industrial Project II 10


Testing standards and procedures
Test case design
Test case is the individual unit of testing. It checks for specific
response to a particular set of inputs.
Unit testing
As an example, if we test the registration part
All fields must be correctly filled
The user’s password should be identical while confirming
If the above two are valid, then the registration will be successful
and added to the database prediction.

2/7/23 Industrial Project II 11


Structural testing
This type of testing is carried out to test the structure of the code,
also known as white box testing.
It tests internal structures/ working of an application.
Structural testing is concerned both with the processing and results.
This type of testing is present in all phases like designing,
requirements.

2/7/23 Industrial Project II 12


Cont.….

2/7/23 Industrial Project II 13


Functional Testing
Functional testing is a type of black box testing which evaluates the
conformance of a system component with the stated functional
requirement.
Functional testing is mainly concerned about the results but not the
processing.
In our previous documentation, we stated functional requirements
like viewing disease detail, accepting user disease symptom, storing
symptom, identify disease based on the provided symptom.

2/7/23 Industrial Project II 14


Cont.….
For example, to test different functionalities:
Determine the functionality to be tested
Create input data for the specified requirements
Determine acceptable output parameter
Execute test cases

2/7/23 Industrial Project II 15


Database
In the system development we have one database called prediction,
which has one table that stores user name, email, password, address,
age and phone number.
We used SQLite3 for database.

2/7/23 Industrial Project II 16


Cont.….

2/7/23 Industrial Project II 17


References
http://www.pythonware.com/library/tkinter/introduction
http://effbot.org/tkinterbook
Decision tree in python book

2/7/23 Industrial Project II 18


Conclusion and recommendation
Generally, the system developed requests symptoms from users,
diagnosis and predicts the disease. Based on this, we believe the
project has met its objective.
Recommendation
We recommend users of this system to be mobile literate.
Since the system developed does not include all symptoms and
diseases, it is scope limited. So that, for our next work we will do our
best to consider this and add more features like using different
languages and so on.

2/7/23 Industrial Project II 19

You might also like