Designing and developing a heart abnormality detection and emergency medical response system for senior citizens
Conceptual model of the KardiaCare system
September 2017 - March 2018,
September - December 2020
(total 12 months)
Dyuti Dave, Suman Daryani
Faqia Iqbal, Katra Farah, Kim Correa, Rubia Guerra
Adobe Illustrator, Procreate, Balsamiq, Adobe XD, Arduino, Java
User Interviews, Persona Building, Sketching, Prototyping, Affinity Diagramming, Usability Testing, Requirement Gathering, Software Development
This project was my undergraduate thesis at the University of Mumbai, India, where we did the major software design and development part of the project. The design was later iterated upon as a graduate course project at the University of British Columbia (UBC), Canada.
We designed and developed a heart abnormality detection and medical response system, using user-centered design principles. The system is comprised of a wearable sensor coupled with a mobile application that can detect abnormalities in heart rhythms and inform emergency contacts as well as request emergency medical help from the nearest hospital.
As the project lead during my undergraduate study, I led the design and software development of the project, including the development of our algorithm for anomaly detection. During the graduate course, I conducted and analyzed user interviews, and walkthroughs, and co-created the low and medium fidelity prototypes.
So, what was the problem?
For senior citizens globally, cardiovascular diseases are a leading cause of death, more so due to lack of timely help - the first hour post the occurrence of a cardiovascular event is crucial for the administration of medical intervention, which gives us a very small window to prevent lasting cardiovascular damage or death. Delays in the same (especially in India due to lack of available medical resources) are common, more so if the adults live alone, leading to avoidable loss of lives.
Existing emergency applications often rely on user intervention to request for help - the click of a button, tap on the screen, or a form of voice commands. However, in the case of a medical emergency like a heart attack, users may be incapacitated to an extent of not being able to request for help. Thus, there is a need of removing the dependency on the user, using software that can make reliable and accurate decisions.
Who was our target demographic?
Since cardiovascular diseases are most prevalent in those above 45 years of age, we limited our target demographic to older adults. However, we further found that those above the age of 60 are most likely to be living alone, and amongst those suffering from cardiovascular diseases, women have historically had higher chances of their symptoms being misdiagnosed. Hence, we chose to further limit our target demographic to women above the age of 60 years, to ensure we could create an accurate diagnostic tool.
What was our plan?
Initiated as an undergraduate thesis project, the idea for KardiaCare came to me from personal experience - my grandmother (aged 88 in 2018) lived alone independently ~400km away from us, and with a history of heart disease in the family, we were constantly worried about the lack of monitoring or assistance available.
As a Computer Engineering student, when we were asked to come up with novel thesis project ideas, this was one that sprang to the forefront in my mind, and my teammates were onboard instantly, also personally motivated by their own similar circumstances.
The design of this project is divided into two parts - one done as a part of my undergraduate thesis, the other as a course project for CPSC 544 (Human Computer Interaction) at UBC.
Design of the app:
As a part of my thesis - our goal was to create a working prototype of our proposed system and hence the time and effort spent on the design of the application were reduced, with a major focus on software development.
Our main design effort at this stage was the design of the system - we reviewed existing applications to find biosensing technology that could fit our requirements, narrowing down on the SparkFun MAX30105 Pulse Oximetry sensor which was lightweight and accurate for our purposes. We coupled that with an Arduino Uno for the prototype, since the Uno could later be replaced with the Adafruit Flora, a wearable version of the microcontroller. For the mobile application, we designed an Android application, with the basic features we needed - a display and setting up screen.
Design of the app:
Initial design of the KardiaCare phone application - the login screen, emergency contact setting up screen, user vitals display screen, and locating nearest hospital screen (from left to right)
Development of the system:
We then moved on to developing the application and algorithm for heart rhythm abnormality detection in Java. The code can be found here: https://github.com/unmadesai/KardiaCare
Through a 4-month coding process, we developed an algorithm to track the user’s heart rate and blood oxygen saturation level at fixed intervals (two indicators that in combination can be used to predict a heart attack), and in the case of an anomaly, alerts emergency contacts with the user’s location. The algorithm also locates the nearest hospital to request ambulance services through text message. If the nearest hospital does not respond within a 5-minute window the algorithm moves on to the next nearest hospital and so on, until it receives confirmation of arriving help. It then also sends the info of the hospital to the emergency contacts, ensuring they are aware of the patient’s location at all times.
The KardiaCare algorithm to monitor and detect heart rhythm abnormalities
As a part of the graduate course at UBC, we decided to focus on the user experience of the project, an aspect we were unable to devote sufficient time and effort to during my thesis.
To begin, we interviewed 4 people from our target demographic, to assess the design requirements to keep in mind for this population. We asked questions revolving around their familiarity with health tracking software and wearables, as well as their level of interest and preferences for our specific system. We also ran a questionnaire to reach a broader audience with the same questions, with 34 responses, 9 of them in the range of 56-65 years and 19 in the range of 45-55 years.
We analysed the interviews and questionnaire responses through affinity mapping, trying to find common themes and features users wanted:
A part of the affinity diagram we ended up with, showing various user preferences regarding the wearable
Some of the key findings:
Willingness to use: The majority of our interview and questionnaire respondents were willing to wear a device that tracks their heart health.
Comfort with and use of existing technology: While the majority of our respondents did not use any health tracking technology at the time, they were prepared to learn and adapt to a new one.
Preferred appearance of the wearable: Participants mentioned they would like it to be unobtrusive and lightweight, and preferably look like an accessory to blend into their daily lives.
In terms of features, interview participants mentioned they would like the wearable to
Be personalized to their heart rate
Have a long battery life
Use haptics and visual modalities for alerts instead of relying solely on the mobile application
We then went on to create a persona for our project, based on our findings:
The persona helped us keep the user at the center of the design, and refine our design requirements as well. Our persona was a 60-year-old woman in Mumbai, India, who was familiar with mobile applications but had not used any health tracking technology before, similar to our interview participants.
We also created a storyboard, visualizing a possible scenario where our system could be used, which would further help refine our requirements:
A 12-panel storyboard showing a scenario where our persona Anita suffers symptoms of a heart attack and is able to quickly receive help from her husband and medical assistance due to KardiaCare
We then went on to create a low-fidelity hand-drawn prototype of what the application and wearable screens would look like:
Phone screens showing the users vitals and the alert cancelled screen; Wearable screens showing the current vitals and alert screen
The full low-fidelity prototype can be seen here:
Cognitive Walkthrough and Usability Testing:
We ran a cognitive walkthrough and usability testing study, with 2 participants for the walkthrough and 5 for the usability testing. Our tasks were primarily centered around making sure the application was intuitive for users, from creating an account to viewing and sharing their data.
Our findings from the walkthrough and testing:
All of our users agreed that it would be easy for someone with minimal tech skills to navigate the app as there are not many buttons to press and the instructions are easy to follow.
The idea of being able to fetch medical history for a customized period of time was popular with multiple users.
Seeing their vitals in real-time on the dashboard was a major plus for all the users.
3 of our users indicated that they were impressed with the quick diagnosis and the ease at which they were able to input symptoms that could not be otherwise monitored.
3 of our users commented on how the wearable was very convenient and discreet.
One user thought that the calming and breathing techniques suggested during the time that the user is waiting to get medical help were very useful in distracting an otherwise panicked user.
We also received some suggestions based on our lo-fi prototypes:
Some of the wordings for sections in the app were confusing, so we decided to reword them more simply in our next iteration.
Users noted they would also like to have audio as an additional modality for the alerts.
Medium Fidelity Prototype:
Based on this feedback, we went ahead and created our medium fidelity prototype in Balsamiq:
Phone screens showing the users vitals and the alert screen; Wearable screens showing the current vitals and alert screen
The full medium-fidelity prototype can be seen here:
How did that turn out?
The scope of the graduate course project extended only up to the medium-fidelity prototype, but the process was crucial in understanding the views of our target demographic. The development done in the course of my undergraduate thesis further helped show that such an application was indeed technically possible, while the design done as a grad course project helped show its viability with the target demographic.
Our final result from my thesis was a working prototype of the application (while not excellently designed):
The final result of the grad course project was the medium-fidelity prototype of the wearable and mobile application, which can be seen here:
Who else knows?
We presented our undergraduate project as a Poster at the Grace Hopper Celebration India conference in 2021, and won Best Student Poster!
The poster can be viewed here: https://vghci-anitab.ipostersessions.com/?s=DF-8C-96-B4-9C-8E-90-85-8B-68-3D-B4-01-1E-7F-54
Outside of everyone who viewed that, read my undergraduate thesis and saw our course project, now you know too! :)
Challenges we faced
An initial challenge we faced with our thesis part was the lack of access to the target population. This meant we were unable to interview potential users to gain an understanding of what design considerations they would have liked us to factor in. We thus relied on existing literature to guide us in that aspect.
However, our user interviews and walkthroughs during the course project were helpful in getting us feedback from our target demographic regarding the form factor and UI of the system.
Another challenge was the accuracy of detection - while sensors on the market have been stated to be reliable enough for medical diagnosis, our prototype had to make a tradeoff between accuracy and affordability. Hence, we’d be keen to see results from a more accurate and high grade sensor.
While the system performed well in our demos, by contacting and locating nearest hospitals and emergency contacts, we were unable to implement it in the real world due to lack of scope and time. However, the Apple watch’s ECG feature, as well as similar features from other wearable brands, implements a similar idea.
What did we learn?
I think one of our biggest takeaways from this project was the enthusiasm from our target user group - we began the project hesitant if older adults would be willing to wear a band that monitors their activity 24x7, as well as learn to use a mobile application. Our interview responses were enlightening in that aspect since participants said they’d be more than happy to use the wearable and app if it could be potentially life-saving.
We also realized that our system needed to factor in personalization - not only do people have varying heart rhythms, but we would also need the system to adapt to people with tachycardia/bradycardia or other medical conditions that would cause them to have different-than-usual normal heart rates.
Another big reflection was our learning of the science behind heart attacks. As computer engineers programmed to approach every problem logically, we thought there’d surely be a way to detect heart attacks algorithmically. It was only after reading up on the medical literature and talking to medical experts did we realize the complexity of the condition, and understood that at most we could only reliably detect and analyze abnormalities in the heart rhythm, not heart attacks.
What’s gonna happen next?
At the time we started this project (September 2017), the ECG feature on the Apple Watch was still a year away. Wearables were all the hype but very few talked about actively monitoring and looking for abnormalities in users’ heart rates.
However, since then, wearable technology has made tremendous progress and with the rollout of the Apple ECG feature as well as other wearables that have now caught on (Fitbit, etc), we are glad to see the core idea of our project already be out in the world (and with better accuracy!).
If you’re wondering if this came full circle though, my grandmother refused to wear an Apple watch (or any other monitoring wearable for that matter) and instead now has a full-time caretaker, and is still going strong at 92!
Feel free to get in touch to discuss more about this project if you’d like!