Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
Individual Project Background
CSE
2102
What is Personal Health Assistant (PHA)?
Patient Version for Medication and Chronic
Disease Management and Authorizing Providers
Identify Overmedication , adverse interactions, and
adverse reactions
Provider Version for Viewing Patient Data that has
been Authorized
Personal Health Record Microsoft HealthVault
A Person Can Track Medical Information
Used as Backend Repository to PHA
OpenEMR Standalone version for Providers
Seek to Integrate into PHA
Support Medication Reconciliation
Project-1
Four Code Repositories
CSE
2102
Android PHA-Patient
iOS PHA-Patient
iOS PHA-Provider using Titanium/Javascript
Security Backend for PHA
Project-2
PHA Android Verison
CSE
2102
Project-3
PHA Android Version
CSE
2102
Project-4
PHA Android Version
CSE
2102
Project-5
PHA Android Version
CSE
2102
Project-6
PHA Android Version
CSE
2102
Project-7
PHA Android Version
CSE
2102
Project-8
PHA Android Overview Screen
CSE
2102
Project-9
Introduced Categories of Meds
CSE
2102
OpenEMR
MSHV
Project-10
PHA iOS Version
CSE
2102
Project-11
PHA iOS Version
CSE
2102
Project-12
PHA iOS Version
CSE
2102
Project-13
PHA iOS Version
CSE
2102
Project-14
PHA iOS Version
CSE
2102
Project-15
Miscellaneous Declarations
CSE
2102
Classes used by Other classes (inclusion)
Enumeration Types
Project-16
Misc Class Declarations
CSE
2102
Project-17
Misc Class Declarations
CSE
2102
Project-18
TrackedItem Declarations
CSE
2102
Tracks the Different
Conditions, ODLs, Meds that have or are being
Tracked
Project-19
TrackedItem Class Declarations
CSE
2102
Project-20
TrackPatientData Hierarchy
Bring Together all of the Concepts
CSE
2102
Project-21
TrackPatientData Class Declarations
CSE
2102
Project-22
Condition Class Declarations
CSE
2102
Project-23
ODLs and Medications Declarations
CSE
2102
Project-24
Person and Patient Declarations
CSE
2102
Project-25
Exercise Declarations
CSE
2102
Project-26
Instantiating the Classes
CSE
2102
Project-27
The Big Picture
CSE
2102
Project-28
Other Capabilities
CSE
2102
Two Types of ODLs
Condition/Exercise/ODL
Collect Patient Entered data on
Condition/Exercise/ODL
Modifying, if necessary, the ODL and Medication
screens that already exist
Hooking the current ODL and Medication screens so
that information is stored in the new classes
Lots of Sample Screens for Conditions Given in the
Rest of this Presentation
Project-29
Conditions/ODLs/Exercise
CSE
2102
Create a new Condition/Exercise/ODL
Each New Condition/Exercise/ODL needs
TrackedItems Entry
This is Part of Patient Class
Placed in TrackedItemsListMSHV
For Condition/Exercise/ODL
Collect Entered data on Condition/Exercise/ODL
Actual Data for a Condition/Exercise/ODL
E.g., Diabetes would have
Glucose Level
Carbs Eaten
Type of Fasting
Insulin Taken
Project-30
PHA in Eclipse
CSE
2102
Project-31
Additional Functionality
CSE
2102
Two Broad Focuses for
Update Prescription Screen with OpenEMR
Integration and FDA Daily Meds Access
New Medication Reconciliation and Interaction
Checking Screen and Algorithms
Project-32
Revised Architecture
New External Sources
XML
MS
Health
Vault
CSE
2102
Middle-Layer Server
With REST API
NDF-RT
ASP.Net API
RxNorm
XML
OpenEMR
JSON
XML
JAVA APIs
XML
JSON
RxTerms
FDA
Daily
Meds
Personal Health Assistant (PHA)
Patient App
•
•
•
•
Medications
Allergies
Procedures
Demographic
Provider List
Security Policies
Proivder App
•
•
•
•
Medications
Allergies
Procedures
Demographic
Patient List
Authorization by Role
New
Interaction
Checker
Screen
Project-33
Design new Interactions Screen
CSE
2102
Use Current
Web Version as
Example
Project-34
Use of REST APIs
CSE
2102
RxNorm names for clinical drugs linked to drug
vocabularies used in pharmacies
RxTerms interface terminology derived from RxNorm
for medication history recording
NDF-RT is a concept-oriented terminology
http://rxnav.nlm.nih.gov/RxNormAPIs.html#
http://rxnav.nlm.nih.gov/RxTermsAPIs.html#
http://rxnav.nlm.nih.gov/NdfrtAPIs.html#
FDA Daily Meds
http://dailymed.nlm.nih.gov/dailymed/help.cfm#w
ebservices
Project-35
Component Organization
CSE
2102
Develop Test Java Program with Client Classes that
Gets you Familiar with Retrieving from all Four APIs
RxNorm, RxTerms, NDF-RT, FDA Daily Meds
Consider Following Decomposition of Project
Java Test/API Program for Interaction Checking
Mods to Current Med Screen
New Checking Interaction Screen
Project-36
Final Capabilities
CSE
2102
Revisions to Medication Screen:
Organize Drugs by MSHV and OpenEMR
OpenEMR are read-only - cannot be changed
Link from Med to FDA Daily Meds
New Medication Checking Screen: This can be
Combined list of meds (MSHV & OpenEMR)
Returns a list of meds and their interactions
Usage of External Web Services:
FDA Daily Meds, RxNorm, RxTerms, NDF-RT
Updated Doc:
http://www.engr.uconn.edu/~steve/Cse2102/MSHVan
dOpenEMRAccess.pdf
Project-37
Observations of Daily Living
CSE
2102
Observations of Daily Living and PHRs
Passive – Once Initiated, Collects Data
Accelerometer
Pedometer
Pill Bottle that Sends a Time Stamp Message (over
Bluetooth?) to SmartPhone
Active – Patient Initiated
Providing Information via Smartphone on:
–
–
–
–
Diabetes (Glucose, Weight, Insulin)
Asthma (Peak Flow, use of Inhaler)
Heart Disease (Pulse, BP, Diet)
Pain, Functional status, Fatigue, etc.
Project-38
Architecture Diagram
CSE
2102
Medication/
Supplement
Interaction Checker
PHA Provider
ODL and Chronic
Disease Analyzer
Medication & Observations of
Chronic Disease Daily Living (ODL)
Management
PHA Patient
Apache/Tomcat
Web/Application
Server
MySQL
Database
Server
OpenEMR
Personal Health
Record (PHR)
Microsoft
Healtvault
Figure 1: Architecture Diagram of the Project this Semester.
Project-39
Diabetes Management
CSE
2102
Project-40
Overall Architecture
CSE
2102
Current
glucose
level
Glucose
level 1hr
after meal
Meals
Management
System
Exercises
Glucose
level 2hr
after meal
Current
Medications
Decision Support
System
Dose of
medications
Dose of
insulin from
pumps
Project-41
Current Architecture
XACML
XML-RR
Health Vault
Middle-Layer Server
Harvard
SMART
EMR
ASP.Net API
SMART
Container
RDF
XML
MS
Health
Vault
CSE
2102
XACML
Rest API
RDF-RR
JSON
JSON
SMARTSync
Personal Health Assistant (PHA)
Patient App
•
•
•
•
Medications
Allergies
Procedures
Demographic
Provider List
Security Policies
JSON
Proivder App
•
•
•
•
Medications
Allergies
Procedures
Demographic
RxTerms
NDF-RT
RxNorm
Patient List
Authorization by Role
Project-42
Current Architecture
CSE
2102
SMART
REST API
SMART
Connect
SMART Dashboard
RDF Data
Model
HealthVault
openEMR
HealthVault Middleware
Server
SMART Container
JSON API
SMART
REST API
SMART Container
openEMR
SMARTSync
RxTerms
RxTerms
NDF-RT
NDF-RT
RxNorm
RxNorm
Project-43
HealthVault RESTful Exchange Service
Web-Services
CSE
2102
User Profile
Medication List
Allergies List
Conditions List
Lab Tests and Results List
Procedure List
Observations of Daily Living List
HealthVault Offline
Connection
Person ID
HealthVault Record Finder
and Access
Offline Connection
Record ID
.NET ↔ JSON Conversion
.NET → JSON on GET requests
JSON → .NET on POST requests
Demographic Information
Medications
Allergies
Conditions
Lab Tests
Procedures
Observations of Daily Living (ODLs)
Project-44
HealthVault Class – JSON Mapping.
Medications
CSE
2102
JSON Structure
MSHV Class
[{
Member Properties
DateDiscontinued (ApproximateDateTime)
DateStarted (ApproximateDateTime)
Dose (GeneralMeasurement)
Frequency (GeneralMeasurement)
Name (CodableValue)
Note (CommonItemData)
Route (CodableValue)
Strength (GeneralMeasurement)
"Key":"String content",
"DateDiscontinued":"String
content",
"DateStarted":"String content",
"Dose":"String content",
"Frequency":"String content",
"Route":"String content",
"Name":"String content",
"Note":"String content",
"Prescribed":"String content",
"Strength":"String content"
}]
Allergies
MSHV Class
JSON Structure
Member Properties
[{
AllergenCode (CodableValue)
AllergenType (CodableValue)
FirstObserved (ApproximateDateTime)
IsNegated (Nullable)
Name (CodableValue)
Reaction (CodableValue)
Treatment (CodableValue)
}]
"Key":"String content",
"AllergenCode":"String content",
"AllergenType":"String content",
"FirstObserved":"String content",
"IsNegated":2147483647,
"Name":"String content",
"Reaction":"String content",
"Treatment":"String content"
Project-45