Hamro Sath
Hamro Sath
SUPERVISOR’S RECOMMENDATION
I hereby recommend that this project prepared under our supervision Ujjwal Sapkota and
Nirajan Basnet entitled "Hamro Sath" in partial fulfillment of the requirements for the
degree of Bachelor of Science in Computer Science and Information Technology to be
processed for the evaluation.
……………………………..
Mr. Sulav Nepal
Supervisor
Texas International College
Chabahil, Kathmandu
ii
Tribhuvan University
Faculty of Humanities and Social Sciences
Texas International College
LETTER OF APPROVAL
This is to certify that this project prepared by Ujjwal Sapkota and Nirajan Basnet entitled
"Hamro Sath" in partial fulfillment of the requirements for the degree of Bachelor of
Computer Application has been well studied. In our opinion, it is satisfactory in the scope
and quality as a project for the required degree.
…………………………….. ……………………………..
Mr. Sulav Nepal Mr. Omkar Basnet
Supervisor HOD, CSIT
Texas Int’l College Texas Int’l College
Chabahil, Kathmandu Chabahil, Kathmandu
…………………………….. ……………………………..
Mr. Kumar Poudyal
External Supervisor
Faculty Member
Tribhuvan University
Texas Int’l College
Chabahil, Kathmandu Kritipur, Kathmandu
iii
ABSTRACT
Through the use of telehealth services, Hamro Sath's revolutionary web-based approach is
revolutionizing access to healthcare. The platform's user-friendly interface is built using
HTML and CSS, and its powerful backend is powered by Python to provide safe data
processing. The development approach was informed by research and questionnaire data,
resulting in a smooth user and doctor experience.
Hamro Sath makes registration and appointment administration easier for medical
professionals while also facilitating remote consultations via the built-in chat feature. From
the convenience of their homes, users may quickly register, make appointments, and chat
with healthcare specialists. The platform's focus on telehealth aims to improve medical
services for all people while lowering obstacles to accessing healthcare due to distance.
In conclusion, Hamro Sath, through utilizing cutting-edge technologies, sits at the forefront
of contemporary healthcare delivery. Both consumers and doctors enjoy using it because
of its user-friendly UI and secure data management. Hamro Sath promotes a future in which
medical consultations are just a click away, efficiently and effectively linking doctors and
patients, as telehealth develops popularity in the healthcare sector.
iv
ACKNOWLEDGEMENT
The success of this project would not have been possible without the kind support and
assistance of many individuals and organizations, and we are immensely blessed to have
got this all along the duration of our project. We would like to thank Tribhuwan
University and Texas International College for providing us an opportunity.
We would like to express our gratitude to our project supervisor Mr. Sulav Nepal who
took keep interest on our project and guided us throughout the project by providing all the
necessary ideas, information and knowledge for the developing a functional mobile
application.
We are also appreciative of the efforts of BCA coordinator Mr. Omkar Banet, without his
supporting role, the project would have been nowhere near completion.
We are thankful and fortunate enough to get constant support from teaching staff of BCA
department which helped us successfully complete our project. We would also like to
extend our regards to all the non-teaching staff of BCA department for their timely support.
Last but not the least, our thanks and appreciations also go to each and every one of our
parents and colleagues for their encouragement and support in developing the project.
Hamro Sath
Ujjwal Sapkota
Nirajan Basnet
v
TABLE OF CONTENTS
ABSTRACT........................................................................................................................ iv
ACKNOWLEDGEMENT ................................................................................................... v
1.1 Introduction....................................................................................................................11
Scope .......................................................................................................................................12
Limitations ..............................................................................................................................12
vi
3.3 Algorithm Details ..........................................................................................................31
REFERENCES .................................................................................................................. 43
APPENDICES ................................................................................................................... 44
vii
LIST OF FIGURES
Figure 1: Agile Development Process ............................................................................... 13
ix
LIST OF ABBREVIATIONS
1.1 Introduction
The condition of telehealth in Nepal demonstrates a rising interest in remote healthcare
services, which may improve access to medical treatment while cutting expenses and travel
time. Limited internet infrastructure and low public awareness are problems. A web-based
system called Hamro Sath was created with the main goal of expediting the process of
scheduling doctor appointments and expanding access to healthcare. In addition to
facilitating doctors' registration and allowing them to provide their services to consumers,
this ground-breaking platform also enables regular users to register and benefit from
telehealth services. Data gathered through extensive questionnaires and in-depth research
served as the system's development's compass, ensuring that it meets the unique needs of
users and physicians alike. Users may easily schedule appointments and consult with
doctors remotely thanks to the integration of a chat feature, making healthcare available
from the convenience of their homes.
Additionally, Hamro Sath makes use of the gathered data to suggest physicians in similar
specialties, improving the user experience by linking them with the most qualified medical
personnel. The platform's capacity to act as a dependable and effective telehealth solution
is further strengthened by this recommendation mechanism.
Moreover, the lack of sufficient knowledge and expertise in addressing diverse health
issues poses a serious impediment to individuals striving for a healthy lifestyle. With the
increasing prevalence of various diseases and medical conditions, the need for a
11
streamlined and convenient platform to connect with the right medical professionals
becomes ever more pressing. Additionally, as our lives become busier and more
demanding, there arises a growing concern about the impact of stress and mental well-
being on overall health. However, access to reliable resources and support for mental health
concerns remains limited, leaving individuals in search of a more accessible and empathetic
avenue for addressing their mental well-being
1.3 Objectives
The main objectives of our project are as follows:
• Providing a chat feature for seamless interactions between users and doctors.
• Implementing a feedback system for users to share their post-appointment experiences
and rate healthcare services.
• Enhancing health awareness and empowering users to make informed decisions about
their well-being.
Limitations
The major limitations of Hamro Stah are as follows:
12
1.5 Development Methodology
Agile development practices are usually the preferred approach for mobile app
development due to the high level of complexity and uncertainty involved in most projects.
Our teams have expertise working with agile development processes, tools, and systems,
and we provide frameworks adapted to your needs. These also help to mitigate risks,
volatility, and uncertainties.[1]
To Hamro Sath, we used the agile process to create the system. With this strategy, the
project is divided into smaller, more manageable tasks known as "sprints." We
concentrated on delivering functional components throughout the course of iteration cycles
rather than finishing the full system at once.
Using the agile methodology, we worked in constant collaboration with users and
physicians to solicit feedback and make adjustments as we went. This gave us the flexibility
and adaptability to change course based on information received in real time.
We made sure that the system's features were developed sequentially utilizing the agile
technique, allowing us to address any possible concerns early in the process. In this way,
13
we were able to develop a user-friendly and successful telehealth platform that adequately
satiated the requirements of users and physicians.
14
CHAPTER 2: BACKGROUND OF STUDY AND
LITERATURE REVIEW
Infrastructure issues, such as spotty internet access in rural places, can prevent telehealth
from being widely used. Programmes for education and awareness are crucial to ensuring
that telehealth services are understood and accepted by the general public as well as
healthcare professionals. The establishment of well-defined legal and regulatory
frameworks is crucial for the effective implementation of telehealth. It is critical to address
concerns with data security, privacy, and licensure for remote health services. To provide
seamless service delivery, telehealth must be integrated with the current healthcare
systems. It is essential to collaborate with local stakeholders, community health workers,
and medical experts. Telehealth initiatives may involve the utilisation of diverse
technologies, including video conferencing, mobile applications, and remote monitoring
devices.
15
2.2 Literature review
Telehealth is a method of providing healthcare that makes use of technology to give
medical services remotely. In order to facilitate consultations, diagnoses, treatments, and
patient monitoring without requiring in-person visits to healthcare facilities, it incorporates
the use of telecommunications and digital communication tools. There are few online
health consultations in Nepal Following are some available existing systems for telehealth
service.
• Collaborative Filtering:
Application: The system suggests doctors that a user who has consulted with a doctor
similar to them has consulted with.
• Content-Based Filtering
16
Application: To find hidden patterns in user-doctor interactions, models such as matrix
factorization or Singular Value Decomposition (SVD) might be employed.
• Decision Trees:
Concept: Makes predictions about the probability that a user will select a specific
physician by using machine learning techniques.
Use case: Utilize past data to train classifiers that can anticipate user preferences and
suggest physicians based on those interests.
• Neural Networks:
Concept: Models for deep learning able to extract intricate patterns from user-doctor
interactions.
Application: Using neural networks to discover complex interactions between users and
doctors, such as recommendation models with embedding layers.
• K-Means Grouping:
Concept: Sorts physicians into groups according to specific characteristics, then suggests
physicians from each group that best suit the user's preferences.
• Hybrid Approaches:
Concept: Merges several recommendation strategies to improve precision and get over the
drawbacks of each one alone.
17
Use: For more reliable recommendations, combine collaborative filtering with content-
based filtering or employ a combination of collaborative filtering and machine learning
classifiers.
i. Hamro Doctor
Hamro Doctor is an internet platform that puts healthcare at your fingertips. You can use your
smartphone or computer to make video calls or phone calls with real doctors in place of going to
the office. You can talk about your health issues, obtain medical advice, and get answers to your
inquiries concerning a variety of health topics with Hamro Doctor. It's similar to scheduling a
virtual doctor's appointment from the comfort of your home. This programme is intended to make
healthcare more practical and available, particularly for those who might live far from medical
facilities or find it challenging to visit a doctor in person. You can receive expert medical assistance
and support without having to physically travel because of it.[2]
ii. Mero Doctor
Mero Doctor is a well-known online health consultation service in Nepal that offers free
quick consultations and audio-video consultations with the help of doctor visits. Mero
Doctor's user-friendly platform offers a number of features, such as doctor appointments
and more, permitting simple connections between patients and licensed healthcare
professionals. By utilizing the power of digital technology, Mero Doctor aims to increase
healthcare's accessibility, usability, and effectiveness while guaranteeing that people all
throughout Nepal have access to first-rate medical care at their fingertips.[3]
Integrated inside the well-known "Hamro Patro" mobile app, Hamro Patro Health is a
ground-breaking telehealth service in Nepal. By utilizing technology to deliver remote
medical treatments and support, it seeks to revolutionize healthcare accessibility for people
18
in Nepal. People can easily reach healthcare providers through their cellphones or laptops
using Hamro Patro Health and get medical consultations, advice, and assistance.
Users can speak with trained doctors and specialists over the phone or over video
conferencing, discuss their health issues, and get individualized medical advice.
Additionally, the programme enables remote monitoring of health metrics and vital signs,
allowing medical professionals to more efficiently track and treat chronic illnesses. In rural
and underserved areas of Nepal, Hamro Patro Health addresses the problems posed by
physical constraints and a lack of healthcare resources.[4]
i. Primary source
Interview: For the system, we talked with our fellow teachers, family members and some
of our friends. Many of them were feeling hassle in visiting a doctor and others were
unaware about the issues that could occur due to mental instability of an individual. We
gathered all the information and implemented some of it in our project.
Web surfing: Different websites were part of our research. We analyzed the services they
offered and the features those websites could not address. This research helped us gain vital
information and data obtained from the research helped us significantly in the design and
development of our project.
19
CHAPTER 3: SYSTEM ANALYSIS AND DESIGN
i. Functional Requirement
A Functional Requirement (FR) is a description of the service that the software must offer.
It describes a software system or its component. A function is nothing but inputs to the
software system, its behavior, and outputs. It can be a calculation, data manipulation,
business process, user interaction, or any other specific functionality which defines what
function a system is likely to perform. Functional Requirements in Software Engineering
are also called Functional Specification.[6]
Title Login
Admin and Users should be able to login with their username and
Description
password
Input Data username and password
Source of Login Screen
Input
Result In case of valid credentials, it should be redirected to the respective
database as per role. If credentials are not valid, they should be
redirected back to the login page with a proper error message.
Validation -
20
Table 2: Functional Requirement of Client and Experts
Description Every client and user must be maintained by a supervisor from the
backend portal where you can have his/hers all details.
Result If all the given inputs are valid, the Blog should be added to the
database and all the logged in users can view it.
If input data is not valid, the blog will not be added.
Pre-condition
21
Table 4: Functional Requirement of Create Appointment
Description Appointment can be created to any experts as they can using various
input field
Title Meeting
22
Table 6: Functional Requirement of History
Title History
Description Users can view all the history of the appointments of his /hers.
Input Data
23
Use Case
24
3.1.2 Requirement Analysis
A feasibility study evaluates a project's or system's practicality. As part of a feasibility
study, the objective and rational analysis of a potential business or venture is conducted to
determine its strengths and weaknesses, potential opportunities and threats, resources
required to carry out, and ultimate success prospects. Two criteria should be considered
when judging feasibility: the required cost and expected value.
i. Technical Feasibility
To develop this platform, we don’t need high performance hardware and software. Code
editor like VS code and Android studio was used.
ii. Operational
Now every individual has a smartphone or laptop and are very familiar with online
platforms hence they can easily access our platform. The interface of this platform is very
understandable and easy to use.
iii. Economic
The production cost of the project was cost effective. Hence the project should be able to
generate profit from advertising on application.
iv. Schedule
The Gantt chart will make it easier to manage time when creating the system.
25
3.2 System Design
System design is the process of designing the elements of a system such as the architecture,
modules and components, the different interfaces of those components and the data that
goes through that system.
26
3.2.2 Activity Diagram
i. Super Admin
27
ii. Doctor
28
iii. Client
29
3.2.2 Sequence Diagram
30
3.3 Algorithm Details
3.3.1 Cosine Algorithm
In Hamro Sath we use cosine similarity to recommend doctors to users based on their
reported symptoms. Cosine similarity is calculated using the formula: cosine_similarity =
dot_product(v1, v2) / (magnitude(v1) * magnitude(v2)). Here, v1 and v2 represent the
symptom vectors of the user and the doctor, respectively, represented as binary vectors (1
for presence, 0 for absence of symptoms). The dot_product(v1, v2) calculates the dot
product of the user and doctor symptom vectors, and magnitude(v) calculates the Euclidean
norm of vector v.
In Hamro Sath, the cosine similarity score of 0.5 indicates some similarity in the reported
symptoms between the user and the doctor. By employing this algorithm, we ensure that
users are connected with doctors whose expertise aligns closely with the symptoms they
have reported, offering personalized and relevant healthcare recommendations.
31
Figure 7: Cosine Similarity
32
Chapter 4: Implementation and Testing
4.1 Implementation
4.1.1 Tools Used
Various front-end and back-end technologies are available in this era of digitalization. The
technologies used in this project are discussed briefly in the following sections.
Through the use of Django as the primary backend technology and SQLite as the database
engine, "Hamro Sath" achieved a well-structured and efficient backend architecture. The
combination of Django's powerful features and SQLite's simplicity ensured smooth data
management and seamless operation of the Online Doctor Appointment Booking System.
Additionally, adopting ASGI for server communication contributed to the application's
performance optimization, making it well-suited to handle real-time operations and
asynchronous tasks.
i User Module
The User Module in "Hamro Sath" - the Online Doctor Appointment Booking System,
plays a vital role in providing a secure and personalized user experience. Through the
registration screen, users can easily create their accounts by supplying essential details like
username, email address, and password. To enhance security, the module employs the
SHA-256 hashing algorithm to securely store passwords, adding an extra layer of
protection to user credentials. During the registration process, users are prompted to specify
their user type, selecting from three options: Doctor, Super user, or Normal User, based on
34
their respective roles and privileges within the platform. Upon successful registration, users
can log in using their designated credentials. The login process verifies the entered
username and password, granting access only to authenticated users. Depending on their
user type, individuals are redirected to personalized dashboards tailored to their specific
needs.
For users categorized as Doctors, the platform provides a specialized dashboard that allows
medical professionals to efficiently manage their appointments, access patient information,
and respond to appointment requests. Super users, characterized as administrative users,
gain access to a comprehensive admin dashboard, empowering them to oversee and
maintain the user database, manage appointments, and configure system settings. Normal
Users, representing regular users seeking medical consultations, can browse through
available doctors, review their profiles and specialties, and conveniently schedule
appointments to meet their preferences. The User Module prioritizes the security of user
data, employing robust encryption mechanisms to store user information safely in the
database. The use of SHA-256 hashing ensures that passwords remain encrypted,
significantly reducing the risk of unauthorized access to sensitive information. With a
seamless registration and login process tailored to different user types, "Hamro Sath"
ensures a safe and personalized experience for all users, establishing a strong foundation
for efficient communication and appointment booking within the platform.
ii Appointment Module
The Appointment Module in "Hamro Sath" plays a pivotal role in facilitating the booking
of appointments between users and doctors based on their respective availabilities. Users
can access their personalized dashboards to set their preferred days and time slots for
consultations, ensuring that the appointment booking process aligns seamlessly with their
schedule. Similarly, doctors can specify their working hours and availability within the
platform, allowing users to book appointments at times when the doctors are accessible.
This synchronized approach minimizes the likelihood of appointment conflicts and
enhances the overall efficiency of the system.
35
To book an appointment, users can browse through the list of available doctors, considering
their specialties and availability. Upon selecting a preferred doctor, users can view the time
slots that match both their own and the doctor's availability. Once a suitable time slot is
identified, users can confirm the appointment request, prompting the system to verify the
availability of the doctor at the chosen time. Following successful verification, users
receive appointment confirmation notifications containing the appointment details, while
doctors are also informed of the newly booked appointments to ensure preparedness for the
scheduled consultations. The Appointment Module further offers the flexibility to
reschedule or cancel appointments, if necessary, with appropriate notifications sent to both
users and doctors. By considering both user and doctor availability and implementing
conflict checks, "Hamro Sath" establishes an organized and efficient appointment
management system, optimizing the interaction between users and medical professionals.
The Feedback Module in "Hamro Sath" serves as a valuable tool for users to share their
post-appointment experiences with doctors. After a successful consultation, users are given
the opportunity to provide feedback, enabling them to rate the overall experience and offer
written comments and suggestions. The module incorporates a rating system that allows
users to assign numerical or star ratings to doctors, helping other users make informed
decisions when selecting healthcare providers. This anonymous feedback option
encourages users to share honest opinions without any reservation, promoting transparency
and openness in the feedback process. Additionally, doctors can respond to user feedback,
fostering a two-way communication channel and showcasing their commitment to patient
satisfaction and care.
The collected feedback plays a crucial role in continuously improving the quality of
healthcare services offered on the platform. Platform administrators and doctors can
analyze the feedback data to identify areas of excellence and areas requiring improvement.
By leveraging user insights, "Hamro Sath" aims to enhance its offerings, ensuring a patient-
centered approach to healthcare delivery. The Feedback Module strengthens trust and user
satisfaction, contributing to a dynamic and responsive environment where users' voices are
36
heard and valued, ultimately leading to a platform that consistently delivers top-notch
healthcare services.
iv Chat Module
The Chat Module in "Hamro Sath" harnesses the power of Django Channels to enable real-
time communication between users and doctors during their scheduled appointment times.
This innovative feature enhances the overall user experience by providing direct and instant
access to medical advice and assistance. Users can engage in text-based conversations with
doctors, discussing their health concerns, seeking medical advice, and receiving prompt
responses. The module seamlessly integrates into the appointment booking system,
offering users direct access to the chat feature during their scheduled appointment times,
streamlining the communication process and facilitating easy connectivity with their
assigned doctors. The Chat Module also maintains the context of the appointment session,
ensuring doctors have access to relevant information from previous interactions, enabling
them to provide personalized and continuous care, even across multiple sessions.
Furthermore, users with appointments with different medical professionals can
concurrently communicate with multiple doctors through the Chat Module, offering
flexibility for those seeking consultations with specialists from various medical fields. By
providing real-time, secure, and efficient communication, "Hamro Sath" ensures that users
can benefit from immediate medical guidance and support, creating a patient-centric
platform for personalized and responsive medical consultations, all from the comfort of
their own homes.
37
4.2 Testing
4.2.1 Test Cases for Unit Testing
Table 7: Test Case
Test Test Scenario Test Case Test Data Expected Actual Pass/
Case Result Result Fail
ID
T1 Test Login Check loginemail and Redirect to As Pass
Functionality with valid datapassword Home page Expected
38
T8 view history user and appointment detailshistory As Pass
doctor both screen Expected
can view
appointment
history
i. Functionality Testing: This testing phase evaluates all the functionalities of the
"Hamro Sath" software, verifying that each feature aligns with the specified
requirements. The system is rigorously tested to ensure that users can seamlessly book
appointments with doctors, access relevant medical information, and communicate
effectively through the real-time chat module. Functionality testing guarantees that the
software performs as intended and provides a smooth user experience across all
aspects of appointment booking and management.
ii. Performance Testing: To determine the efficiency of the software, performance
testing is conducted. This test evaluates the effectiveness and average time taken by
the system to execute various tasks. Load testing and stress testing are employed to
assess the software's responsiveness under high user and data load across different
environmental conditions. The objective is to ensure that "Hamro Sath" can handle
multiple simultaneous users and maintain optimal performance without compromising
speed and responsiveness.
iii. Security & Portability Testing: As "Hamro Sath" is intended to operate on various
platforms and serve a multitude of users, security and portability testing are crucial
components. The software is assessed for its ability to maintain data security and
privacy during user interactions, ensuring that sensitive medical information remains
protected. Additionally, portability testing validates the compatibility of the
application with different devices and operating systems, guaranteeing a seamless user
experience regardless of the platform used.
39
Through rigorous system testing, "Hamro Sath" aims to validate its functionality,
performance, security, and portability aspects, ensuring a reliable and efficient platform for
users and doctors alike. This testing process is integral to delivering a high-quality and
dependable online appointment booking system that meets the needs and expectations of
all stakeholders involved.
40
CHAPTER 5: CONCLUSION AND FUTURE
RECOMMENDATION
Throughout the project, we delved into the interplay between frontend and backend
technologies, gaining a deep understanding of their seamless integration to create a
cohesive and user-friendly web application. By leveraging Django, we successfully
developed the backend logic, ensuring smooth data processing, user authentication, and
database management. On the frontend, HTML and CSS were used to structure and style
the web pages, while JavaScript added interactivity and enhanced user experience with
dynamic content updates. Bootstrap played a vital role in achieving a responsive and
visually appealing design, adapting seamlessly to different screen sizes and devices.
Overall, the development of "Hamro Sath" enabled us to grasp various concepts of web
application development and become proficient in utilizing the technologies like Django,
HTMX, CSS, Bootstrap, HTML, and JavaScript. This project provided us with practical
experience in employing these tools and methodologies, empowering us to create an
efficient and user-centric web platform for scheduling appointments with medical
professionals, ultimately catering to the healthcare needs of our users.
5.2 Conclusion
"Hamro Sath" is a web-based doctor appointment booking system that provides a user-
friendly platform for scheduling appointments with medical experts. The application aims
to facilitate seamless interactions between users and doctors, streamlining the process of
41
seeking healthcare guidance and support. Throughout the development journey, our focus
remained on creating a reliable and efficient user experience, allowing users to easily
connect with medical professionals and access essential services for their health and well-
being. The platform caters to individuals seeking expert assistance across various medical
fields, providing a convenient and accessible solution for managing their health concerns.
With features like real-time chat and appointment scheduling, "Hamro Sath" ensures a
smooth and responsive user interface, empowering users to book appointments with
doctors of their choice and receive timely medical consultations, ultimately contributing to
a healthier and more informed lifestyle.
42
REFERENCES
[1] Christie, T. (nod). Django rest framework. Home - Django REST framework.
Retrieved July 17, 2022, from https://www.django-rest-framework.org/
43
APPENDICES
44
Figure 9: Registration Page
45
Figure 11: Feedback Form
46
Figure 13: Chatbot of Client and Doctor
47