430 likes | 545 Vues
SHARP Area 3: SMART (Substitutable Medical Apps). Josh C. Mandel, MD Joshua.Mandel@childrens.harvard.edu Lead Architect, SMART (http://smartplatforms.org) Research Faculty, Harvard Medical School Sharp Area 4 Face-to-face, July 1 2011. SMART goals. Health IT users work with
E N D
SHARP Area 3: SMART(Substitutable Medical Apps) • Josh C. Mandel, MD • Joshua.Mandel@childrens.harvard.edu • Lead Architect, SMART (http://smartplatforms.org) • Research Faculty, Harvard Medical School • Sharp Area 4 Face-to-face, July 1 2011
SMART goals Health IT users work with installable, substitutableapps Health IT systems benefit from efficient marketplaceof apps vibrant developer community
Why substitutable apps? Improved user experience More integrated innovation Case study: Wired competition
Why substitutable apps? Improved user experience More integrated innovation Case study: Wired competition
Why substitutable apps? David McCandless& Stefanie Posavecfor Wired Magazine informationisbeautiful.net
Vocabulary Apps API Containers
Vocabulary Apps API Containers
A Substitutable App i2b2 SMART Reference EMR Indivo PCHR Your system here.
Vocabulary Apps API Containers
An app runs againstone container (at a time)A container connects to multipledata sources Apps and containers
Web standards!Apps can run on separate servers,different implementation stacks Inspired by Web APIs Facebook, OpenSocial, Google
Data Context, Medical Record ElementsUIStandards-based integration, flexibilityAuthentication In-browser, server-to-server Apps need (at least!)
Contextual data (patient, physician) low-hanging fruitMedical data (blood pressure, cholesterol)existing standards? pragmatic approaches? Apps need data!
CCR: “Licensee may access and download an electronic file of a Document (or portion of a Document) for temporary storage on one computer for purposes of viewing, and/or printing one copy of a Document for individual use. Neither the electronic file nor the single hard copy print may be reproduced in any way.” • Open standards?
What’s practical? PCHRs provide practical data models Indivo http://wiki.indivohealth.org/index.php/Indivo_Document_Model MS HealthVault Data Types: http://developer.healthvault.com/types/types.aspx Google Health Subset of CCR: http://code.google.com/apis/health/ccrg_reference.html
SMART data 80/20 approach concentrate on common outpatient data Payloads specified down to coding systems e.g. SNOMED for problems Extensible representations in RDF iterative design, building models over time
Data principles REST Paradigm: Each patient, data element has a URI John Smith: http://smart-emr.hospital.org/records/123 John Smith’s atorvastatin: http://smart-emr.hospital.org/records/123/medications/456 URIs can map to underlying EMR IDs
Data principles Consistent coding systems Medications: RxNorm (SCD, SBD, Packs) Problems: SNOMED CT Labs: LOINC Containers may need to translate from other terminologies, with provenance
Data principles Consistent coding systems Example of a translated LOINC code Medications: RxNorm (SCD, SBD) Problems: SNOMED CT Labs: LOINC Containers may need to translate from other terminologies, with provenance <sp:labName> <sp:CodedValue> <sp:coderdf:resource="http://loinc.org/codes/2951-2"/> <dcterms:title>Serum sodium</dcterms:title> <sp:codeProvenance> <sp:CodeProvenance> <sp:sourceCoderdf:resource="http://local-emr/labcodes/01234" /> <dcterms:title>Random blood sodium level</dcterms:title> <sp:translationFidelity rdf:resource="http://smartplatforms.org/terms/code/fidelity#automated" /> </sp:CodeProvenance> </sp:codeProvenance> </sp:CodedValue> </sp:labName>
Data principles Consistent coding systems Example of a translated LOINC code Medications: RxNorm (SCD, SBD) Problems: SNOMED CT Labs: LOINC Containers may need to translate from other terminologies, with provenance <sp:labName> <sp:CodedValue> <sp:coderdf:resource="http://loinc.org/codes/2951-2"/> <dcterms:title>Serum sodium</dcterms:title> <sp:codeProvenance> <sp:CodeProvenance> <sp:sourceCoderdf:resource="http://local-emr/labcodes/01234" /> <dcterms:title>Random blood sodium level</dcterms:title> <sp:translationFidelity rdf:resource="http://smartplatforms.org/terms/code/fidelity#automated" /> </sp:CodeProvenance> </sp:codeProvenance> </sp:CodedValue> </sp:labName> source
Data principles Consistent coding systems Example of a translated LOINC code Medications: RxNorm (SCD, SBD) Problems: SNOMED CT Labs: LOINC Containers may need to translate from other terminologies, with provenance <sp:labName> <sp:CodedValue> <sp:coderdf:resource="http://loinc.org/codes/2951-2"/> <dcterms:title>Serum sodium</dcterms:title> <sp:codeProvenance> <sp:CodeProvenance> <sp:sourceCoderdf:resource="http://local-emr/labcodes/01234" /> <dcterms:title>Random blood sodium level</dcterms:title> <sp:translationFidelity rdf:resource="http://smartplatforms.org/terms/code/fidelity#automated" /> </sp:CodeProvenance> </sp:codeProvenance> </sp:CodedValue> </sp:labName> SMART translation source
Data challenges Different coding systems e.g. for medications, NDC RxNorm e.g. for problems, ICD9 SNOMED CT (?) Different models e.g. is a problem event-at-a-time, or duration? No models – can’t expose data you don’t have. (but some may be worth storing, e.g., fulfillments)
SMART governance Open specifications, documentation Open-sourcereference implementation Open-source client libraries Apps and Containers needn’t be open-source (promote a commercial ecosystem)
Ongoing projects • Translation / Integration efforts • CHB’s Cerner • OpenMRS • HealthVault, Indivo • i2b2 • Exploring • Extended data models • Integration of CDS • Mobile apps + containers
Discussion topics! • Cross-SHARP sharing of: • sample data • logical models • Collaboration around • integrating SHARPN functionality as SMART apps (e.g. CTAKES pilot) • extracting patient record data • Other opportunities?
Health IT systems have different authentication mechanisms!How to keep apps agnostic?Each container implements a consistentmechanism for delegating access: OAuth.The app only needs to speak OAuth. Authentication Authentication
App distribution model? Light,test-driven certification as SMART Independent groups may endorse apps Individual containers install selected apps • (local arrangements, e.g. contractual terms)