zerobase-io / smart-tracing

Privacy-First Contact Tracing to Keep Communities Safe
https://zerobase.io
Apache License 2.0
27 stars 13 forks source link

Create PHO communications dashboard mockup #291

Open ColmByrne opened 4 years ago

ColmByrne commented 4 years ago

Initial User Stories and important questions here: https://docs.google.com/document/d/1Sm-NfUpHdpKFqE6z7VPCGkL9OjxJtj4Q5v6d65FskRU/edit?pli=1#heading=h.vfbljeeymbp0

Note, we are conceptualizing what dashboards would be useful to help PHOs implement controls. Please interpret this mock-up as best you can.

This dashboard helps PHOs answer the following questions: Are my social control directive working? (shown by level of interactions in different areas) What high interaction individuals do I need to contact to reduce their movement?

This mock-up is a map of an area, showing a city and counties surrounding it, depicting data for a period of time (7 days) It shows average levels of interaction, averaged over an area It shows the reproduction rate for the area It shows the number of individuals tested positive It helps understand if interaction levels are increasing risk What individuals are exceeding the interaction maximum Actions taken: notify individuals with high interactions to reduce number of interactions. The extract button shows this. If you click on an area, it shows a graph of levels of interaction per day.

Baseline interactions are the number of interactions on average that is required to keep Reproductive rate from climbing. Reproductive Rate https://www.cebm.net/covid-19/when-will-it-be-over-an-introduction-to-viral-reproduction-numbers-r0-and-re/

Interactions vs R1

twoangstroms commented 4 years ago

Have some questions on the image, @ColmByrne

Dashboard notes

ColmByrne commented 4 years ago
  1. GREENNumbers are not entered or modified.
  2. BROWN. This is a graph that pops up on mouse-click over an area (not mandatory to do, just a frill) 3 RED. Yes, legend for colours on the map
  3. ORANGEL Interactive
  4. BLUE Export to extract data for messaging the most mobile people
twoangstroms commented 4 years ago

Thanks! What's the graph in 2? Looks like maybe cases over time?

ColmByrne commented 4 years ago

Daily interaction levels over time

twoangstroms commented 4 years ago

dashboard draft 19 Apr

twoangstroms commented 4 years ago

Obviously a lot more refining to be done and errors to correct. I just put random colors with the interactions and reproduction numbers but I like the idea of color coding to show severity at a glance (without making them look like buttons). The Daily Interactions would be better as a histogram or a stacked bar graph, even one that allowed the user to toggle what's displayed. And instead of hard-line areas, maybe dotted backgrounds of transparency range to tie to confidence levels of the numbers being represented by colors.

ColmByrne commented 4 years ago

Great stuff Dan. Exactly what was needed.

JohnCLo commented 4 years ago

Building off of Dan's and Marie's work. One comment would be that the density would be displayed as a heatmap as opposed to discreet areas (which would need the geocoordinates, kind of a headache for FE and BE)

Zerobase-PHO_Dashboard

JohnCLo commented 4 years ago

Ideally for top check-in types (left column underneath Total Check-in Summary), we would have a top check-in site, with an option to see the full list. Also ideally would have checkbox button next to each site with a notify button. Click notify a modal pops up with the message you want to send those selected sites. Same with top deviceIDs (right column underneath Total Check-in Summary) I've left out node graph exploration, but this would simply be a new tab on the "Areas with most check-ins" section. It would switch to graph node view (map of relationships, not a physical map)

Not sure how we are exactly calculating r0, but r0 should be constrained within the number of deviceIDs - this is technically the "population" on our system. Of course there will be bias depending on the test flow implementation (aka if everyone who goes to get tested is onboarded on zerobase regardless of whether or not they actively or have used zerobase, the r0 would be higher)

Zerobase-PHO_Dashboard2

twoangstroms commented 4 years ago

Question about heat map as a visualization: what would happen if the same area has "red" and "green" data points? Would they average out when, say, there are 10 confirmed cases and 10 tested negative cases? Would that give a false net reading for that area?

The stacked bar graph is good. I was running too fast to make one and didn't have one at hand.

Question about the cards up top with graphs (as I've run into this before): are the graphs useful without scale/axis? Maybe a sparkline would be more useful?

JohnCLo commented 4 years ago

Ah, so the heatmaps would represent check-in density. I was moving a little fast and didn't fully explain the heatmap graphic: -blue dots are registered sites -numbered map icons are the top ten sites with the most check-ins

The cards up top with graphs were just sloppy on my part- they should all be histograms with some scale/axis

twoangstroms commented 4 years ago

Totally fair -- we're all moving fast and approximating, and this is how we make it better.

I thought the map was to show density of individuals who showed high or low interaction? Or does "interaction" here mean individual<-->site, rather than individual<-->individual? I may have misread Colm's sketch.