Extending the Platform21st VCM, George Mason University, Fairfax, Va.          Andy Pardue & Ben Mehling
OVID                   The OVID (OpenVista Interface Domain) layer is a                   set of development tools designe...
OVID Technical Capabilities    • Useful for building on the OpenVista/VistA platform:          Traditional applications   ...
Web/Mobile                                        OVID Architectural Overview       Apps                                  ...
A Platform      Using the OVID technology and      framework, community contributors and      Medsphere have created new t...
Sample web front-end
When to consider OVID            VistA provides a strong integrated solution            ...but, Integration is a double-ed...
Integration    HL7                                                              OpenVista                         Image   ...
Extension                                         Patient                                        Dashboard                ...
Extension                                          Patient                                         Dashboard              ...
Migration           Clinical         Flowsheets              OVID-based WebServices     MySQL                          Ope...
Migration           Clinical                                          Pharmacy         Flowsheets              OVID-based ...
Migration               Clinical                                              Pharmacy             Flowsheets             ...
Domain Layer     • A layer of business objects focused on defining the       properties and behavior of the concepts they ...
OVID API     •   RPCBroker, CIABroker, VistalinkBroker interfaces     •   Connection pooling     •   Temporal caching     ...
OVID Domains     • Patient (Demographics)                    • Vital Signs     • Patient Contacts (NOK,                   ...
DDSS & KMR Project     • Middle-tier DDSS       Research Project             Data Services (C83)             from RPMS and...
KMR Services -- What’s available     • CAL layer defines what web services are implemented     • Utilizes HL7 V3 XML objec...
Demonstration         • CCD Document Creation                 Used anonymized data from a large sample RPMS dataset       ...
FM Projection                    FM (File Manager) Projection is a technology that                    “projects” the data ...
FM Projection     Architecture:     • M-engine agnostic (GT.M or Cache)     • Implements a MySQL storage engine that is ba...
FileMan Projection Architecture                      MySQL Clients                SQL Parser/Optimizer     MyISAM         ...
To do     • Indexes on "New Style" FileMan indexes     • Provide better optimizer hints     • Foreign keys     • Prefetch ...
Demonstration24   Copyright © 2010 Medsphere Systems Corporation
FM Visualizer (FMVis)     • Inspect Files          Fields          Data          Globals          Relationships          G...
Standard SQL via DBVisualizer     • Schema inspection     • Queries:          Titles          Users with their titles     ...
Jasper - iReport     • Sample Reports          Users by Title          Signed notes (previous two weeks)          Patients...
• Semantic Web EMR, Wed 6/9 @ 3:15pm     • Medsphere Overview, Fri 6/11 @ 9:00am                          Questions       ...
http://medsphere.org/
Upcoming SlideShare
Loading in...5
×

Medsphere.org: Extending the Platform

495

Published on

Technical review and demonstration of OVID and FM Projection platform technologies given at the June 2010 VistA Community Meeting.

Recording of presentation: https://www.youtube.com/watch?v=NodUayk2YnI

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
495
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Medsphere.org: Extending the Platform

  1. 1. Extending the Platform21st VCM, George Mason University, Fairfax, Va. Andy Pardue & Ben Mehling
  2. 2. OVID The OVID (OpenVista Interface Domain) layer is a set of development tools designed to enable software developers easier access to OpenVista data and applications. OVID is a foundational technology that allows developers to build upon OpenVista (and VistA derivatives) using alternative languages (such as Java) or architectures (such as Web Services/SOA). Vital stats: Originally released: April 2009 License: AGPL Technologies: M, Java Downloads: Open Repository & 2000+ Home: http://medsphere.org/community/project/ovid Recent whitepaper: http://www.medsphere.com/ovid-white-paper2 Copyright © 2010 Medsphere Systems Corporation
  3. 3. OVID Technical Capabilities • Useful for building on the OpenVista/VistA platform: Traditional applications Web/Mobile applications Exposing OpenVista data/logic as Web Services Console based applications Automation and Integration • Ability to create M to Java calls, allowing M applications to call external Java APIs • Ability to create Java to M calls, allowing Java applications to call into M APIs • Supports creating Java domain objects3 Copyright © 2010 Medsphere Systems Corporation
  4. 4. Web/Mobile OVID Architectural Overview Apps • How does OVID work? Communicates over generic transports, such as RPC Broker or CIAi Broker Web Services Repo Java Apps (Thick and Console) Implements an interface for calling existing RPCs Implements an interface to Domain Object Repository FileMan’s “silent” database API (Patient, Order, Medication, etc.) OVID Message OVID Connection RPC/CIAi Broker OVID M/RPCs M/RPCs FileMan OpenVista4 Copyright © 2010 Medsphere Systems Corporation
  5. 5. A Platform Using the OVID technology and framework, community contributors and Medsphere have created new tools and applications: Web Services to CCR/CCD gateway Web Services to DoD KMR middle tier IHS/Medsphere Clinical Flowsheet, Pharmacy and more in development iPhone/iPod application to view patient record in real-time Registration application built on OVID RESTful interface to OpenVista5 Copyright © 2010 Medsphere Systems Corporation
  6. 6. Sample web front-end
  7. 7. When to consider OVID VistA provides a strong integrated solution ...but, Integration is a double-edged sword VistA has not easily adapted to the changing world s in computing, platforms and devices OVID can be used in projects with varying goals: • Integration – the glue between disparate systems • Extension – or a platform on which to build • Migration – a transitional path7 Copyright © 2010 Medsphere Systems Corporation
  8. 8. Integration HL7 OpenVista Image XML Interface OVID Files WebDAV Image Repo Mirth Engine8 Copyright © 2010 Medsphere Systems Corporation
  9. 9. Extension Patient Dashboard OVID OVID Application Domain OpenVista Layer9 Copyright © 2010 Medsphere Systems Corporation
  10. 10. Extension Patient Dashboard OVID OVID Application Domain OpenVista Layer RESTful WebService10 Copyright © 2010 Medsphere Systems Corporation
  11. 11. Migration Clinical Flowsheets OVID-based WebServices MySQL OpenVista11 Copyright © 2010 Medsphere Systems Corporation
  12. 12. Migration Clinical Pharmacy Flowsheets OVID-based WebServices MySQL FDB DIF OpenVista12 Copyright © 2010 Medsphere Systems Corporation
  13. 13. Migration Clinical Pharmacy Flowsheets OVID-based WebServices MySQL FDB DIF OpenVista Bigtable AWS13 Copyright © 2010 Medsphere Systems Corporation
  14. 14. Domain Layer • A layer of business objects focused on defining the properties and behavior of the concepts they represent. Object oriented, reusable across applications. Isolate, as much as possible, underlying complexity and details from the users of the objects. For our purposes, a domain layer should be a simple, repository based approach to accumulating useful domain objects. Extensible to other architectures and platforms (SOAP, REST, Web, etc.) Lowers the ramp up time for new developers to become productive.14 Copyright © 2010 Medsphere Systems Corporation
  15. 15. OVID API • RPCBroker, CIABroker, VistalinkBroker interfaces • Connection pooling • Temporal caching • FileMan/Mumps RPC Access • Support for annotated Java beans15 Copyright © 2010 Medsphere Systems Corporation
  16. 16. OVID Domains • Patient (Demographics) • Vital Signs • Patient Contacts (NOK, • Drug information Guarantor) • Medication Administration Log • Location/Ward/Institution • Orders/Orderable Items Information • Order status/dialog • Kernel Info (e.g. Platform • Patient Movement detection) • Prescriptions/refills • Users/Clinicians (New Person) • Immunizations/refusals • Laboratory Test Results • TIU Document Retrieval • Problems16 Copyright © 2010 Medsphere Systems Corporation
  17. 17. DDSS & KMR Project • Middle-tier DDSS Research Project Data Services (C83) from RPMS and OpenVista “Service Orienting” the Rules Engine Web app container for VueCentric For details, see: http://socraticgrid.org/index.php/documentation.html17 Copyright © 2010 Medsphere Systems Corporation
  18. 18. KMR Services -- What’s available • CAL layer defines what web services are implemented • Utilizes HL7 V3 XML objects for data requests and responses • All service providers (RPMS, OpenVista) implement this interface. (These implementations are called “mappers” because they map from native data elements to the HL7 v3 objects required by the CAL layer.) • CAL layer is implemented as a SOAP Java web services (jax-ws) • Runs within the Glassfish application server • Coding systems are used when available in source data: LOINC, ICD, CPT, NDC, HL7 • Currently implements the following CAL domains: FindPatients GetMedications GetPatientInfo GetAllergies FindProviders GetImmunizations GetProblems GetVitalSigns GetLabResults18 Copyright © 2010 Medsphere Systems Corporation
  19. 19. Demonstration • CCD Document Creation Used anonymized data from a large sample RPMS dataset Aggregation of ~5 domains into a CCD XML file Built on OVID, automated the CCD creation from RPMS in a few hours of developer time • Populating popHealth1 Repository One CCD XML file 2 was created for each patient The import process reads a directory of CCD records in batch, loading each patient into the repository • Population Health Reporting Influenza Vaccination Hypertensive BP Under Control Ad hoc reporting... 1 http://www.projectpophealth.org/ 2 Incomplete CCD record due to popHealth limitation -- clinical coding incomplete/hardcoded19 Copyright © 2010 Medsphere Systems Corporation
  20. 20. FM Projection FM (File Manager) Projection is a technology that “projects” the data structure of OpenVista into a relational database format. Users can query against FM data structures using SQL queries and tools. Vital stats: Planned release: January 2010 VCM! License: AGPL, LGPL Technologies: M, Java, C Downloads: Open Repository Home: http://medsphere.org/community/project/fm-projection20 Copyright © 2010 Medsphere Systems Corporation
  21. 21. FM Projection Architecture: • M-engine agnostic (GT.M or Cache) • Implements a MySQL storage engine that is backed via a network connection to an OpenVista server • Projection model uses SQLi package Capabilities: • Data can then be accessed via J/ODBC data tools and compatible data access development libraries • A Java-based schema and data viewer is included • Current version provides read-only access Uses: • Connect open source or COTS data analysis, reporting, BI tools21 Copyright © 2010 Medsphere Systems Corporation
  22. 22. FileMan Projection Architecture MySQL Clients SQL Parser/Optimizer MyISAM InnoDB FileMan FileMan Storage Engine Storage Engine Storage Engine Visualizer RPC Broker SQL RPCs FileMan SQLi22 Copyright © 2010 Medsphere Systems Corporation
  23. 23. To do • Indexes on "New Style" FileMan indexes • Provide better optimizer hints • Foreign keys • Prefetch results instead of RPC call per row • Custom network socket connection for performance • Eventually, write abilities23 Copyright © 2010 Medsphere Systems Corporation
  24. 24. Demonstration24 Copyright © 2010 Medsphere Systems Corporation
  25. 25. FM Visualizer (FMVis) • Inspect Files Fields Data Globals Relationships Graph25 Copyright © 2010 Medsphere Systems Corporation
  26. 26. Standard SQL via DBVisualizer • Schema inspection • Queries: Titles Users with their titles Average Age & Standard Deviation of Patients Most recent signed notes • Project Files to MySQL from FMVis STATE26 Copyright © 2010 Medsphere Systems Corporation
  27. 27. Jasper - iReport • Sample Reports Users by Title Signed notes (previous two weeks) Patients w/ Allergies • Projection, not Replication Run Report Data alteration Re-run Report27 Copyright © 2010 Medsphere Systems Corporation
  28. 28. • Semantic Web EMR, Wed 6/9 @ 3:15pm • Medsphere Overview, Fri 6/11 @ 9:00am Questions http://medsphere.org/28 Copyright © 2010 Medsphere Systems Corporation
  29. 29. http://medsphere.org/

×