Difference between revisions of "201605 Workflow"
|Line 22:||Line 22:|
; Rik Smithies: ???
; Rik Smithies: ???
; Keith Boone: GE Healthcare
; Keith Boone: GE Healthcare
Revision as of 13:53, 7 May 2016
Submitting WG/Project/Implementer Group
FHIR Infrastructure, Patient Care, Patient Administration
Workflow is a primary focus of the upcoming release. A number of new approaches are being proposed and they need to be tested
Proposed Track Lead
See Connectathon_Track_Lead_Responsibilities Keith Boone (firstname.lastname@example.org) Skype: kwboone
- Ron Shapiro
- Rik Smithies
- Keith Boone
- GE Healthcare
It's time for our patient to get his annual physical exam.
- Rik will create a Task for the Patient to schedule the prework as part of his care plan.
- Patrick will ask the Patient to select the Laboratory which will perform his results. The patient will select a lab (e.g., Acme Labs), and Patrick will create a new task, #containing the Laboratory Order as input, and assign that task to Acme labs to perform.
- Angus will monitor the task list for tasks assigned to Acme lab, perform the test, produce the results, and attach them as the output of the lab task, marking that task as complete.
- Ron will monitor all tasks to track what is happening.
The actor that creates the referral
The person or organization that received the referral
The person who prioritizes the referral for urgency
The person that makes the appointment for the person to attend
A system that knows what services are available at what institutions to assist a referrer to find the correct place to send the referral. It implements queries against a healthcareservice resource
Describe the architecture here - where all tasks are created on the server where the referral is tobe processed. Discuss that there can be other architectures - eg a centralized 'referral manager' server.
1. Find place to send referral to
- Action: The Submitter makes queries against the Service Registry to locate a suitable location to send the referral to.
- Precondition: There is a server acting in the role of a Service Registry exposing queries that enable the submitter to locate the service type they need. For the sake of this scenario it is assumed that there will be an organization that meets the needs of the referral (ie that the registry has suitable Organization resources).
- Success Criteria: A suitable organization is located
- Bonus point: A client is developer that can update the registry, adding new services to it.
2. Create Referral
- Action: The submitter creates a referral on the referral server. This will involved creating referralRequest and a task resource that refers to it
- Precondition: There is a server established as the 'referral manager' - that can maintain Task and ReferralRequest resources
- Success Criteria: The workflow resources (Task, ReferralRequest) are successfully created
- Bonus point: The client that creates the referral can also query for the current status of the referral.
- Against the target server Create a ReferralRequest resource, then a Task resource with the Task.owner pointing to an organization, Task.concerning referring to the patient and the Task.subject referring to the ReferralRequest. The task.status will be 'created'
3. Receive Referral
- Action: The recipient of the referral indicates whether the referral has been accepted by the service.
- Precondition: The resources (Task / ReferralRequest) exist and are locatable
- Success Criteria: The client is able to view the current status of the referral
- Bonus point: The service and the client can have a 'conversation' to clarify aspects of the referral - eg to supply incomplete data.
- The recipient of the referral assigns the task to a grader (by setting the owner to a practitioner ) & sets the status to ready
- Mostly this step is checking that required information is present and that the referral is appropriate - eg that the service can process this referral type.
- The task could be located by a direct query against Task or the server could expose a specific operation
- query needs to be all referralrequest tasks for this organization in the created state
4. Grade Referral
- Action: The Grader assigns the Task to a Practitioner or Organization for grading (assigning priority).
- Precondition: The required resources exist and can be located by the Grader
- Success Criteria: The Task status is updated
- Bonus point: The client is notified of the status change in some way
- Bonus point: The referral is rejected and the submitter notified with the reason
- Practitioner locates referrals assigned to them in a 'ready' state. Could locate by direct query against task or use an operation
- Accept: change owner to the scheduling department (another organization)
- Reject: change status to 'failed'. Assign owner to the initial creator (the GP)
5. Create Appointment
- Action: An appointment is created for the patient to be seen by the Organization to which the referral was assigned in the previous step
- Precondition: A server accessible to submitter and processor is able to support Appointment resources
- Success Criteria: The appointment is created
- Bonus point: The submitter is notified
- Bonus point: The patient is notified
- Bonus point: The patient can 'negotiate' with the service over the appointment time
- Scheduling department (Organization) create appointment
- query is all tasks where the subject is a referralrequest and owner is that organization and state changes to completed - because we assume that the purpose of the task was to arrange an appointment for a patient.
- Could create a new task for the outpatient clinic (where the appointment is to be) - with task.input set to the appointment