You are on page 1of 20

Software Requirements Engineering (SWE404)

for

A Self-Diagnosis Medical Chatbot Using AI

Under supervision
Dr. Esmat Mohamed
Eng. Fatma Hossam

Submitted by

# ID Name

1 42010629 Mohamed Qadri Salah

2 42010427 Ahmed Elbaz Abdelaleem

3 42010637 Suhaila Khaled Fathi


Table of Contents
1. Introduction………………………………………………………………………………………….1
1.1 Overview………………………………………………………………………………………….
1 1.1.............................
Purpose…………………………………………………………………………………………….1........
1.2. Motivation…………………………………………………………………………………………
1
1.3..................................................................................................................................... Objective
………………………………………………………………………………………….1
1.4 Aim….…………………………………………………………………………………………….2
1.5 Purpose……………………………………………………………………………………………3
1.6 Product Scope.…………………………………………………………………………………….3

1.7. Operating Environment……………………………………………………………………………


4 ...............................................

2. Requirements………………………………………………………………………………………..5
1.1 User
Requirements………………………………………………………………………………...5
1.2 System
Requirements……………………………………………………………………………...7
1.3 Functional Requirements…………...
……………………………………………………………..9
1.4 Non-functional Requirements…………..
………………………………………………………..11
1.5................................................................................ Hardware Requirements …………………...
…………………………………………………….12
1.6................................................................................................................ Software Requirements
………………………………………………………………………….13
3. Key Points………………………………….………………………………………………...15
Revision History
Name Date Reason For Changes Version
Self-Diagnosis 30/10/202 Solve some problem in app 1.0
Medical Chatbot 3
Self-Diagnosis 4/12/2023 Add new functions and edit documents 1.1
Medical Chatbot
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 1

1. Introduction

1.1Overview:
In today's dynamic healthcare landscape, the growing emphasis
on personal health management has underscored the need for
accessible solutions. Recognizing the challenges associated with
seeking timely advice from healthcare professionals, we are
developing an innovative Chatbot. This Chatbot provides users
with immediate access to medical consultations and facilitates
checks on MRI, all from the comfort of their homes.

1.2Motivation:
Our Chatbot is driven by the aspiration to empower users with a
wealth of knowledge on diseases and public health. The primary
motivation is to create a seamless information flow through a user-
friendly design. We aim to enhance the user experience, making
the acquisition of valuable health insights a straightforward and
enjoyable process.

1.3Objective:
The proposed Chatbot seeks to simplify and support users in
engaging with artificial intelligence for natural consultations on
medical topics. It streamlines communication for doctors and
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 2

users, aiding in determining the necessity of a healthcare visit. The


application facilitates preliminary diagnoses, especially in the case
of an MRI, providing insights into potential medical concerns.
The goal is to offer users a comprehensive understanding of
symptoms, along with session summaries and potential medical
risks. The application operates in multiple languages, including
Arabic, ensuring accessibility to a broader audience.

1.4Aim:
Our overarching goal is to harness the potential of various
imaging modalities, spearheading advancements in disease
detection. Firstly, Chatbot acts as a catalyst for enhanced access to
medical advice among Arabic-speaking individuals, ensuring
effective communication in healthcare. Secondly, through the
integration of sophisticated AI algorithms, Chatbot strives for
unparalleled precision in self-diagnosis, enabling users to navigate
medical information with utmost accuracy. Thirdly, the tool
breaks down language barriers, prioritizing inclusivity by
providing medical content in Arabic. Moreover, Chatbot focuses
on the early detection of diseases using imaging technologies such
as MRI, CT scans, and dental X-rays. This holistic approach
contributes significantly to improved healthcare outcomes,
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 3

marking a transformative step toward a healthier and more


informed Arabic-speaking community.
1.5Purpose:
Our project addresses the lack of accessible and trustworthy
medical resources in Arabic. Individuals in the Arab world often
struggle to find reputable websites or apps offering information in
Arabic. The existing diagnostic tools predominantly operate in
English, creating a language barrier. Our solution not only aids in
self-diagnosis but also interprets MRI scans for brain-related
conditions, contributing to improved healthcare outcomes for the
Arabic-speaking population.

