You are on page 1of 32

HAWASSA UNIVERSITY FACULTY OF INFORMATICS

INSTITUTE OF Department of Information


TECHNOLOGY Systems
INDUSTRIAL PROJECT II Final Presentation

Desktop/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


Naming and Coding Standard
 Naming conventions make programs more understandable by making them
easier to read.
 They can also give information about the function of the identifier to be able to
mimic easily to the:
 Programmer
 Reader

2/7/23 Industrial Project II 3


Naming and Coding Standard
Variables:

Variables in our system are more of descriptive

All variable names are small lowercase with underscore and capitalize the first later for

“space”.

Example : Allowed variable names


Symptom1="vommiting"
Symptom2="Headache"
Symptom3 ="Fever"
2/7/23 Industrial Project II 4
Naming and Coding Standard
 Functions:
We can follow camel Case Convention, which means no space and no underscore
Rule-1: We should write the name with all lower case characters.
Rule-2: Do not use uppercase character while naming a function in python.
Rule-3: Use underscore(_) in between the words instead of space while naming a
function.

2/7/23 Industrial Project II 5


Naming and Coding Standard
 def login():
print("This is the way we should login")
 def signup():
print ("signup please before login")
 
 def prediction():
print ("know your diseases")

2/7/23 Industrial Project II 6


Naming and Coding Standard
 Classes:
Python naming conventions for classes are the same as any other programming
languages like C# or C++.
There are certain rules we need to follow while we are deciding a name for the class
in python.
The program really looks cool when you will give a proper name for the class
because the Program starts with the class.

2/7/23 Industrial Project II 7


Class cont…
 Rule-1: We need to follow the camel Case convention
 Rule-2: When you are writing any classes for an exception then that name
should end with “Error“.
 Rule-3: If you are calling the class from somewhere or callable then, in that case,
you can give a class name like a function.
 Rule-4: The built in classes in python are with lowercase.
 class Login()

2/7/23 Industrial Project II 8


Naming and Coding Standard
 Coding standard

we used :
python and tkinter for graphical user interface .
Pandas an open-source Python Library for data manipulation and analysis tool
using its powerful data structures.

Scikit-learn (Sklearn). fora selection of efficient tools for machine learning and
statistical modeling including classification, and dimensionality reduction via a
consistence interface in
2/7/23
Python.
Industrial Project II 9
Naming and Coding Standard
 SQLite3 can be integrated with Python using sqlite3 module.

 DB Browser for SQLite (DB4S) for create, design, and edit database files
compatible with SQLite.
 Coding conventions serve the following purposes:

 consistent look to the code

 They enable readers to understand the code more quickly

 They facilitate changing, and maintaining the code easily

2/7/23 Industrial Project II 10


Naming and Coding Standard
 Layout and indentation

 Indentation in code is must. We used indentation in our code


 Python indentation is a way of telling a Python interpreter that the group of
statements belongs to a particular block of code. A block is a combination of all
these statements.

2/7/23 Industrial Project II 11


Naming and Coding Standard
Strings
 Strings in python are surrounded by either single quotation marks, or double
quotation marks.
 ‘name' is the same as “name".
 You can display a string literal with the print() function:
 If elseprint("Name: ", NameEn.get())
 statements
 Python supports the usual logical conditions from mathematics:
 An "if statement" is written by using the if keyword.
 if password1 in verify
 messagebox.showinfo("Sucess","Login Sucessful")
2/7/23 Industrial Project II 12
Naming and Coding Standard
Exception
When an error occurs, or exception as we call it, Python will normally stop and generate an
error message.
These exceptions can be handled using the try statement:
e.g :
Except:
  print("An exception occurred")
Comments
Comments can be used to explain Python code.
Comments can be used to make the code more readable.
Comments can be used to prevent execution when testing code.
Comments starts with a #, and Python will ignore them:

2/7/23 Industrial Project II 13


Algorithms
In this part we described the algorithm of the operations or methods by using
pseudo code. Pseudo code is one type of algorithm representation method by using
natural languages like English.e.g
Steps/procedure
Begin
Variables: symptom1, symptom2,name
If (*the symptom1,2 and name is filled *)
Then
Display prediction
Otherwise
Display “provide at least two symptom and fill name”
End

