Patient Dashboard for Optimizing Sedation

Project phases

Published: November 6, 2023

Last Updated: 6 months ago.

View All Projects

Seeking to advance support for children and youth with behavioral complexity, a group of doctors at BC Children’s Hospital approached the UBC Cloud Innovation Center (CIC) with the idea for a dashboard that consolidates patient information and medical data to help with optimizing sedation. The CIC approached this challenge using the Health Level 7 FHIR standard to display data, medications, vaccinations and previous assessments performed. This innovation would enable authorized staff to view essential patient data to support upcoming medical procedures, such as sedation.

Approach

The process to assess patient profiles to determine who may benefit from additional attention related to underlying behavioral complexities during planned sedation visits is nuanced. In the best case, a specialized clinical nurse is able to review information from multiple sources to determine the patient’s medical history, lab work, and previous assessments to inform practitioners regarding ‘opportunistic investigations’.

To support the assessment process, the CIC developed a dashboard that presents a consolidated view of patient information and medical data using the Fast Healthcare Interoperability Resources (FHIR) standard that can seamlessly integrate with CERNER, BC’s Electronic Health Record (EHR) system. The prototype uses simulated data to show how data can be displayed from CERNER on a web application dashboard to allow the user to identify any gaps or concerns in medical information before sedation, leading to improved care.

Supporting Artifacts

SMART on FHIR Schema

Substitutable Medical Applications and Reusable Technologies (SMART) provides a standard API that can be used to access any EHR. Using the OAuth 2.0 standard, SMART on FHIR provides secure and universal access to the EHR system. This security process is necessary in the healthcare setting to verify users/applications before accessing medical data.

Schema diagram for SMART on FHIR. Explains how the network happens.

For the interaction to happen, the application needs to be registered in the system.

Schema Workflow

  1. The user would launch the application from an EHR which redirects to the application’s entry point at https://www.[domain]/smartAuth.
  2. The application would know the FHIR server endpoint and request metadata to discover the Authorization server.
  3. Subsequently, an authorization request (e.g., launch, scope) is sent to the authorization server.
  4. If the application is registered and the provided context is valid, the authorization will redirect to the dashboard main page (https://www.[domain]/) with an authorization token.
  5. The application would exchange an authorization token for an access token with the authorization server.
  6. With the access token, the application can request FHIR resources from the FHIR server.
  7. The application would retrieve the resources and filter accordingly.

Architecture Diagram

The architecture diagram is the backend process of hosting the application using AWS. 

The diagram for Optimizing Sedation. There are 6 steps to the backend process, as detailed below.

Architecture Workflow

  1. An user sends a request to an application using the AWS Application Load Balancer (ALB) to distribute incoming traffic across multiple targets. This ALB domain name system (DNS) goes through the internet gateway at port 443 (or HTTPS).
  2. The Internet gateway then forwards the request to ALB: the Web Application Firewall (WAF) will check if the request is secure, and the ALB will check the health status of the elastic container service (ECS) task.
  3. If the ECS task is healthy and the request is safe, the ALB sends the request from the user to that task that is running a container with an application image.
  4. Since the application is located in a private subnet and requires access to an external server, the application would send requests to the Network Address Translation (NAT) gateway located at the public subnet.
  5. The NAT gateway would forward the request to the Internet gateway.
  6. The Internet gateway then sends that request to the destination server, in this case, it is the FHIR server.

Technical Details

AWS Secrets Manager

The application credentials, such as client ID and secret, are stored in AWS Secret Manager.

AWS Elastic Container Registry (ECR)

The application is packaged into an image using Docker. This image is stored in a private repository of ECR. The ECR repository maintains different versions of the image and only the image with the latest tag gets deployed into a container.

AWS Elastic Container Service (ECS) & AWS Load Balancer

In the private subnet, we use AWS ECS which contains a cluster that runs an ECS Service. The ECS service deploys an ECS task from a task definition using AWS fargate. The ECS task will launch a container using a docker image fetched from the ECR repository using application credentials from AWS Secrets Manager. The ECS service is also attached to an Application Load Balancer (ALB) located in the public subnet. The ALB listens on port 443, which allows for HTTPS requests.

Screenshots of UI

Upon entering their credentials, the user enters the home page. The page displays information that may be helpful to doctors and hospital staff in their assessment processes. On the left side with the blue boxes, information about the patient identification is displayed, as well as the contact and medical summary. The user can view the patient’s medical profile. Note that the information shown here is fictitious.

Dashboard of Optimizing Sedation. This is the home page and contains all relevant patient information.
The side bar. Part of the dashboard for Optimizing Sedation.
Basic information about the selected patient, such as name, MRN, and emergency contact information can be seen on the upper part of the left sidebar.
Medication information, expanded. Comes from the Optimizing Sedation dashboard.
A list of medications prescribed in the last six months can be seen on the left sidebar in a drop down panel. The name, status, and date of each medication are displayed.
Diagnoses information, expanded. Comes from the Optimizing Sedation dashboard.
A list of a patient’s diagnoses can be seen on the left sidebar in a drop down panel. The name, status, and date of each diagnoses are displayed.
Table of the patient assessment data. Comes from the Optimizing Sedation dashboard.
The patient assessment information table contains various information about a patient’s medical history. There are filters above the table that can be used to search through data in the table.

Expanded tables

Link to solution on GitHub: https://github.com/UBC-CIC/Optimizing-Sedation

Demo Video

Acknowledgements

Photo by Getty.

About the University of British Columbia Cloud Innovation Centre (UBC CIC)

The UBC CIC is a public-private collaboration between UBC and Amazon. A CIC identifies digital transformation challenges, the problems or opportunities that matter to the community, and provides subject matter expertise and CIC leadership.

Using Amazon’s innovation methodology, dedicated UBC and Amazon CIC staff work with students, staff and faculty, as well as community, government or not-for-profit organizations to define challenges, to engage with subject matter experts, to identify a solution, and to build a Proof of Concept (PoC). Through co-op and work-integrated learning, students also have an opportunity to learn new skills which they will later be able to apply in the workforce.