1 / 25

Android/OpenMRS Forms/Protocols PeerSync

Android/OpenMRS Forms/Protocols PeerSync. Android/OpenMRS: initial goal. We want applications running on Android phone to save data for use in OpenMRS (for reporting, etc.) Easiest way is to use the same database. Data Model. OpenMRS uses MySQL Android has SQLite3

galena
Download Presentation

Android/OpenMRS Forms/Protocols PeerSync

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Android/OpenMRSForms/ProtocolsPeerSync

  2. Android/OpenMRS: initial goal • We want applications running on Android phone to save data for use in OpenMRS (for reporting, etc.) • Easiest way is to use the same database

  3. Data Model • OpenMRS uses MySQL • Android has SQLite3 • Both SQL databases, transformation possible • We’ve implemented the same data model

  4. OpenMRS API • OpenMRS written in Java. Large, well-organised codebase. • Android applications written in Java (variant). It has been possible to reuse aspects of the OpenMRS codebase. Namely, the API e.g... • Context.getPatientService(patientId)

  5. API benefits • We can write applications using the same vocabulary as OpenMRS – immediately familiar to anyone familiar with OpenMRS code • We leverage lots of good design and implementation work already done. • We exploit logic embedded within the API, e.g. User rights

  6. API has been modified • to remove references to things which don’t run on Android (e.g. Hibernate) • to achieve acceptable performanceon Android (e.g. caching) • Presents maintenance issue as OpenMRS develops new version(s)

  7. Android/OpenMRS application

  8. Device Hardware • Our experience: runs fine on Google NexusOne, does not run well on HTC Wildfire • Downward price pressure

  9. Forms/Protocols • Android facilitates seamless inter-application communication • Android/OpenMRS defines FormEngine interface to communicate with external Android applications which «execute» forms/protocols, e.g. • ODK Collect (modified) • Mangologic

  10. Forms/Protocols

  11. Android/OpenMRS application

  12. PeerSync • A synchronization algorithm to permit «units» to synchronize OpenMRS database. • Units may be Android devices, and/or OpenMRS servers (with PeerSync Module installed). • OpenMRS have a «sync module» but algorithm cannot run on device, and assumes parent-child relationships

  13. PeerSync • Does not deal with conflicts (assumes no synchronous working on patient data can cause contradictory information) • Works over • Local network • Bluetooth • Internet

  14. PeerSync • Makes possible multi-station data-sharing in clinic

  15. Or device-device via a local network, with occasional back-up to server (undisturbed by poor connectivity)

  16. Android/OpenMRS application

More Related