This repository has been archived by the owner on Sep 2, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 5
Architecture Planning Louis
Louis Ades edited this page Oct 24, 2017
·
6 revisions
- Testing
- Test Measures – Sam and Dave’s picks
- At least one happy path
- At least one not-so-happy path
- Happy path will be the only one worked with earlier on for each standard.
- Especially in the second round of implementing functionality for HQMF
- Test Measures – Sam and Dave’s picks
- Patient Source
- Requirements
- Interact with Mongo for all patient storage
- QDM (early, CQL version) Patient structure
- QDM (later, HQMF version) Patient structure
- Load QDM patient
- Translate HDS Patient model to QDM (existing)
- Load HDS patient
- External Libraries/Resources
- Existing Models for both CQL and HQMF versions of QDM, just not in ES6 Javascript as we need it
- CQL
- qdm.5.3.xsd
- qdm-modelinfo-5.3.xml
- Generated Typescript models by Sam/Andy
- Need to ask out which one of the xml or xsd was used to generate the Typescript models, which tools were used, and then generate them to ES6 Javascript classes
- CQL
- patientapi
- Translate HDS patient to QDM, version number of what HQMF uses
- Unclean in structure right now, even has extensions in hqmf2js. May want to be refactored in a new branch to clean it up.
- 100% ready to be used in Javascript--called directly to translate the patient. Included as a gem file (thanks to Rails), called directly.
- Translate HDS patient to QDM, version number of what HQMF uses
- cql-patient-api
- Translate HDS patient to QDM, version number of what CQL uses
- 100% ready to be used in Javascript--called directly to translate the patient. Included as a gem file (thanks to Rails), called directly.
- Literally calling
new CQL_QDM.CQLPatient(my_hds_patient)
- Literally calling
- Existing Models for both CQL and HQMF versions of QDM, just not in ES6 Javascript as we need it
- Acceptance Criteria
- First Pass
- Patient returned, consistent with cql-patient-api specs
- Second Pass
- HQMF integration included as a second option
- Patient returned, consistent with patientapi specs
- First Pass
- Requirements
- Measure Source
- Requirements
- Interact with Mongo for all measure storage
- Interact from both a web endpoint, and from a Node.js endpoint (such as Mongoose)
- Measure Logic models
- Load HQMF measures interpreted as JavaScript
- Load CQL measures interpreted as Elm
- Interact with Mongo for all measure storage
- Existing Libraries
- Bonnie
- Acceptance Criteria
- First Pass
- CQL measure data returned, in a format ready to be run through cql4browsers
- Second pass
- QDM-based HQMF measure data returned, in a format ready to be map-reduced against patients
- First Pass
- Requirements
- Execution Engine - All using V8
- Requirements
- Execute HQMF measures against older QDM version patients
- Execute CQL measures against newer QDM version patients
- Existing Libraries
- clinical_quality_language has the execution framework
- cql_qdm_patientapi also has the latest version of the browserified version of the execution framework, can be invoked directly in JavaScript
- Acceptance Criteria
- First pass
- For CQL, take patients and measures as arguments, return results model with calculation results
- Second pass
- Same as first pass, but for HQMF
- First pass
- Requirements
- Results Storage and Loading
- Requirements
- Interact with Mongo for results storage
- Models/interfaces for storing results
- Acceptance Criteria
- js-ecqme can save results from measure calculations in the execution engine
- js-ecqme can load and retrieve results from desired run
- Requirements