This document summarizes an Android-based healthcare chatbot project presented by 5 students. It describes the group members, introduces the chatbot system for disease prediction based on user-reported symptoms, explains the algorithms and coding standards used to develop the chatbot, and tests conducted including unit testing, structural testing and functional testing. It also discusses the SQLite database used and concludes with recommendations to improve the project.
This document summarizes an Android-based healthcare chatbot project presented by 5 students. It describes the group members, introduces the chatbot system for disease prediction based on user-reported symptoms, explains the algorithms and coding standards used to develop the chatbot, and tests conducted including unit testing, structural testing and functional testing. It also discusses the SQLite database used and concludes with recommendations to improve the project.
This document summarizes an Android-based healthcare chatbot project presented by 5 students. It describes the group members, introduces the chatbot system for disease prediction based on user-reported symptoms, explains the algorithms and coding standards used to develop the chatbot, and tests conducted including unit testing, structural testing and functional testing. It also discusses the SQLite database used and concludes with recommendations to improve the project.
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.
Use of Software in Construction Laboratories, Development of Z-Mega Software For Digitalization of Laboratory Reports, Digital Data Storage and Processing of Test Results