1.6 Product Scope:


 The proposed self-diagnosis medical chatbot will revolutionize
healthcare accessibility for Arabic speakers through a multifaceted
approach. Firstly, users can effortlessly input their medical
symptoms in Arabic, engaging with AI algorithms that yield
accurate information and personalized recommendations. The
application's expansive database will serve as a reliable source of
medical information in Arabic, covering a spectrum of health
conditions, symptoms, treatments, and medications. The chatbot's
capabilities extend to the specialized interpretation of MRI scans,
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 4

focusing on brain diseases like Alzheimer's and tumors, with


diagnostic support provided in Arabic.

 Ensuring a secure and personalized experience, the chatbot


incorporates user authentication, allowing individuals to create
accounts with comprehensive profiles, medical histories, and
preferences. Real-time communication is facilitated through both
text and voice interactions in Arabic, providing users with
immediate responses to their inquiries. Moreover, the system
accommodates the upload of MRI images, offering timely insights
and interpretations based on the provided scans. This
comprehensive suite of features establishes the chatbot as a
pioneering solution, fostering informed and empowered healthcare
decisions within the Arabic-speaking community.

1.7 Operating Environment:


• Android 9 or above.
• IOS 12 or above.
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 5

2. Requirements

2.1 User Requirements


1. User Registration:
• Users can create an account with basic information (name,
email, password).
• Optional sign-up methods, including Google and Firebase
authentication.

2. User Authentication:
• Secure sign-in methods: email/password, Google, and Firebase
authentication.

3. Intuitive User Interface:


• User-friendly design with clear navigation
• Straightforward sign-up and sign-in screens.

4. Chat Functionality:
• Users can ask medical questions through a chat interface.
• AI-powered chatbot responds promptly with accurate
information.
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 6

5. Medical Image Upload:


• Users can upload MRI and CT images.
• User-friendly image upload process with capture or selection
options.

6. Diagnosis Information:
• Chatbot provides clear diagnosis based on symptoms and
uploaded images.
• Users receive information on potential medical conditions and
recommendations.

7. History Tracking:
• App maintains a history feature recording date, uploaded
images, and descriptions.
• Users can review past conversations and diagnoses for
reference.

8. Description and Notes:


• Users can provide additional descriptions or notes related to
symptoms or images.
• Enhances accuracy of diagnosis with user-provided context.
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 7

2.2 System Requirements

• In this envisioned user experience, individuals embark on a


seamless self-diagnosis journey facilitated by an intelligent
medical chatbot. The process begins with user registration, offering
a choice between providing basic information, such as name and
email, or opting for the convenience of alternative sign-up methods
like Google or Firebase authentication.

• Upon confirming their identity through secure authentication


methods, users are welcomed by a user-friendly interface designed
for effortless navigation. The chat functionality becomes the core
interaction point, allowing users to articulate medical inquiries
through a conversational interface with the AI chatbot.

• Users also have the capability to upload MRI and CT images for
analysis, with the image upload process designed to be intuitive,
enabling users to capture or select images from their devices easily.
The chatbot, powered by AI, promptly responds to user queries,
providing accurate information based on the symptoms described
and the medical images uploaded.
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 8

• The diagnostic information offered by the chatbot is clear and


comprehensible, leveraging the user-provided symptoms and
medical images. Users receive insights into potential medical
conditions along with recommendations for further actions,
whether it be scheduling a doctor's visit or undergoing additional
medical tests.

• To enhance user engagement and support continuity of care, the


application incorporates a history tracking feature. This feature
chronicles past interactions, recording dates, uploaded images, and
user descriptions. Users can conveniently review their previous
conversations and diagnoses, fostering a sense of empowerment
and continuity in managing their health.

• Recognizing the importance of context, users have the option to


provide additional descriptions or notes related to their symptoms
or uploaded images. This feature allows users to contribute
valuable context that may assist in refining the accuracy of the
diagnosis.
• In summary, this self-diagnosis system not only addresses the
fundamental aspects of user registration, authentication, and
intuitive interface but also places a significant emphasis on user
engagement, historical tracking, and contextual input. It aims to
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 9

