Lanes, clusters, lines of Sight: Modelling diagnostic eyecare clinics to improve patient flow
Data files
Nov 22, 2024 version files 13.54 MB
-
Data_Collection_Templates.zip
99.70 KB
-
README.md
7.66 KB
-
VGA_model.zip
13.43 MB
Abstract
Lengthy waiting times for ophthalmology appointments in the UK National Health Service (NHS) increased further in the immediate aftermath of the Covid-19 pandemic, necessitating a different approach to triaging patients safely and at speed. Moorfields Eye Hospital NHS Trust therefore opened an additional diagnostic hub designed with a linear spatial layout and patient flow system, which is analyzed in this paper in comparison to an existing clinic. We integrate direct observations of patient flows, and an architectural layout analysis based on space syntax methods with queuing simulations from operations research and show that the two clinics operate differently and that both clinics have their advantages and disadvantages. The newly opened clinic with a lane system supports flows and coordination by line of sight between stations, which contrasts with a lack of sightlines in the existing clinic. The latter layout with clusters of stations compensates by enabling a more organic flow, especially in conjunction with experienced technicians, which is beneficial when the clinic gets busy. When high patient load is simulated in the queuing models, the lane system results in slightly bigger bottlenecks and longer clinic durations. An ideal allocation of the number of stations to diagnostic activities based on clusters is suggested. This work stands in the tradition of combining architectural and operations research. By reflecting on the variability of diagnostic processes found in our observations, we contribute to the understanding of routines as performative. We also add insight to the growing field of evidence-based design, particularly by highlighting the importance of line-of-sight relationships in ophthalmology.
https://doi.org/10.5061/dryad.m0cfxppdj
Description of the data and file structure
Data and analysis description
To replicate our analysis, the following three pieces of work need to be completed: first, the spatial analysis of the layout; second, the analysis of the observational data on patient flows and timings; and third, the simulation of patient flow, which provides an indication of the ideal type and number of required machines. The following steps in each piece of work need to be completed.
Spatial analysis
1) Perform VGA and Step Depth Analysis
Prepare a dxf file of a floor plan following the instructions in the Depthmap_VGA_HowToGuide.pdf, using the floor plan we have provided in the VGA model folder as an example.
Download DepthmapX to run Visibility Graph Analysis (VGA) and visual Step Depth (SD) from the same station type. For the latest version of the software use the following link https://github.com/SpaceGroupUCL/depthmapX/releases.
Follow the steps in the Depthmap_VGA_HowToGuide.pdf (Supplemental Information) to produce a VGA and SD analysis. Use a 0.6m by 0.6m grid and exclude the furniture when running the analysis. You can check the attributes table of the mean depth measure to obtain the minimum, average, maximum and standard deviation. The VGA models for the two sites are stored as .graph files in the VGA model folder.
2) J-Graph
Use any graphics software (e.g. Illustrator or Autocad) to construct a j-graph by representing as nodes each of the individual stations, the entrance and the corridors leading from the entrance to the stations. Use the clinic’s entrance as a base point and then organize the rest of the points visually starting from the base and then all points with depth 1 from that point aligned immediately above it, all points at depth 2 from that point above those at depth 1 and so one until all levels of depth from the entrance are accounted for. For an automated process, use R for depthmap available from https://github.com/pklampros/rdepthmap. The igraph library allows plotting a graph as a tree from a specific node. Full details can be found here: https://github.com/pklampros/space_syntax_analysis_in_r/blob/main/4_advanced_j_graphs.Rmd
Observational data
3) Direct Observations
Conduct direct observations of patient flows using a tablet. For detailed explanation of the observations use the S1_Sailer_et_al_observationprotocol.docx file and the Journey_OBS_template.xlsx and Zonal_OBS_template.xlsx template (in the Data Collection Templates folder) for data collection. The example_overview_schedule.xlsx (in the Data Collection Templates folder) provides an example of an observational schedule for three observers and two observational sites.
4) Patient Information
Obtain patient information such as age group, gender and patient type from the hospital.
5) Construct Patient Journeys
Use the Jupyter notebooks to construct patient journeys from the zonal observations and combine the observational data with the patient information in a single csv file following the structure in the file CLEAN_Cayton_Zonal_OBS.csv in Jupyter/Cayton_Zonal folder. We have used Jupyter Lab on Python 3.12.
6) Analysis
Use the Jupyter notebooks to run the analysis. All the notebooks and the data needed for analysis are saved in the Jupyter folder.
To perform the descriptive analysis and the t-tests presented in Table 2 in the paper, please refer to the DescripStats_T-test.ipynb file. The same analysis with the 95% trimmed data set (as reported in the paper / presented in supplemental material) can be produced by referring to the DescripStats_T-test_95trimmed.ipynb file.
To produce histograms presented in Figure 5a-j, please refer to the Histogram.ipynb file.
To produce the bar charts of Figure 6 and 7, please refer to the BarCharts.ipynb file.
To produce the Sankey diagrams presented in Figure 8, please refer to SankeyDiagram.ipynb file.
Queuing Simulation
7) Analysis
The queuing simulation in the paper is performed using R version 4.2.2. The data and scripts to reproduce the analysis are saved in the Queuing simulation folder. Information on compliance with the STRESS guidelines for simulation studies in operational research is included in the folder as well.
Files and variables
File: Data_Collection_Templates.zip
Description: This folder contains two files to support researchers in conducting their own observations of patient flows in outpatient clinics:
- example_overview_schedule.pdf provides a template from our observation planning covering three weeks of observation and various clinic shifts.
- OBS_template.csv shows the structure of how we gathered data on site. All colums in the .csv are explained in detail in the supplemental file S1_Sailer_et_al_observationprotocol.pdf. Note: we used iPads and Microsoft Excel to collect the data. We prepared the Excel sheet as follows: I) the columns Start Time and End Time were pre-programmed with the formula =now(), so that upon clicking the cell, the current time was entered. II) We disabled the automatic updating of all cells so that the start and end times retained their original values when new entries were made. III) We used dropdown menus and a lookup function for the columns Location, Activity, and Patient English to ease the load on the participant observers and to ensure consistent data entry.
File: VGA_model.zip
Description: This folder contains five files to enable researchers to re-analyze our floor plans and spatial layout models, and to support researchers in conducting their own spatial layout analysis with own floor plans of different outpatient clinics:
- Depthmap_VGA_HowToGuide.pdf provides a step-by-step instruction on how to conduct a Visibility Graph Analysis (VGA) and Step Depth (SD) Analysis using the open-source software depthmapX. Links to download depthmapX are provided in the file. [Note this is hosted on Zenodo under Supplemental Information link]
- Cayton.dxf and Hoxton.dxf contain the simplified, line-based floor plans of the two clinics we studied. The file format .dxf is an open format that can be read by a variety of CAD and vector-based drawing programmes. We used AutoCad to clean up floor plans for the analysis. depthmapX reads .dxf files for the analysis.
- Cayton_visibility.graph and Hoxton_visibility.graph are output files from depthmapX. They contain the detailed analysis we conducted.
Code/software
File: Jupyter.zip
Description: This folder contains five Jupyter notebooks and all input files needed for the analysis. A description of the processes we used is provided in the above. We used Jupyter Lab on Python 3.12.
File: Queuing simulation.zip
Description: This folder contains two .R files and two .csv input files needed to replicate our queuing simulation analysis, as well as a .pdf file outlining the compliance of our modelling and data sharing with the STRESS guidelines developed for operational research. A description of the processes and variables we used is provided in supplemental file S2_Sailer_et_al_pseudocode.pdf.
Access information
No other publicly accessible data was used.
Fieldwork was undertaken in June and July 2021 in two outpatient clinics of Moorfield Eye Hospital NHS Trust, the Cayton Street clinic and the Hoxton Hub. Two main data sets were collected for each clinic: 1) an up-to-date floor plan of each clinic including the locations and types of all diagnostic equipment marked up, and 2) direct observations of glaucoma patient flows, recorded on tablets, including exact time stamps of entry and exit of the clinic as well as start and end times for all diagnostic tests.
For the observations, patients received a sticker with a study ID number at the reception desk, which was recorded by observers as an identifier. Over the course of ten days of observations, participant observers captured nine 4-hour shifts in the period from 8:30 to 17:00 in Hoxton, and six 4-hour day shifts and seven 3-hour evening shifts between 8:30 and 20:00 in Cayton Street. 14 patients at Cayton Street and 11 patients at Hoxton were shadowed for the entirety of their journey through the clinics with an average duration of 36 minutes (range 19-70min) and 37 minutes (range 26-79min) respectively. The majority of the data, however, was captured by additional, so called ‘zonal’ observations, where each observer was placed in a position to monitor a discrete space as well as all start and end times of diagnostic tests completed in this area, resulting in a total of 152 and 83 unique patients observed in the clinics respectively. From these data, full patient journeys were reconstructed using the patient identifiers. Aggregating data from both observation methods resulted in a sample size of 621 single data points of activity durations in Cayton Street and 485 at Hoxton (which includes observed activities of standing and waiting), hence n=1106. This full data set contained a subsample of actual examinations at stations (excluding standing and waiting) of n=1007.
Each observer was asked to record an identifier for each technician looking after a patient, i.e., the first two letters of the technician’s first name and the first two letters of their last name. Each technician was wearing a name tag which was visible to the observers. This was used in the analysis stage to understand technician workflows, for example, whether they guide a single patient through every stage of the diagnostic process, or whether they mainly stick to a particular diagnostic activity. Afterwards, all identifiers were anonymized.
The observers were also asked to assess and record the fluency in English of each patient where they could choose from four levels: ‘fluent’, ‘few issues’, ‘many issues’, and ‘translator’. Using the patient ID numbers, which were cross-referenced by hospital staff to their patient database, additional information was obtained from the hospital including age, gender, and if the patient was a first-time or a follow-up patient. The observers also recorded anything they felt worth noting down in the form of a qualitative note. This included reasons for occurring delays, causes for waiting, patients with mobility difficulties, etc.
In summary, for each diagnostic activity, the following data was collected: 1) patient ID, 2) date, 2) exact time stamps for the moment a patient sat down at each station (start time), and got up again (end time), 3) location (corridor, waiting area or station number), 4) activity (exam, wait while sitting, wait while standing), 5) technician ID, 6) English proficiency, 7) qualitative notes (see supplemental material S1 on the observation protocol).
The dataset has been processed in the following ways:
- Floor plans have been analysed based on space syntax techniques to understand differences in architectural layout between the two clinics.
- The patient flow data has been analysed statistically using Jupyter Notebooks to understand how the two clinics operated.
- Queuing simulations have been run in R to understand how the diagnostic stations can be arranged differently, and what impact this would have on clinic effectiveness.