I have observed a certain obsession over the years by engineers and CS types who love to dream of making computers do medicine. I have warned many groups that that is not the main game (even though I am myself an engineer), and that instead we are in the game of using computer support to soak up common errors that occur in human workflows, lus add some value e.g.:
- missed steps due to fatigue, hurrying, new / trainee staff; change of team member - e.g. by creating a check-list/sign off approach
- missed handoffs of patients among team members, e.g. in UK, end-of-life and other innately multi-sector care - address e.g by modelling team communication network and tracking notifications, escalating unresponded-to notifications etc
- supporting of fine-grained activity-based costing (may not be so big in UK, but it is important in parts of Europe and US).
- create EHR documentation as a side-effect of the workflow executing. This corresponds to a goal of reducing time/annoyance of writing EHR documentation, especially for routine hospital nurse care
- invoking appropriate CDS as an aid at appropriate point in a workflow
and so on.
I’ve noted elsewhere that I am working with an R&D team on workflow at Intermountain Healthcare in Utah, and they are looking at computational approaches to represent ‘adaptive workflows’ (i.e. ones where exceptions to the original definition have to be tolerated while running) and ‘cooperative workflows’ (multi-actor workflows. We’ve chosen some example use cases: intubation, cannulation, which are checklist style nurse workflows. We are also looking at simple clinic visit admin workflows to manage patients arriving at a large clinic and minimising waiting times; this may be doable with straight BPMN. So far we are fairly sure that BPMN won’t deal with workflows that have exceptions that can’t be planned for, at least not without modifications. This is what we are currently working on.
All of this is designed to work as a support to clinicians, and not get in their way, but help them not forget basic things (e.g. cleaning cannula, wound area, etc), and also (importantly) to make EHR recording easier and quicker.
The Intermountain group has a concept of an ‘Activity’ as the unit of work in a workflow. An ‘Activity’ has the following structure so far:
semantic models i.e. CEMs/archetypes = openEHR template
+ lifecycle state
+ potentially activity instance state
+ potentially queries to retrieve the data set
?+ transformation meta-data to enable tx to various operational formats
mostly derived from Domain
Costing activity-based costing data e.g.:
charge master ids?
probably needs some expression logic
who can do this task? = conditions on Participations & roles (= Activity subjects / actors)
general dispatch (activation) criteria w.r.t. Activity targets / objects
when it has to be done, or frequency
e.g. notifications on completion, reaching a given state
may be attribute of owning WF
This is just to give an idea of where they are at. They see the execution of an Activity as being intimately related to reading and writing data from the EHR, hence the core information being represented as something like openEHR templates.
This is ongoing research, and they are doing experiments in software, models etc, so things will change over time. As part of the team, I will be able to share outputs with this group if there is interest.
There are of course many other groups working on these things, and I think we need a research survey/tracking activity to be occurring. There is a lot of work around ProForma for example.
But we also need to make some choices. This is why I think we should potentially at least describe the scope, pick some example pathways / workflows and start to describe what our idea of a ‘good’ working system for these cases might be. And then work back to determining some architectural choices.
One of the things I am most keen on is that workflows / care pathways will be able to be modelled by clinical people using dedicated tools, and these definitions can be managed independently of particular deployment technology, more or less like archetypes. So we need to solve some representation questions (GDL is a simple version for guidelines), but we don’t have to solve the whole WF execution space in the same hit.