The objective was to create a cross-platform mobile application, for Android, iOS and UWP platforms, which would serve as an on-hand storage of structured health records which are transmitted as FHIR resources.
Cross-platform solution has been created on top of Xamarin. Database is hosted in Azure, Azure blob storage is used for storing big files. Admin features are implemented in a ASP .NET MVC web interface.
What Was Done
An application is supposed to be used in different health care organizations, so for this reason the team set up a separate B2C Azure Active Directory instances for the patients and hospital staff. Azure AD instances are configurable in terms of using Federated login feature which would allow user authentication using their social networks (such as Facebook, Twitter, etc.) profiles. Mobile app UI is metadata driven so the tenants are able to customize the information which goes through the application.
Before treatment starts it’s essential that the patient gets all relevant information on the treatment program and procedure. For this reason there is a Required education feature. The device pulls up necessary information from Azure blob storage. It is pulled either during app initialization or synchronized manually or by tenant-configured schedule.
The resources, which may be HTML5 articles, or presentations or videos, are tracked to be viewed in full, so that overall progress can be tracked and assessed. The resources can also be marked as optional, so that user only downloads them, if interested.
All resources are flexibly categorized using a tree-based structure. Resources assignment is on user level, UI for this is organized in a web interface
Each user’s health records are stored in a specific format regulated by a FHIR (Fast Healthcare Interoperability Resources) standard. All healthcare related records should be compliant with this standard. This made the team to create another layer of users – FHIR users, which would be then linked to the user data stored in Azure SQL database.
Health records include:
• Basic questionnaire (overall feeling, general notes)
• Vitals (blood pressure, heart rate, blood sugar)
• Medication list
• Laboratory test results
• Activity tracker (walking, running, sleeping, sports, etc.)
These data are stored in a Health journal page, which each page representing a particular day. Vitals and lab test results can be viewed in a diagram to assess the changes over time.