This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Difference between revisions of "201805 Questionnaire Track"

From HL7Wiki
Jump to navigation Jump to search
(Created page with "{{subst::Template for FHIR Connectathon Track Proposals}}")
 
 
Line 5: Line 5:
  
 
==Submitting WG/Project/Implementer Group==
 
==Submitting WG/Project/Implementer Group==
<!-- Who is asking for this track? -->
+
Structured Data Capture/FHIR Infrastructure
  
 
==Justification==
 
==Justification==
<!--Why is this an important track to include in the connectathon - include implementer need, impact on ballot, FMM readiness of the resources, etc. -->
+
Questionnaires (and the ability to easily get data into and out of them) seems likely to be a key part of the solution to data capture and presentation of a number of "complex" structures for clinical care, claims management, research and other areas.  The SDC project has made several updates to the IG that we'd like to test and we also want to prepare for additional testing in conjunction with Boston DevDays.
  
 
==Proposed Track Lead==
 
==Proposed Track Lead==
<!-- Name, email and Skype id of individual who will coordinate the track at the connectathon -->
+
Lloyd McKenzie
See [[Connectathon_Track_Lead_Responsibilities]]
+
:Skype ID: lmckenzi
 +
:Email: lmckenzie@gevityinc.com
  
 
==Expected participants==
 
==Expected participants==
<!-- List of the individuals and/or organizations that have indicated a desire to attend the connectathon and implement this track -->
+
Grahame Grieve, Brian Postlethwaite, NLM, ???
  
 
==Roles==
 
==Roles==
Please include information here regarding how much advance preparation will be required if creating a client and/or server.
+
 
 
<!-- Roles are sets of functionality (generally defined by a Conformance resource) that a single system can take on -->
 
<!-- Roles are sets of functionality (generally defined by a Conformance resource) that a single system can take on -->
===Role 1 Name===
+
===Form Designer===
<!-- Provide a description of the capabilities this role will have within the connectathon -->
+
 
 +
Creates, submits, and revises Questionnaires
 +
 
 +
===Form Filler===
 +
Captures user form input
 +
 
 +
===Form Manager===
 +
Serves as the repository for form definitions and may also perform pre-population
 +
 
 +
===Form Receiver===
 +
Serves as a repository for completed forms
  
 
==Scenarios==
 
==Scenarios==
 
<!-- What will be the actions performed by participants? -->
 
<!-- What will be the actions performed by participants? -->
  