empower users in managing their health by providing a


comprehensive and user-centric platform for self-diagnosis.

2.3 Functional Requirements


Code Requirements statement Must /Want comments
FR01 Sign Up:
Users can create a new account by providing essential
information such as name, email, password, and additional
profile details. Must NA
The system verifies user information and ensures that the
account is unique and secure.
FR02 Sign In:
Registered users can log in securely using their email and
password. Must NA
The system verifies user credentials and grants access to the
app.
FR03 Sign In with Google and Firebase Auth:

Users have the option to sign in using their Google accounts. Must NA
Firebase Authentication ensures a secure and convenient sign-
in process.
FR04 Home Screen:

Upon successful sign-in, users are directed to the home screen. Must NA
The home screen serves as the central hub for various app
features and functions.
FR05 Chat Screen:

Users can engage in real-time conversations with the medical


chatbot.
The chatbot utilizes AI to respond to user queries and provide Must NA
medical guidance.
Users can ask questions, describe symptoms, and seek initial
advice on medical conditions.
FR06 Image Upload: Must NA

Users can upload MRI and CT images for analysis.


The system processes the uploaded images for potential
medical conditions.
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 10

Users receive diagnostic information and insights based on the


images provided.
FR07 Self-Diagnosis:

The chatbot uses AI algorithms to analyze user-provided


symptoms and uploaded medical images.
It offers preliminary self-diagnoses and suggestions for further Must NA
action.
Users can explore potential conditions and treatment options.

FR08 Medical History:

The app maintains a history feature, storing data related to user


interactions.
Users can view past conversations with the chatbot and review Must NA
previous self-diagnoses.
Uploaded images, dates, and descriptions are archived for
reference.
FR09 Image Description:

Users can provide descriptions or notes related to uploaded


MRI and CT images.
Descriptions help in understanding the context and specifics of Must NA
medical images.
Users can attach relevant information to the images for more
accurate analysis.
FR10 User Profile Management:

- Users can access and edit their profiles, including personal


details and preferences. Must NA
- Profile management allows users to update contact
information, language preferences, and notification settings.
FR11 Secure Data Handling:

- The app ensures the privacy and security of user data,


especially when handling sensitive medical information. Must NA
- Data is encrypted and stored securely to protect user
confidentiality.
App Updates
FR12 Light (White) Mode Toggle Must NA

The application should provide a toggle switch within the user


Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 11

profile settings that allows users to enable or disable light


(white) mode.
When enabled, the application's user interface should switch to
the light (white) mode appearance.

FR13 The page must contains audio reader whereby the user can
Want NA
select any text and an option will display to read selected text

2.4 Non-functional Requirements


Code Requirements statement Must comments
/Want
Performance Requirements
NFR01 Response time: all software must respond to a user’s action under a
Must NA
certain workload within 4 seconds
NFR02 in App: When performing any task system mustn’t take more than
five steps. Must NA

Security Requirements
NFR03
Software must send different configuration code for Phone Must NA
configuration every time
NFR04
software must validate all user input to ensure it does not exceed Must NA
the size specified for that type of input
NFR05
The software must remain resilient in the face of attacks. Must NA
NFR06
The behavior of the software must be correct and predictable Must NA
NFR07 The software must be available and behave reliably even under
Must NA
DOS attacks
NFR08 The software must ensure the integrity of the customer account
Must NA
information.
NFR09 The system must encrypt sensitive data transmitted over the Must NA
Internet between the server and the app

Other Requirements
NFR10 Usability: Must NA
-The application should be easy to use for a wide range of users.
-The light (white) and dark mode toggles should be intuitively
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 12

placed and labeled within the user profile settings.


-The system shall be easy to use by members of the public who
might not read English
NFR11
Availability: The system should be available 24/7. Must NA

NFR12 Scalability: The system should be able to handle a growing user Must NA
base.
NFR13 Performance: The system should respond to user queries and Must NA
image uploads quickly.
NFR14
Security: Ensure the privacy and security of user data. Must NA
NFR15 Accuracy: The AI system must provide accurate diagnoses and
Must NA
medical information.
NFR16
The product uses a lot of animation Must NA
NFR17
The product be attractive to an older audience Must NA
NFR18
The product shall conserve battery life Must NA