2/7/23 Industrial Project II 14


Pseudo Code for User Registration
Steps/procedure
Begin
Variables: username, email, password,address,age,phone_no
If (*variables are valid*)
Then
Add to table prediction
(username ,email , password,address,age,phone_no)
Otherwise
Display “inputs are invalid”
End

2/7/23 Industrial Project II 15


Pseudo code for login
Steps/procedure
Begin
Variables: username, Password
If (*select the username and password from database and compare with entered*)
username= entered email and
Password = entered password
(*go to account page*)
Otherwise
Display “login error!”
End

2/7/23 Industrial Project II 16


Cont.…Pseudo Code for prediction(1)
If (*press start and question is yes*)
Then
(predict diseases
Symptom given
Symptom present)
Otherwise
Display “symptom present empty
And confidence level is 0.0”
End if
End

2/7/23 Industrial Project II 17


TESTING PROCEDURES
A number of activities must be performed for testing software.
 Test Plan
 Unit Testing
 Integration Testing
 System Testing

2/7/23 Industrial Project II 18


Test Plan

 Test plan is a general document for entire project, which defines the

scope, approach to be taken, and the personal responsible for different


activities of testing.

2/7/23 Industrial Project II 19


Unit Testing
 Unit testing focused first in the smallest and low-level modules, proceeding
one at a time.
 Bottom-up testing was performed on each module.

 The system developers test the different sub procedures, since our approach
is object-oriented class and methods are separately tested.

2/7/23 Industrial Project II 20


Cont.….Integration Testing
 The software tested under this was incremental bottom-up approach.

 Bottom-up approach integration strategy was implemented with the


following steps.
 Low level modules were combined into clusters that perform specific

software sub functions.


 The clusters were then tested.

2/7/23 Industrial Project II 21


System Testing
 we evaluate both functional behavior and quality requirements such as
reliability, usability, performance and latency.
The goal is to ensure that the system performs according to its requirements.
It also tests to find otherness between the system and its original objective, current
specifications.

2/7/23 Industrial Project II 22


System maintenance

 System maintenance covers a wide variety of activities, including removing


program and design errors, updating documentation and test data and updating
user support.

2/7/23 Industrial Project II 23


Cont…
 Maintenance may be categorized into three classes, namely:

 Corrective Maintenance:
 Adaptive Maintenance:
 Perfective Maintenance:

2/7/23 Industrial Project II 24


Corrective Maintenance:
 implies removing errors in a program, which might have crept in the system
due to faulty design or wrong assumptions.
Corrective maintenance is the category of maintenance tasks that are
performed to rectify and repair faulty systems and equipment. The
purpose of corrective maintenance is to restore systems that have
broken down. Corrective maintenance can be synonymous
with breakdown or reactive maintenance.

2/7/23 Industrial Project II 25


Adaptive Maintenance:

program functions are changed to enable the information system to


satisfy the information needs of the user. This type of maintenance
may become necessary because of organizational changes

2/7/23 Industrial Project II 26


Perfective Maintenance:
adding new programs or modifying the existing programs to enhance
the performance of the information system. This type of maintenance
undertaken to respond to user’s additional needs which may be due to
the changes within or outside of the organization.

2/7/23 Industrial Project II 27


Database
In the system development we have one database called prediction,
which has one table that stores username, email, password, address,
age and phone number during registration.
We used SQLite3 for database.
We used DB Browser for Sqlite3

2/7/23 Industrial Project II 28


Conclusion
Generally, the system developed requests symptoms from users, and
predicts the disease. Based on this, we believe the project has met its
objective.
After we have completed the project we are sure that the problems
in the existing system makes all the process or activities
computerized to reduce humans time and money waste .
And also, the proposed user interface is made simpler and
interactive.

2/7/23 Industrial Project II 29


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 30


References
http://http://www.pythonware.com/library/tkinter/introduction
http://www.Tutorialpoint.com
https://scikit-learn.org

2/7/23 Industrial Project II 31


THANK YOU

2/7/23 Industrial Project II 32

You might also like