===Scenario Step 1 Name===
+
===Forms===
:Action: <!--Who does what?  (Use the role names listed above when referring to the participants -->
+
Objective: Test the form creation language defined by the SDC specification
: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 -->
+
1. Create an SDC-conformant form
 +
:Action: SDC Form Designer creates a new Questionnaire instance that is conformant with the SDC Questionnaire profile
 +
:Precondition: none
 +
:Success Criteria: Form passes validation against the Questionnaire schema and is identified as valid against the SDC Questionnaire profile by the FHIR profile validation tool
 +
:Bonus Point: Define a Questionnaire that includes conditional display
 +
:Bonus Point: Define a Questionnaire that includes special rendering/style requirements
 +
:Bonus Point: Define contained or independently persisted value sets
 +
 
 +
2. Submit form
 +
:Action: SDC Form Designer submits Questionnaire to an SDC Form Manager for storage
 +
:Precondition: Questionnaire has been defined, Form Designer knows base URL for form manager
 +
:Success Criteria: Questionnaire is stored on Form Manager Server
 +
 
 +
3. Query forms
 +
:Action: SDC Form Filler or SDC Form Designer searches an SDC Form Manager for Questionnaires using one or more of the SDC-supported search criteria
 +
:Precondition: Questionnaires are available on the SDC Form Manager
 +
:Success Criteria: Set of matching Questionnaires is returned
 +
:Bonus Point: Make use of sorting and paging parameters
 +
 
 +
4. Update form
 +
:Action: the SDC Form Designer revises an existing Questionnaire previously stored in the SDC Form Manager and submits an update
 +
:Precondition: A version of the Questionnaire exists on the SDC Form Manager and the Form Designer
 +
:Success Criteria: A new version of the Questionnaire exists on the SDC Form Manager. The original version remains accessible via a history query
 +
:Bonus Point: Hand collision detection using e-tags
 +
 
 +
===Completed Forms===
 +
Objective: Test the ability to render, navigate, and capture data based on forms defined using SDC syntax
 +
 
 +
1. Render SDC form for input
 +
:Action: SDC Form Filler converts the definition of an SDC Questionnaire into a user interface that can solicit data from a human
 +
:Precondition: SDC Questionnaire has been retrieved
 +
:Success Criteria: Human can fill out the form populating the questions and groups within the Questionnaire
 +
:Bonus Point: Enforce conditional display while the user populates the Questionnaire
 +
:Bonus Point: Render the Questionnaire taking into account the special rendering/style requirements
 +
:Bonus Point: Provider appropriate interfaces to select from a referenced ValueSet
 +
 
 +
2. Record answers
 +
:Action: SDC Form Filler submits completed QuestionnaireResponse to an SDC Form Receiver
 +
:Precondition: SDC Questionnaire has been received and populated
 +
:Success Criteria: QuestionnaireAnswers instance is available for query on the SDC Form Filler
 +
:Bonus Point: Store a partially-completed QuestionnaireResponse
 +
:Bonus Point: Validate that the QuestionnaireResponse instance is valid against the Questionnaire and referenced ValueSets
 +
 
 +
3. Update answers
 +
:Action: SDC Form Filler retrieves QuestionnaireResponse instance and associated Questionnaire and displays the Questionnaire with data populated for update
 +
:Precondition: SDC Questionnaire and QuestionnaireResponse instances are available for query
 +
:Success Criteria: Revised QuestionnaireResponse instance is stored on SDC Form Receiver reflecting user's edits
 +
:Bonus Point: Ensure conditional display rules are enforced based on already populated data
 +
 
 +
===Form Population===
 +
Objective: Test ability to pre-populate/auto-populate forms
 +
 
 +
1. Pre-populate a form
 +
:Action: SDC Form Filler invokes the $populate operation on an SDC Form Manager passing a Questionnaire id and a C-CDA instance
 +
:Precondition:SDC Form Filler has retrieved an SDC Form referencing DataElements which contain xpath mappings to a C-CDA document where the specified paths exist in the test C-CDA instance
 +
:Success Criteria: The SDC Form Filler receives a QuestionnaireResponse instance with the matching questions populated
 +
:Bonus Point: SDC Form Filler renders content appropriately following conditional display values - including hiding the populated elements that aren't allowed to be displayed
 +
 
 +
===Dynamic forms===
 +
Objective: Test use of CDS Hooks to guide Questionnaire completion
 +
 
 +
1. Dynamically complete form
 +
:Action: SDC Form Filler triggers CDS Hook while completing questionnaire.  CDS Hook triggers Form Manager passing partially-competed QuestionnaireResponse to return an adjusted Questionnaire containing additional questions based on answers completed thus far.  This process may be iterated several times
 +
:Precondition: Form Manager is subscribed to necessary hooks
 +
:Success Criteria: QuestionnaireResponse is fully submitted against a "custom" Questionnaire designed based on answers
  
 
==TestScript(s)==
 
==TestScript(s)==
 +
Not yet decided
 
<!-- Optional (for initial proposal): Provide links to the TestScript instance(s) that define the behavior to be tested.   
 
<!-- Optional (for initial proposal): Provide links to the TestScript instance(s) that define the behavior to be tested.   
 
These should be committed to SVN under trunk/connectathons/[connectathon]
 
These should be committed to SVN under trunk/connectathons/[connectathon]
Line 40: Line 113:
  
 
==Security and Privacy Considerations==
 
==Security and Privacy Considerations==
<!-- Optional (for initial proposal): Address the topic of Privacy and Security.
+
- No expectation of secure connection, authentication, audit, etc. as part of this track
* What Authentication/Authorization will be used (e.g. SMART on FHIR (OAuth), HEART (UMA/OAuth), IHE IUA (OAuth), generic OAuth, generic SAML, mutual-Auth-TLS), or explicitly indicate that it is out of scope and left to implementations.
 
* What Privacy Consent management will be used? When the Consent Resource is used, define how.
 
* What Audit Logging will be used? When the AuditEvent Resource is used, define expectations of what events will be logged and what each AuditEvent will contain.
 
* How will Provenance be used? Provenance use should be mandated when data is imported from other systems, so as to track that source of that data. Provenance should be used when data is authored by unusual sources, such as the Patient themselves or devices.
 
* How will security-labels be used? Security-labels are meta tags used to classify the data into various confidentiality, sensitivity, and integrity classifications. These security-labels are then available for use and available for access control decisions.
 
I am happy to help: JohnMoehrke@gmail.com -- security co-chair
 
-->
 

Latest revision as of 20:44, 4 April 2018


Track Name

Submitting WG/Project/Implementer Group

Structured Data Capture/FHIR Infrastructure

Justification

Questionnaires (and the ability to easily get data into and out of them) seems likely to be a key part of the solution to data capture and presentation of a number of "complex" structures for clinical care, claims management, research and other areas. The SDC project has made several updates to the IG that we'd like to test and we also want to prepare for additional testing in conjunction with Boston DevDays.

Proposed Track Lead

Lloyd McKenzie

Skype ID: lmckenzi
Email: lmckenzie@gevityinc.com

Expected participants

Grahame Grieve, Brian Postlethwaite, NLM, ???

Roles

Form Designer

Creates, submits, and revises Questionnaires

Form Filler

Captures user form input

Form Manager

Serves as the repository for form definitions and may also perform pre-population

Form Receiver

Serves as a repository for completed forms

Scenarios

Forms

Objective: Test the form creation language defined by the SDC specification

1. Create an SDC-conformant form

Action: SDC Form Designer creates a new Questionnaire instance that is conformant with the SDC Questionnaire profile
Precondition: none
Success Criteria: Form passes validation against the Questionnaire schema and is identified as valid against the SDC Questionnaire profile by the FHIR profile validation tool
Bonus Point: Define a Questionnaire that includes conditional display
Bonus Point: Define a Questionnaire that includes special rendering/style requirements
Bonus Point: Define contained or independently persisted value sets

2. Submit form

Action: SDC Form Designer submits Questionnaire to an SDC Form Manager for storage
Precondition: Questionnaire has been defined, Form Designer knows base URL for form manager
Success Criteria: Questionnaire is stored on Form Manager Server

3. Query forms

Action: SDC Form Filler or SDC Form Designer searches an SDC Form Manager for Questionnaires using one or more of the SDC-supported search criteria
Precondition: Questionnaires are available on the SDC Form Manager
Success Criteria: Set of matching Questionnaires is returned
Bonus Point: Make use of sorting and paging parameters

4. Update form

Action: the SDC Form Designer revises an existing Questionnaire previously stored in the SDC Form Manager and submits an update
Precondition: A version of the Questionnaire exists on the SDC Form Manager and the Form Designer
Success Criteria: A new version of the Questionnaire exists on the SDC Form Manager. The original version remains accessible via a history query
Bonus Point: Hand collision detection using e-tags

Completed Forms

Objective: Test the ability to render, navigate, and capture data based on forms defined using SDC syntax

1. Render SDC form for input

Action: SDC Form Filler converts the definition of an SDC Questionnaire into a user interface that can solicit data from a human
Precondition: SDC Questionnaire has been retrieved
Success Criteria: Human can fill out the form populating the questions and groups within the Questionnaire
Bonus Point: Enforce conditional display while the user populates the Questionnaire
Bonus Point: Render the Questionnaire taking into account the special rendering/style requirements
Bonus Point: Provider appropriate interfaces to select from a referenced ValueSet

2. Record answers

Action: SDC Form Filler submits completed QuestionnaireResponse to an SDC Form Receiver
Precondition: SDC Questionnaire has been received and populated
Success Criteria: QuestionnaireAnswers instance is available for query on the SDC Form Filler
Bonus Point: Store a partially-completed QuestionnaireResponse
Bonus Point: Validate that the QuestionnaireResponse instance is valid against the Questionnaire and referenced ValueSets

3. Update answers

Action: SDC Form Filler retrieves QuestionnaireResponse instance and associated Questionnaire and displays the Questionnaire with data populated for update
Precondition: SDC Questionnaire and QuestionnaireResponse instances are available for query
Success Criteria: Revised QuestionnaireResponse instance is stored on SDC Form Receiver reflecting user's edits
Bonus Point: Ensure conditional display rules are enforced based on already populated data

Form Population

Objective: Test ability to pre-populate/auto-populate forms

1. Pre-populate a form

Action: SDC Form Filler invokes the $populate operation on an SDC Form Manager passing a Questionnaire id and a C-CDA instance
Precondition:SDC Form Filler has retrieved an SDC Form referencing DataElements which contain xpath mappings to a C-CDA document where the specified paths exist in the test C-CDA instance
Success Criteria: The SDC Form Filler receives a QuestionnaireResponse instance with the matching questions populated
Bonus Point: SDC Form Filler renders content appropriately following conditional display values - including hiding the populated elements that aren't allowed to be displayed

Dynamic forms

Objective: Test use of CDS Hooks to guide Questionnaire completion

1. Dynamically complete form

Action: SDC Form Filler triggers CDS Hook while completing questionnaire. CDS Hook triggers Form Manager passing partially-competed QuestionnaireResponse to return an adjusted Questionnaire containing additional questions based on answers completed thus far. This process may be iterated several times
Precondition: Form Manager is subscribed to necessary hooks
Success Criteria: QuestionnaireResponse is fully submitted against a "custom" Questionnaire designed based on answers

TestScript(s)

Not yet decided

Security and Privacy Considerations

- No expectation of secure connection, authentication, audit, etc. as part of this track