Untitled Document
Untitled Document
0
Table of Contents
Figures....................................................................................................................................................................
LIST OF ABBREVIATION.......................................................................................................................................
Abstract......................................................................................................................................................................................
CHAPTER 1 : INTRODUCTION..........................................................................................................................................
1.1 Introduction to Project....................................................................................................................................................
1.2 Objective of the project :................................................................................................................................................
1.3 Problem Statement.........................................................................................................................................................
1.4 Scope & Limitation........................................................................................................................................................
1.4.1 Scope.....................................................................................................................................................................
Limitations:....................................................................................................................................................................
CHAPTER 2: Requirement Analysis......................................................................................................................................
2.1 Identifying Requirements...............................................................................................................................................
2.1.1 Functional Requirement........................................................................................................................................
2.2 Feasibility Analysis........................................................................................................................................................
2.2.1 Technical Feasibility.............................................................................................................................................
2..2.2 Operational Feasibility.........................................................................................................................................
2.2.3 Economic Feasibility.............................................................................................................................................
2.2.4 Legal and Ethical Feasibility.................................................................................................................................
Chapter 3: System Design........................................................................................................................................................
3.1 ER Diagram....................................................................................................................................................................
3.2 DFD Diagram................................................................................................................................................................
3.2.1 Context Diagram...................................................................................................................................................
3.2.2 Level 1 DFD.........................................................................................................................................................
3.2.3 Level 2 DFD..........................................................................................................................................................
3.3 Sequence Diagram..........................................................................................................................................................
3.4 Activity Diagram............................................................................................................................................................
Chapter 4 : Implementation & Testing...................................................................................................................................
4.1 Tools Used :.................................................................................................................................................
Mood Tracking...............................................................................................................................................................
Pill Reminder..................................................................................................................................................................
1
Emergency Hotline.........................................................................................................................................................
Doctor Directory.............................................................................................................................................................
Data Management...........................................................................................................................................................
Notification System........................................................................................................................................................
Types of Testing.............................................................................................................................................................
Chapter 5 : Conclusion.............................................................................................................................................................
Conclusion...................................................................................................................................................
Lessons Learned..........................................................................................................................................
Final Thoughts..............................................................................................................................................................
References :................................................................................................................................................................................
Figures
Figure 1: Use Case Diagram of Mental Health Assistance App...............................................................
Figure 2 : ER Diagram for Mental Health Assistance App.....................................................................
Figure 3 : Context Diagram for Mental Health Assistance App..............................................................
Figure 4 : Level 1 DFD Diagram for Mental Health Assistance App....................................................
Figure 5 : Level 2 DFD Diagram for Mental Health Assistance App....................................................
Figure 6 : Class Diagram for Mental Health Assistance App.................................................................
Figure 7 : Sequence Diagram for Mental Health Assistance App...........................................................
Figure 8 : Activity Diagram for Mental Health Assistance App..............................................................
Figure 9: Login Screen of Mental Health Assistance App.......................................................................
Figure 10 : Mood Assessment Screen of Mental Health Assistance App................................................
Figure 11 : CBT form of Mental Health Assistance App.........................................................................
Figure 12: Anxiety and Depression Quiz Screens of Mental Health Assistance App..............................
Figure 13: Pill Reminder of Mental health Assistance App.....................................................................
Figure 14: Emergency Hotline Screen......................................................................................................
Figure 15 : Doctor Directory Screen.......................................................................................................
2
LIST OF ABBREVIATION
AUTH -Authentication
Async- Asynchronous
BIM Bachelor of Information Management
CRUD- Create Read Update and Delete
JSON- JavaScript Object Notation
MVC - Model View Controller
MVVM - Model-View-ViewModel
STLESS- Stateless
STFUL- Stateful
UI - User Interface
UX - User Experience
3
Abstract
This project presents the development of a comprehensive mental health app designed to support
users in managing and improving their mental well-being. The app integrates a range of features,
including user authentication, mood tracking, mental health assessments, pill reminders,
emergency hotlines, and a directory of mental health professionals. The primary objective is to
provide users with a holistic tool that aids in tracking emotional states, accessing mental health
resources, and maintaining medication adherence.
The app's core functionalities include secure user registration and profile management, intuitive
mood logging with visual analytics, and interactive mental health assessments, such as quizzes
and Cognitive Behavioral Therapy (CBT) forms. The pill reminder system ensures users receive
timely notifications to adhere to their medication schedules, while the emergency hotline feature
offers immediate access to crisis support. Additionally, the app provides a searchable directory
of mental health professionals to facilitate user access to professional help.
The development process involved rigorous functional, usability, performance, and security
testing to ensure a reliable and user-friendly experience. Challenges such as performance
optimization, integration issues, and maintaining data privacy were addressed through iterative
design improvements and continuous testing. The project highlights the importance of user
feedback, performance scalability, and robust security measures in creating an effective mental
health management tool.
Overall, the mental health app demonstrates a successful integration of multiple functionalities
aimed at enhancing user support and engagement, with key lessons learned informing future
enhancements and developments
4
CHAPTER 1 :
INTRODUCTION
1.1 Introduction to Project
In today's fast-paced world, mental health has become a critical aspect of overall well-being.
Recognizing this need, the development of a mental health app aims to provide users with tools
and resources to effectively manage and enhance their mental health. Such an app is designed to
offer support by delivering features that facilitate self-assessment, mood tracking, and access to
educational resources. By leveraging digital technology, the app aspires to bridge gaps in
traditional mental health support and make mental health management more accessible and user-
friendly.The mental health app incorporates several key features designed to support users in
their mental health journey. Firstly, the mood tracking feature allows users to log their emotions
and mood on a regular basis. This feature is instrumental in identifying patterns and triggers that
may affect a user's mental state. The app also includes self-assessment tools such as
questionnaires and quizzes, which help users gauge their mental health status.Pill Reminder
feature ensures users remember to take prescribed medications, helping them adhere to treatment
plans.Users can input their medication schedule (e.g., pill name, dosage, time to take it), and the
app will send reminders via notification The app logs each instance of medication taken for
tracking purposes.The app contains a directory of mental health professionals like therapists and
psychiatrists that users can browse through. Each doctor profile may include contact information,
specialties, and appointment availability.
These assessments provide valuable insights and suggest actionable steps based on the results.
Cognitive Behavioral Therapy (CBT) techniques are incorporated to help users address negative
thought patterns and develop effective coping strategies. Furthermore, the app supports
journaling and reflection, allowing users to document their thoughts and feelings, which aids in
self-reflection and emotional expression. For those in immediate need of support, the app
provides emergency resources, including helplines and crisis support information, ensuring users
have access to help when needed.Lastly, the app fosters a sense of community by providing
1
forums or social features where users can connect with others facing similar challenges,
promoting peer support and shared experiences.
The design of the mental health app focuses on creating an intuitive and accessible user interface
(UI). The user interface is crafted to be simple and easy to navigate, ensuring that users can
access and utilize the app's features with minimal effort. The user experience (UX) is enhanced
through thoughtful design choices that prioritize user engagement and satisfaction. Features such
as customizable settings and responsive design elements contribute to a positive user experience,
making the app both effective and enjoyable to use.
From a technical perspective, the mental health app is built using a robust technology stack,
including frameworks such as Flutter for cross-platform development and Firebase for backend
services. The app's database management system, SQLite, is utilized for storing user data
securely and efficiently. The app’s architecture supports seamless integration of various features,
ensuring smooth functionality and performance. By leveraging modern technologies and best
practices, the app aims to deliver a reliable and user-centric solution for mental health
management.
2
engagement and supports mental well-being with data-driven insights and personalized
suggestions.
3
set pill reminders for their medications and access an emergency hotline for immediate help.The
app's list of doctors can serve as a referral system, helping patients find the right professionals.
The pill reminder system ensures patients maintain their treatment plans.The app encourages
users to actively engage with their mental health through regular tracking of mood and emotions,
offering insight into their mental well-being.Users are empowered to identify stressors, monitor
anxiety levels, and practice CBT-based strategies independently.
This App can also be used by doctors to assist them into carefully observing their patient’s
condition and to accurately diagnose them based on the input data.he app acts as a supplement to
clinical treatment, helping therapists and psychiatrists track patient progress and adjust treatment
plans based on the data provided through mood and anxiety assessments.Mental health
professionals can rely on this app to keep up-to-date records of their patient's emotional and
cognitive changes, ensuring a more tailored treatment.
Caregivers can use the app to keep track of their loved ones' mental health conditions or ensure
medication adherence.With features like pill reminders and emergency hotlines, caregivers can
ensure that their loved ones are following their prescribed treatments and get immediate help if
needed.
The app integrates pill reminders to assist users in managing medication adherence for mental
health-related prescriptions. It Ensures users take their medication on time, further supporting
medical treatments.
Limitations:
Lack of Professional Intervention: While the app provides tools for self-assessment and
tracking, it does not replace professional medical advice, diagnosis, or treatment. Users still need
to consult professionals for any serious mental health concerns.
User Dependency: The app relies heavily on users consistently inputting their data (moods,
thoughts, etc.), which can be difficult for those struggling with mental health issues. Inconsistent
data entry may lead to less accurate assessments.
Limited Scope of Therapy: The app focuses on CBT techniques, which may not be sufficient
for users who require different therapeutic approaches, such as those dealing with more complex
conditions.
4
Privacy and Data Security: As the app collects sensitive data, ensuring user privacy and
securing data from breaches is a constant challenge. Any potential vulnerability could impact
users' trust and willingness to use the app.
Limited Offline Functionality: Some features of the app, such as accessing doctors or hotlines,
may require internet connectivity, limiting its use in offline situations.
5
CHAPTER 2: Requirement Analysis
2.1 Identifying Requirements
The requirement analysis outlines the essential features, functionality, and specifications needed
to develop the mental health app.
6
Figure 1: Use Case Diagram of Mental Health Assistance App
User Management:
● User Registration: Users should be able to create an account using their email and a
password.
● Login/Logout: Users can securely log in and log out of their accounts.
● Password Reset: Users can reset their password through email in case they forget it.
● User Authentication: Ensure the user's identity using Firebase or similar authentication
methods.
Mood Assessment:
● Mood Tracker: Users should be able to log their emotions daily (e.g., happy, sad,
anxious).
● Mood History: Display historical data of moods through graphs or lists for trend
analysis.
● Mood Scale: Allow users to rate their mood on a scale (1-10) to quantify their emotions.
Pill Reminder
7
● Set Reminders: Users can input medications they are taking and schedule reminders for
specific times.
● Notifications: The app should send notifications when it's time for the user to take their
medication.
● Missed Dose Alerts: If the user misses a medication, the app should send a follow-up
alert.
Anxiety Quiz
● Quiz Functionality: The app should have an anxiety quiz with multiple-choice
questions.
● Quiz Results: Calculate and store the user's quiz scores, displaying the result
immediately.
● Personalized Feedback: Based on the quiz score, show tips or recommendations for
managing anxiety.
Pill Reminder
● Set Reminders: Users can input medications they are taking and schedule reminders for
specific times.
● Notifications: The app should send notifications when it's time for the user to take their
medication.
● Missed Dose Alerts: If the user misses a medication, the app should send a follow-up
alert.
Emergency Hotline
● Call Functionality: Include a one-touch emergency hotline feature for users in crisis to
call for help.
● Doctor List: Provide a list of mental health professionals and their contact information.
Data Storage and Management
● User-Specific Data: Store each user’s mood, form responses, quiz scores, and
medication schedule in a local SQLite database or remote database.
8
● Data Retrieval: Ensure users can retrieve and view their past records in an organized
format (e.g., charts for mood tracking).
Admin can Access and modify the Doctors Information to be displayed to the users.
Doctors can access and mood history and Form history to access the user inputted data
Technology Availability
The app was built using Flutter, a robust framework for cross-platform app development. The
required tools, such as Firebase for user authentication and SQLite for data storage, are widely
used and supported in mobile app development.
Development Skill
Given that the app includes standard features like user authentication, data storage, and
notifications, it is technically feasible with available resources. However, some advanced
functionality (such as mood tracking graphs or CBT form analysis) may require extra learning,
especially for someone at the beginner-to-intermediate level in Flutter development.
From a technical perspective, the project is feasible with available resources and tools, though
some features may need advanced skills or external libraries.
User Demand
9
There is a growing demand for mental health tools in the digital space. Users increasingly seek
apps that can help track mood, manage medication, and provide mental health resources. The
app’s mood tracker, CBT form, anxiety quiz, and emergency hotline offer practical features that
meet this demand.
User Experience
The user interface designed to be intuitive and easy to use, ensuring that users can navigate the
app seamlessly. Features like pill reminders and push notifications will enhance the user
experience, providing timely and helpful interventions.
Operationally, the app needs to include ongoing support for updates and bug fixes. Routine
updates to the app are necessary to ensure compatibility with new OS versions (iOS and
Android), user feedback, and potential feature expansion.
Operationally, the app is feasible and aligns with current trends in mental health support,
ensuring it can meet real-world demands and provide long-term value to users.
2.2.3 Economic Feasibility
Development Costs
The app will be developed using free or low-cost tools (such as Flutter, Firebase for
authentication, and SQLite for local storage). The primary cost factors include developer time
and any premium third-party services or libraries that may be necessary (e.g., for advanced
graphing or analytics).
Monetization
If the app is intended to be monetized, options could include in-app purchases, premium features
(such as advanced CBT tools or personalized mental health plans), or ad integration.
Sponsorships from mental health organizations or partnerships with healthcare providers could
also generate revenue.
Maintenance Costs
10
Long-term maintenance (such as updates and bug fixes) should be considered. Depending on the
complexity of the app and number of users, there may be ongoing costs related to server
infrastructure or additional data storage solutions if the app scales.
Data Privacy
Since the app deals with sensitive user information, such as mood tracking and mental health
data, it must comply with privacy laws Appropriate data encryption and user consent must be in
place for legal compliance.
Security
Implementing strong security measures, such as encryption for user data and secure
authentication protocols (using Firebase), is essential to protect user privacy and ensure the app
is secure from breaches or hacks.
Ethical Concerns
The app must consider the ethical implications of storing mental health data. Providing users
with disclaimers about the limitations of the app (i.e., it is not a substitute for professional
medical advice) is essential to manage user expectations.Legally and ethically, the app is
feasible, provided it implements data protection measures and complies with relevant privacy
regulations.
The mental health app is feasible across technical, operational, economic, and legal aspects. With
careful planning, proper use of technology, and attention to legal and ethical guidelines, the app
can be developed successfully and meet the needs of its intended users.
11
Chapter 3: System Design
3.1 ER Diagram
The ER Diagram for the mental health app illustrates the relationships between various entities
crucial to its functioning. The User entity, which stores user-specific information such as user_id,
email, and password, has a one-to-many relationship with multiple entities including
Moodtracker, CBT Form,, Pill Reminder, and Doctors. The Mood entity tracks the user’s
emotional state over time, including mood type, date, and a mood scale, while the CBT Form
captures cognitive-behavioral therapy sessions by recording thoughts, feelings, and actions. The
Similarly, the Pill Reminder entity manages users' medication schedules, ensuring they receive
timely reminders. The Doctors entity provides a list of healthcare professionals for consultation,
while the Emergency Contact entity offers immediate contact numbers for support during
emergencies. Together, these entities reflect the interconnected nature of the app’s core
functions, supporting users’ mental health needs.
12
Figure 2 : ER Diagram for Mental Health Assistance App
13
3.2 DFD Diagram
3.2.1 Context Diagram
14
Figure 4 : Level 1 DFD Diagram for Mental Health Assistance App
Key Components
1. External Entities:
○ Users: The primary actors who interact with the system.
○ Emergency Hotline: An external resource available to users in case of crisis.
2. Processes:
○ Set Pill Reminder: This process allows users to set reminders for medication.
○ Fill CBT Form: Users can complete CBT forms to track their progress and receive
guidance.
○ Assess Mood: Users can input data about their mood to track changes and identify
patterns.
3. Data Stores:
○ Mood Data: Stores data related to user mood assessments.
15
○ CBT Form Data: Stores data collected from CBT forms.
○ Reminder Data: Stores information about set reminders.
4. Data Flows:
○ The diagram shows the flow of data between the components. For example, user
data flows into the "Assess Mood" process and is stored in "Mood Data."
Users interact with the system to set reminders, complete CBT forms, and track their mood.
Data is collected and stored for analysis and tracking.
The system provides access to an emergency hotline for crisis situations.
3.2.3 Level 2 DFD
16
Figure 5 : Level 2 DFD Diagram for Mental Health Assistance App
Key Components:
1. Process:
○ Set Medication Schedule: This process is further decomposed into the following
sub-processes:
■ Enter Details of Medication: Users input information about the
medication, such as name, dosage,and frequency.
■ Check Medication Time: The system verifies the specified time for taking
the medication.
■ Notify on Time: The system sends a notification to the user at the
scheduled time.
2. Data Stores:
○ Medication Schedule: Stores information about the set medication schedules,
including medication details and times.
○ Medication Detail: Stores specific details about the medication, such as name,
dosage, and frequency.
3. Data Flows:
○ User data, including medication details, flows from the "User" to the "Enter
Details of Medication" process.
○ The processed medication data is stored in the "Medication Schedule" and
"Medication Detail" data stores.
○ The system checks the "Medication Schedule" for the current time and triggers
the "Notify on Time" process if a notification is due.
Interpretation
The DFD Level 2 provides a more detailed view of the "Set Medication Schedule" process. It
shows how the process is broken down into smaller steps, and how data is collected, stored, and
used to trigger notifications.
17
3.2ClassDiagram
The class diagram presented outlines a system designed to assist individuals in managing their
mental health, particularly anxiety. The system incorporates entities representing users, anxiety
18
quizzes, Cognitive Behavioral Therapy (CBT) forms,mood tracking, and medication
reminders ,engage in CBT exercises, document their mood, and establish medication reminders.
The system is likely to provide valuable resources for individuals striving to manage their
anxiety and enhance their overall mental well-being. Potential enhancements encompass
integrating with other health data, offering personalized recommendations, and incorporating
community features to foster support and connection.
The system's structure suggests that it can effectively support users in tracking their progress,
identifying patterns in their anxiety levels, and implementing strategies to manage their
symptoms. By integrating with other health data, the system could offer a more comprehensive
view of a user's well-being, potentially leading to more targeted recommendations.Personalized
recommendations, based on individual user data, could provide tailored guidance and support.
Additionally,community features could create a sense of belonging and connection, allowing
users to share experiences and learn from others.
Overall, the class diagram outlines a promising system for mental health management, with
potential for further development and enhancement to better meet the needs of individuals
seeking to improve their mental health.
19
3.3 Sequence Diagram
The provided sequence diagram depicts the interactions between a user, a system, and a database
in a mental health management application. It outlines the flow of events when a user interacts
with various features of the system, such as entering mood details, filling out forms, taking
quizzes, and setting reminders.
Key Interactions
20
1. Login:
○ The user dispatches a request to enter their email and password.
○ The system verifies the provided credentials against the database.
○ If successful, the user is moved to the dashboard.
2. Mood Tracking:
○ The user enters mood details, which are then stored in the database.
○ The system can retrieve and analyze this data to provide mood trend charts.
3. Form Submission:
○ The user enters details into a form, which are then stored in the database.
4. Quiz Completion:
○ The user fills out quiz answers.
○ The system submits the answers to the database and retrieves the quiz score.
5. Reminder Setting:
○ The user sets a reminder.
○ The reminder details are stored in the database.
6. Notification:
○ The system notifies users based on the set reminders.
Observations
● The sequence diagram clearly illustrates the interactions between the user, system, and
database.
● It shows the flow of data and the actions taken by each component.
● The diagram is well-structured and easy to follow.
21
3.4 Activity Diagram
22
1. Registration/Login:
○ The user can either register for a new account or login using existing credentials.
○ If the login credentials are incorrect, the user is redirected to the login page.
2. Dashboard:
○ Once logged in, the user is directed to the dashboard.
3. Mood Assessment:
○ Users can assess their mood by entering relevant details.
○ The entered data is recorded for analysis.
4. CBT Form:
○ Users can fill out a CBT form to track their progress and receive guidance.
○ Completed forms are recorded for analysis.
5. Anxiety Quiz:
○ Users can take an anxiety quiz to assess their anxiety levels.
○ Quiz results are recorded and displayed to the user.
6. Pill Reminder:
○ Users can set reminders for taking medication.
○ Reminder details are stored, and notifications are triggered at the specified time.
7. Logout:
○ Users can log out of the system.
23
Flutter:
● Purpose: A cross-platform UI framework that allows you to build native-like apps for
both iOS and Android from a single codebase.
● Flutter is used to create the Mental Health UI , to implement its seamless polished UI and
easy to work code , as well as integration with sqlite database
Firebase:
● Purpose: A backend-as-a-service platform that provides features like authentication, real-
time database, cloud storage, and analytics.
● In conjunction with Flutter, Firebase was used to handle user authentication.
SQLite:
● Purpose: A lightweight, embedded SQL database that's ideal for storing data locally on a
device.
● In conjunction with Flutter , Sqlite was used to store data entered by the user
Draw.io:
● Purpose: A web-based diagramming tool that allows you to create flowcharts, diagrams,
and other visual representations.
● Used to create all the diagrams in the report
24
Figure 9: Login Screen of Mental Health Assistance App
Manages user registration, login, and profile management. This module ensures secure access to
the app and personal data.
Functions:
○ User Registration
○ User Login/Logout
○ Password Recovery
○ Profile Update
Services:
○ Authentication Service (handles login and registration)
○ Profile Service (manages user profile data)
Mood Tracking
25
Figure 10 : Mood Assessment Screen of Mental Health Assistance App
26
Allows users to log their mood and emotions daily. Provides visual representations of mood
trends over time.
● Functions:
○ Record Mood and Emotions
○ View Mood History
○ Display Mood Trends (e.g., charts, graphs)
● Services:
○ Mood Logging Service (handles data entry and storage)
○ Mood Analytics Service (generates reports and visualizations)
Mental Health Assessments
27
Figure 12: Anxiety and Depression Quiz Screens of Mental Health Assistance App
Offers quizzes and assessments to evaluate users' mental health status.
● Functions:
○ Anxiety and Depression Quizzes
○ Cognitive Behavioral Therapy (CBT) Forms
○ Result Analysis and Feedback
● Services:
○ Assessment Service (delivers quizzes and CBT forms)
○ Result Processing Service (analyzes responses and generates feedback)
Pill Reminder
28
Figure 13: Pill Reminder of Mental health Assistance App
Reminds users to take their medication as prescribed.
● Functions:
○ Set Medication Reminders
○ Track Medication Adherence
○ Notification Management
● Services:
○ Reminder Service (schedules and sends notifications)
○ Adherence Tracking Service (monitors reminder responses)
Emergency Hotline
29
Figure 14: Emergency Hotline Screen
Description: Provides users with access to emergency contact information for mental health
crises.
Functions:
○ Display Emergency Hotlines
○ Access Local Mental Health Services
Services:
○ Hotline Service (provides contact information)
Doctor Directory
30
Figure 15 : Doctor Directory Screen
Description: Lists available mental health professionals and their contact details.
● Functions:
○ Search for Doctors
○ View Doctor Profiles
○ Contact Doctor Information
● Services:
○ Doctor Directory Service (manages and displays doctor information)
○ Search Service (filters and finds doctors based on user criteria)
Data Management
Handles storage and retrieval of user data securely.
● Functions:
○ Data Storage
○ Data Retrieval
○ Data Security
31
● Services:
○ Database Service (manages SQLite or other databases)
○ Security Service (ensures data protection and privacy)
Notification System
Description: Manages in-app and push notifications to keep users engaged and informed.
● Functions:
○ Send In-App Notifications
○ Schedule Push Notifications
○ Manage Notification Settings
● Services:
○ Notification Service (handles sending and scheduling notifications)
○ Settings Service (manages user preferences for notifications)
32
● Objective: Ensure the app is user-friendly and intuitive.
● Tests:
○ Interface Design: Test the app’s design for ease of navigation and readability.
○ User Interaction: Observe users interacting with the app to identify usability
issues.
Performance Testing
● Objective: Ensure the app performs well under various conditions.
● Tests:
○ Load Testing: Simulate multiple users accessing the app simultaneously to check
its performance.
○ Stress Testing: Push the app beyond normal operational capacity to identify
breaking points.
○ Response Time: Measure the time taken for the app to respond to user inputs.
Security Testing
● Objective: Ensure that user data and app operations are secure.
● Tests:
○ Authentication: it helped in testing the robustness of login and registration
processes against unauthorized access.
○ Data Protection: Verified that user data was encrypted and securely stored.
○ Vulnerability Scanning: Identification and addressing of potential security
vulnerabilities.
Compatibility Testing
● Objective: Ensure the app works across different devices and operating systems.
● Tests:
○ Device Compatibility: Tested the app on various devices (phones, tablets) with
different screen sizes.
○ OS Compatibility: Verified the app’s functionality on different operating
systems (iOS, Android).
Regression Testing
33
● Objective: Ensured that new changes did not adversely affect existing functionalities.
● Tests:
○ Feature Verification: Tested all existing features after making changes or
updates to the app.
Integration Testing
● Objective: Ensured that different modules and services work together seamlessly.
● Tests:
○ Module Interactions: Verify that data flows correctly between modules (e.g.,
mood tracking and analytics).
1 Check if the app allows "User rates"Happy"" as "The app stores the selected Passed
users to select and the mood. mood correctly in the database.
correctly stores the mood User rates ""Sad"" as the The mood data appears on the list
data entered mood." or graph with a timestamp. "
2 Check if the app handles User leaves one or more The app prompts the user with an Passed
incomplete or skipped quiz questions error or reminder message:
quiz answers properly by unanswered. "Please answer all questions
prompting the user to before submitting."
complete the quiz
3 Check if the app saves thought: " i keep having "The app saves the responses Passed
responses in the CBT scary dreams" correctly in the database. The
form correctly after Body Sensation : "Chills” form data is displayed in the
submission. Emotion: "Scared" Entries "
Scale: 5
4 Test if the user can set a Medication Name : Flunil The reminder is set correctly with Passed
reminder for taking Medicine Dose: 20 mg the medication, dosage, and
medication. Medicine Type : Pill time.A notification is triggered at
Time: 12:30 the set time and it is again
Interval : 8 hours triggered at 8 hour intervals
5 Test if the app allows Emergency Hotline "The app shows the emergency Passed
34
users to directly call the number: "911" hotline number as a clickable link
emergency hotline. or button. Upon clicking, the
number should be dialed directly
from the phone's dialer."
6 Test if the app handles "Username: ""testuser"" "The app shows an error Passed
invalid login attempts Password: message: ""Invalid username or
correctly. ""wrongpassword""" password."" The user is not
logged in and cannot access the
app’s features."
Chapter 5 : Conclusion
Conclusion
● User Authentication and Management: Successfully implemented secure registration,
login, and profile management features. Users can now easily access their accounts and
manage personal information.
● Mood Tracking: Enabled users to log their mood and emotions, view historical data, and
analyze trends through visualizations. This feature has been well-received for its intuitive
design and usefulness.
● Mental Health Assessments: Developed and integrated quizzes and CBT forms to
assess users' mental health. Results are processed to provide personalized feedback,
which has enhanced user engagement.
● Pill Reminder: Implemented a reliable reminder system for medication adherence, with
notifications and tracking features functioning as intended.
● Emergency Hotline: Provided users with easy access to emergency contacts and local
mental health resources, ensuring they have immediate support in crisis situations.
● Doctor Directory: Created a searchable directory of mental health professionals,
allowing users to find and contact doctors effectively.
35
● Data Management: Established robust data storage and retrieval systems, ensuring data
security and privacy.
● Notification System: Implemented in-app and push notifications to keep users informed
and engaged.
● Feedback and Support: Set up mechanisms for users to provide feedback and seek
support, contributing to continuous improvement.
Objectives Not Fully Met
● Performance Optimization: Some performance issues were observed under high load
conditions. Although basic performance tests were conducted, further optimization may
be required to handle larger user volumes.
● Integration Testing: While most integrations were successful, some minor issues were
detected in the interaction between modules, particularly with data synchronization.
Additional testing and adjustments may be necessary.
Struggles and Challenges
Technical Challenges
● Complex Interactions: Integrating various features, such as mood tracking with
analytics and assessments, posed challenges in ensuring smooth data flow and accurate
results.
● Performance Issues: Handling performance optimization for a high number of
concurrent users proved challenging, requiring additional tuning and optimization.
Usability Concerns
● User Feedback: Initial user feedback indicated some difficulties with navigation and
interface design. Iterative improvements were made based on this feedback, but ensuring
a universally intuitive design remains an ongoing process.
Security and Data Privacy
● Ensuring Compliance: Implementing robust security measures while ensuring
compliance with data privacy regulations (e.g., GDPR) was a significant challenge.
Continuous monitoring and updates were needed to address potential vulnerabilities.
Lessons Learned
Importance of Thorough Testing
36
● Comprehensive Testing: Rigorous and comprehensive testing, including functional,
usability, performance, and security testing, is crucial for delivering a reliable and user-
friendly app.
● Early Testing: Early and frequent testing helps identify and address issues sooner,
reducing the risk of major problems later in the development process.
User Feedback Integration
● Iterative Design: Incorporating user feedback early and iteratively improves the user
experience and helps address usability issues effectively.
● User-Centric Design: Prioritizing user needs and preferences in the design process leads
to higher user satisfaction and engagement.
Performance and Scalability
● Optimizing Performance: Continuous performance optimization is essential for
handling increased user load and ensuring smooth operation.
● Scalability Planning: Designing with scalability in mind from the beginning helps
accommodate future growth and demand.
Security and Privacy
● Ongoing Vigilance: Security and data privacy should be continuously monitored and
updated to protect user information and comply with regulations.
● User Trust: Maintaining high standards of security and privacy is vital for building and
retaining user trust.
Integration and Coordination
● Module Integration: Ensuring seamless integration between different modules and
services requires careful planning and coordination.
● Continuous Improvement: Regularly reviewing and refining integration points helps
address issues and improve overall system functionality.
Final Thoughts
The mental health app project has made significant strides in providing valuable features and
services to users. Despite facing challenges, the project has met many of its objectives and
provided meaningful insights for future improvements. By addressing the struggles and applying
37
the lessons learned, future projects can benefit from enhanced planning, execution, and user-
centered design.
References :
Add a user authentication flow to a Flutter app using FirebaseUI. (n.d.). Firebase.
https://firebase.google.com/codelabs/firebase-auth-in-flutter-apps#4
Build a form with validation. (n.d.). Flutter.
https://docs.flutter.dev/cookbook/forms/validation
Aderibigbe, J. (2023, February 19). Using Awesome Notifications with Flutter - Jesutoni
Aderibigbe-Medium.Medium.https://aderibigbejesutoni860.medium.com/using-awesome-
notifications-with-flutter-1d2b25514f1
Marimuthu, K., Panneerselvam, A., Selvaraj, S., Venkatesan, L. P., & Sivaganesan, V.
(2023). Android based college app using Flutter Dart. Green Intelligent Systems and
Applications, 3(2), 69–85. https://doi.org/10.53623/gisa.v3i2.269
Bailey, T., & Biessek, A. (2021). Flutter for beginners: An introductory guide to
building cross-platform mobile applications with Flutter 2.5 and Dart. Packt Publishing
Ltd.
Lohia, H. (2021a, December 27). Flutter Registration & login using Firebase. - Code for
Cause - Medium.https://medium.com/code-for-cause/flutter-registration-login-using-
firebase-5ada3f14c066
Ranjan, H. (2021, December 15). Develop a Mood Diary Flutter app in just 2 hours. -
Flutter Community-Medium.Medium.https://medium.com/flutter-community/develop-a-
mood-diary-flutter-app-in-2-hours-ca54f8bf6703
38
39