2.5 Hardware Requirements:


• Server Infrastructure: The system necessitates robust server
infrastructure effectively manage user data, facilitate chat
interactions, and process medical images. This involves ensuring
sufficient server capacity to handle varying loads seamlessly.
Additionally, the servers should possess ample CPU and memory
resources to support the intricate AI algorithms responsible for self-
diagnosis and medical image analysis.

• Storage Space: Adequate storage space is paramount for


storing diverse datasets, including user profiles, medical histories,
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 13

uploaded images, and related descriptions. The system must have


the capability to accommodate a growing database of user data
and evolving medical content, ensuring efficient data management.

• User Devices: The application should be compatible with an


array of user devices, primarily focusing on smartphones. It is
essential to ensure that the system supports various screen sizes
and resolutions, providing a responsive and user-friendly interface. This
adaptability guarantees a seamless user experience across different devices,
enhancing accessibility and usability.

2.6 Software Requirements:

• Operating System Compatibility: The application should be


compatible with multiple operating systems, specifically targeting
Android and iOS. This ensures a broad user reach, meeting the
preferences of both major mobile platforms.

• Development Environment: Utilization of appropriate


programming languages and tools is crucial for seamless app
development. Employing a cross-platform framework, such as
Flutter, enhances efficiency by enabling simultaneous
development for both Android and iOS. Integration with Firebase
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 14

for user authentication streamlines the sign-in process, ensuring


secure and convenient access.

• AI and NLP Libraries: The application should integrate AI


and natural language processing (NLP) libraries or services
to empower the chatbot functionality. This involves
implementing AI algorithms for symptom analysis and
accurate interpretation of medical images, contributing to
the overall intelligence of the system.

• Database Management: Incorporating a robust database


management system is essential for storing and managing crucial
data elements. This includes user profiles, medical history, and
chat interactions. Data encryption measures must be
implemented to safeguard sensitive medical information, ensuring
compliance with privacy and security standards.

• Image Processing Tools: To facilitate the analysis of MRI and


CT scans, the application should integrate image processing
libraries or frameworks. These tools play a pivotal role in
extracting and analyzing image metadata, contributing to the
accurate interpretation of medical images. This ensures a
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 15

comprehensive understanding of users' medical conditions


based on uploaded images.

3. Key Points:

• Addressing a Critical Need: The project responds to the


pressing need for accessible and reliable medical resources in
the Arabic language, recognizing the significance of delivering
precise medical guidance to Arabic speaking individuals.

• User-Centric Approach: The application prioritizes user-


friendly features, including self-diagnosis, chat interactions,
and medical image uploads, tailored to meet the specific needs
of the target audience.

• Bridge Language Barriers: Overcoming language barriers,


the application is designed to provide services primarily in
Arabic, with optional support for English, ensuring inclusivity
and accessibility for a diverse user base.

• Enhancing Healthcare Outcomes: At its core, the project


aims to empower individuals, foster informed healthcare
decisions, and improve the early detection and diagnosis of
brain diseases. This commitment translates into a tangible
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 16

contribution to better overall healthcare outcomes.


• Security and Privacy: The application places a high priority
on
the security and privacy of user data. It adheres strictly to
industry standards and regulations, particularly when handling
sensitive medical information—an indispensable aspect of the
project.

• User Engagement: With features like real-time chat, voice


interaction, and image upload, the application enhances user
engagement. These functionalities contribute to a more
interactive and personalized user experience.

• Historical Record: To promote continuity of care, the


application maintains a comprehensive history of user
interactions, encompassing uploaded images and descriptions.
This feature ensures users can readily review past
conversations and diagnostic results.

• Scalability and Compatibility: Both hardware and software


requirements are meticulously designed to support scalability
and compatibility with a diverse array of user devices and
operating systems. This strategic approach guarantees.
Software Requirements Specification for A Self-Diagnosis Medical Chatbot Using AI Page 17

widespread accessibility and optimal performance.

You might also like