Case Study: Coronavirus (COVID-19) Dashboard in NFORS/StatEngine

Austin Anderson
statengine
Published in
5 min readMar 19, 2020
Photo by CDC on Unsplash

Update (04/10/2020): We have added a new base dashboard in NFORS to give our users a good foundation to start examining their COVID-19 incidents!

With first responder agencies everywhere now receiving COVID-19 calls and with the need to track them closely both in cooperation with other agencies and for the purposes of monitoring personnel exposure to the virus, we wanted to present some recommendations on setting up a COVID-19 dashboard. This request cam from one of our NFORS users asking for assistance to build and revise a dashboard for tracking their coronavirus responses.

Good data quality is the key

The most important key to creating a good NFORS dashboard for COVID-19 is to ensure that your department has a good way to designate COVID-19 call types in your CAD dispatch. When we first started helping our user department build their dashboard, they were sending COVID-19 calls out on typical EMS dispatch types, such as DIFFICULTY BREATHING or ILL PERSON, with additional notes in the dispatcher comments on these calls to designate these calls using coronavirus, COVID-19, or PPE advised. After 2 or so days of this initial “ad-hoc” phase, they added a new call type to their dispatch for COVID-19 calls, CONTAGIOUS EMERGENCY. This change ensured that they could easily filter for and track their coronavirus incidents. Thus, our recommendation to NFORS users is to contact your CAD administrators ASAP and implement a call type specifically for your COVID-19 calls.

During the initial phase before they implemented the CONTAGIOUS EMERGENCY call type, we were able to help them get a handle on their incidents by filtering their incidents by text in their comments using the following procedure:

  1. In a dashboard, add a filter on description.comments containing the keywords being used by your dispatchers to designate COVID-19 runs, such as covid, coronavirus, or even just “ppe advised”, and save it.
  2. Select “Edit filter,” and in the “Add filter” dialog that pops up, select “Edit Query DSL”
  3. Delete the line with the word “phrase” on it, as well as the comma on the line above it.
Creating the comments filter
Proper editing of the comments filter. This small edit causes the comments test search filter to be case-insensitive.

Adding raw COVID-19 calls data to a dashboard

It proved important to our users to examine the raw incident data from their dashboard, so that they would have a full view of the incidents they were examining based on other filters in their dashboard.

Normally, the “discover” tab in NFORS is used to examine raw incident data. However, with the “saved searches” functionality, we can develop a filtered view of the raw incidents and then add that filtered view to our dashboard! Here’s how:

  1. In the “discover tab” add the filters necessary to capture your department’s COVID calls, perhaps even using the trick outlined above.
  2. At the dashboard, select “Edit” followed by “Add,” then choose the “Saved Searches” tab and choose your COVID calls saved search.
Saving the COVID-19 search from the discover tab
Adding a saved search for COVID-19 calls

Useful Visualizations for your COVID-19 dashboard

Now that you have the way to filter for your incidents as well as see the raw incident data in your dashboard, we would like to list several default visualizations that our user found useful in building their COVID-19 dashboard. Keep in mind that these visualizations should all be filtered for COVID-19 calls according to the strategies outlined previously.

  • Incidents — This will give you the total number of COVID-19 incidents to which your department has responded over the time period of interest.
Note: Data above is synthetic.
  • Incidents by Time — Provides the trend of COVID-19 incidents to which your units are responding.
  • Incident Map — A map of all your COVID calls. Remember that the tools on the top left side of the map allow you to filter regions of interest.
Note: This is synthetic data for Richmond, not actual COVID-19 calls.
  • 90th percentile EMS Turnout/Response/Total event duration — For tracking your unit performance on COVID-19 calls, as well as having an idea of how long units are spending committed to the incident.
  • Incidents by Shift — Used by the department in conjunction with the time picker to examine the total number of calls taken by a given shift in a given period of time, to aid in staff planning and monitoring personnel exposure to the coronavirus.
  • Incidents by Unit and Category — This will detail which units are responding to the largest number of COVID-19 calls, an indication of exposure.
  • Common Addresses with Census Tract Characteristics — Supplies at-a-glance the addresses where your units are responding to COVID-19 cases, with some demographic characteristics based on Census data.

And many more according to whatever you may need!

Summary

The most important need for making a useful COVID-19 dashboard is being able to distinguish which incidents are COVID-19 calls and filtering for them. If possible, work with your CAD administrator to establish a dispatch type exclusively for COVID-19 calls. If such an arrangement cannot be made, then try to at least get mentions of COVID-19 or coronavirus into the dispatcher comments in a consistent way so that you can find those incidents later. Once you have a handle on identifying which incidents are COVID-19 calls and filtering for them, then even existing dashboards such as our default “Incident Dashboard” will supply a wealth of important information related to your department’s COVID-19 calls.

--

--

Austin Anderson
statengine

I am a data scientist specializing in public safety applications who loves policy and decision analysis. Before you do anything, focus on the value proposition.