This wiki has undergone a migration to Confluence found Here

Difference between revisions of "201605 Workflow"

From HL7Wiki
Jump to navigation Jump to search
 
(25 intermediate revisions by 2 users not shown)
Line 16: Line 16:
  
 
==Expected participants==
 
==Expected participants==
<!-- List of the individuals and/or organizations that have indicated a desire to attend the connectathon and implement this track -->
+
; Ron Shapiro: QVera
TBD
+
; Pascal Pfiffner: Boston Children's Hospital
 +
; Angus Millar: NETHA
 +
; Nikolai Schwertner: Boston Children's Hospital
 +
; Rik Smithies: NProgram
 +
; Keith Boone: GE Healthcare
  
==Roles==
+
== Use Case ==  
<!-- Roles are sets of functionality (generally defined by a Conformance resource) that a single system can take on -->
+
It's time for our patient to get his annual physical exam. 
===Submitter===
+
#Rik will create a Task for the Patient to schedule the prework as part of his care plan.
<!-- Provide a description of the capabilities this role will have within the connectathon -->
+
#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
+
=== Refinement before Lunch ===
 +
#Rik is going to create a care plan containing a diagnostic order for the patient.
 +
#Pascal is going to read the care plan.  His system will see the diagnostic order as an activity.
 +
##Creates a Task whose '''subject''' is Diagnostic Order, and is '''for''' the patient
 +
##Creates a subtask referencing that task where input.name = 'test to be scheduled' and input.valueReference = the diagnostic order
 +
##Creates a subtask referencing that task where input.name = 'test to be performed' and input.valueReference = the diagnostic order, in the
 +
#The patient schedules the test.
 +
##Pascals software makes the 'test to be scheduled' task as done, and sets output.name to 'scheduled appointment' and output.valueReference to an appointment containing the date which the test will be performed.
 +
##It also marks the 'test to be performed' task is marked ready
 +
#The lab (Angus) sees that the test is ready -- at this stage we have to deal with specimen collection, but to simplify
 +
#When the lab sees that the test is ready, it will
 +
##Create a Specimen Resource as an input
 +
##Create a Diagnostic Result Resource as an Output
 +
##Mark the test to be performed task as 'done'
  
===Recipient===
+
== Track Stream ==
 +
[https://chat.fhir.org/#narrow/stream/workflow/subject/Connectathon Our Track Stream ]
  
The person or organization that received the referral
 
 
===Grader===
 
 
The person who prioritizes the  referral for urgency
 
 
===Scheduling Clerk===
 
 
The person that makes the appointment for the person to  attend
 
 
===Services Registry===
 
 
A system that knows what services are available at what institutions to assist a referrer to find the correct place to send the referral
 
 
==Scenarios==
 
<!-- What will be the actions performed by participants? -->
 
 
 
===Find place to send referral to===
 
 
Using queries against the healthCareService resource, locate the recipient of the service
 
 
===Create Referral===
 
 
Against the target server Create a ReferralRequest resource, then a Task resource with the Task.owner pointing to an organization and the  Task.subject referring to the ReferralRequest. The task.status will be 'created'
 
 
*Is this correct?*
 
 
 
 
:Action: <!--Who does what?  (Use the role names listed above when referring to the participants -->
 
:Precondition: <!-- What setup is required prior to executing this step? -->
 
:Success Criteria: <!-- How will the participants know if the test was successful? -->
 
:Bonus point: <!-- Any additional complexity to make the scenario more challenging -->
 
 
<!-- Provide a description of each task -->
 
 
===Receive Referral ===
 
 
The recipient of the referral  assigns the task to a grader (by setting the owner ) &  sets the status to ready
 
 
Could locate by direct query against task or use an operation
 
 
===Grade Referral===
 
 
Server: update status of ActionResponse to 'accepted' (?new version or a new resource)
 
 
Client: Poll for responses and display appropriately
 
 
===Cancel Referral===
 
 
Client: locate original ActionRequest, create a new OrderResponse with status set to cancel  ??should this be on the request instead
 
 
Server:  ???
 
 
===Create Appointment===
 
 
Server: Create an appointment with reference to ActionRequest or ReferralRequest. ?Create new new ActionResponse or update existing
 
Client: Poll for responses and display appropriately
 
  
 
==TestScript(s)==
 
==TestScript(s)==

Latest revision as of 17:08, 7 May 2016


Workflow

Submitting WG/Project/Implementer Group

FHIR Infrastructure, Patient Care, Patient Administration

Justification

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 (keith.boone@ge.com) Skype: kwboone

Expected participants

Ron Shapiro
QVera
Pascal Pfiffner
Boston Children's Hospital
Angus Millar
NETHA
Nikolai Schwertner
Boston Children's Hospital
Rik Smithies
NProgram
Keith Boone
GE Healthcare

Use Case

It's time for our patient to get his annual physical exam.

  1. Rik will create a Task for the Patient to schedule the prework as part of his care plan.
  2. 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.
  3. 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.
  4. Ron will monitor all tasks to track what is happening.

Refinement before Lunch

  1. Rik is going to create a care plan containing a diagnostic order for the patient.
  2. Pascal is going to read the care plan. His system will see the diagnostic order as an activity.
    1. Creates a Task whose subject is Diagnostic Order, and is for the patient
    2. Creates a subtask referencing that task where input.name = 'test to be scheduled' and input.valueReference = the diagnostic order
    3. Creates a subtask referencing that task where input.name = 'test to be performed' and input.valueReference = the diagnostic order, in the
  3. The patient schedules the test.
    1. Pascals software makes the 'test to be scheduled' task as done, and sets output.name to 'scheduled appointment' and output.valueReference to an appointment containing the date which the test will be performed.
    2. It also marks the 'test to be performed' task is marked ready
  4. The lab (Angus) sees that the test is ready -- at this stage we have to deal with specimen collection, but to simplify
  5. When the lab sees that the test is ready, it will
    1. Create a Specimen Resource as an input
    2. Create a Diagnostic Result Resource as an Output
    3. Mark the test to be performed task as 'done'

Track Stream

Our Track Stream


TestScript(s)