OpenHIE
OpenHIE Academy Course 110
Overview of the OpenHIE Architecture
February 2019
Introduction to the Course
Course Instructors
Samson Yohannes, Ethiopian Institute of Technology - Mekelle
Jennifer Shivers, Regenstrief Institute
Additional Contributions From
3
4
Learning Objectives
By the end of this session, learners will be able to:
5
Enterprise Architecture
6
Service Oriented Architecture (SOA)
7
Monolithic Architecture
to facilitate business requirements
piled into a single monolithic application
upgrading is a nightmare
8
Microservices Architecture
9
OpenHIE Architecture Community
Architectural and Exchange Patterns
Developed in a community process
Applied to your context and setting
OpenHIE Architecture
10
Microservices Architecture
11
eHealth Architecture
The eHealth Architecture is the foundational plan or blueprint that creates a framework for how the HIS subsystems interact.
It may include:
OpenHIE Architecture Overview
13
OpenHIE Architecture Community
OpenHIE Architecture
What is the value of having an architecture that supports Health Information Exchange?
14
|
15
|
Goal:
Support Healthcare Through Data Sharing Capabilities
OpenHIE Architecture
A community approach to
16
Supporting Global Health Information Needs | Individual Patient Care (Clinical)
| Population and Public Health
| Healthcare Administration
|
Through Support of Data Sharing Capabilities | | ||
Designed with Architected Standards-based Solutions | | ||
OpenHIE Architecture and Specification and Testing
OHIE Architecture Capabilities
Vignette
17
Pregnant Woman
Community
Care
Clinic
Care
Hospital
Birth
A pregnant woman may receive clinic care for ANC1, community care for ANC2 and 3, and then may need to deliver at a hospital due to complications.
This leaves her health data spread across three different systems and her treatment providers are challenged to see a complete picture of care.
Vignette
18
Pregnant Woman
A pregnant woman may receive clinic care for ANC1, community care for ANC2 and 3, and then may need to deliver at a hospital due to complications.
With a Health Data Exchange, her records from all three sites can be linked and that link can be used to show a shared view of her health records.
Community
Care
Clinic
Care
Hospital
Birth
19
OpenHIE Architecture Overview
OpenHIE Architecture Community and Sub Communities
Architecture Diagram
Component Requirements
Workflows / Data Exchanges
20
OpenHIE Architecture - Patterns
Additional Reading and References
21
Registry Services
23
OpenHIE Architecture - Patterns
24
Registry Services
Registry services are designed to support interoperability and data normalization by providing authoritative sources for data and metadata that are used throughout the eHealth system.
Registry Services
(Shared Services)
Water image: Michael Tewelde/USAID Lowland WASH ActivityMichael Tewelde/USAID Lowland WASH Activity
25
26
Client Identity Management
Hosp. B Client ID
Hiwott Patient ID 99999
Hiwott
Hiwott Patient ID 123456
Clinic A Client ID
Client Registry
Client Registry (Enterprise Master Patient Index): a master patient index (MPI), or Client Registry manages the unique identities of citizens receiving health services with the country
Hosp. B Client ID
Hiwott Patient ID 99999
Client Registry
Hiwott Patient CR ID 5555555555 |
Clinic ID 123456 + demographics |
Hospital ID 99999 + demographics |
Hiwott
Hiwott Patient ID 123456
Clinic A Client ID
28
Health Worker Registry
Health Worker Registry
Health Worker(s)
Health Worker Registry (eHIRIS) : a health worker registry uniquely identifies each individual who works within the healthcare system and may track information about their qualifications.
29
29
Nigeria
30
30
Nigeria
31
Facility Registry
Facility Registry
Facilities
Master Facility Registry (MFR) : a MFR manages the unique id and attributes of the locations where health services are administered or supported.
32
32
Kenya - http://kmhfl.health.go.ke
33
33
Kenya - http://kmhfl.health.go.ke
34
34
Tanzania
35
Registry Services
Registry services are designed to support interoperability and data normalization by providing authoritative sources for data and metadata that are used throughout the eHealth system.
36
Product Registry
A Product Registry serves as the source of truth about what a Product is within an HIE.
37
Terminology Service
38
Registry Services
Registry services are designed to support interoperability and data normalization by providing authoritative sources for data and metadata that are used throughout the eHealth system.
Additional Reading and References
39
Business Domain Services
41
Business Domain Services
Services that support a particular domain and may be used by other HIS systems.
42
Distributed Health Record
Clinic A Client ID
Hosp. B Client ID
Hiwott
Hiwott Patient Records
Hiwott Patient Records
Health Post
Client ID
Hiwott Patient Records
A pregnant woman may receive clinic care for ANC1, community care for ANC2 and 3, and then may need to deliver at a hospital due to complications.
This leaves her health data spread across three different systems and her treatment providers are challenged to see a complete picture of care.
43
Shared Health Record
Shared Health Record
Shared Health Record : collection of fully normalized person-level data records.
Hiwot Patient
Clinic A Client ID
Hosp. B Client ID
Hiwott
Hiwott Patient
Hiwott Patient
Health Post
Client ID
Hiwott Patient
44
45
Business Domain Services
Services that support a particular domain and may be used by other HIS systems.
Additional Reading and References
46
Putting it All Together
48
49
Interoperability Service
The interoperability layer provides:
50
OpenHIE Architecture Overview
OpenHIE Architecture Community and Sub Communities
Architecture Diagram
Component Requirements
Workflows / Data Exchanges
Note: OpenHIE also has Exemplar Software demonstrating the workflows, but OHIE is not software
Additional Reading and References
51
52
Workflows - Patterns
(Information Exchanges)
https://ohie.org/architecture-specification/
53
Shared Services Example
Abraham is a child that has been seen by both a community health worker and a clinic worker during the first 4 months of life. While he received immunizations in both service locations, bringing those data together imply being able to uniquely identify similar immunizations from each location (ie, Polio vaccine) as well as distinguishing the service location.
Shared services allow data emitted from both an EMR and a mobile app to be normalized consistently. The Shared Health record allows this normalized data to be made available to the larger enterprise.
54
|
Shared Services
Master Facility Registry
Health Data Dictionary
iHRIS
Client Registry (EMPI)
Shared Health Record
EMR
Mobile App
Interoperability Service
1.
1.
2.
2.
3.
3.
4.
4.
55
Scenario Exercise
Use the architecture diagram the the future state scenario described on the next slide to:
56
Background |
|
Health Post - Mobile App (CHMA) |
|
Clinic - EMR |
|
Health Post - Mobile App (CHMA) |
|
Clinic - EMR |
|
Scenario Exercise
57
Scenario Exercise - Answers
Components used to support the scenario:
58
Scenario Exercise
Use the architecture diagram the the future state scenario described on the next slide to:
59
Background |
|
Health Post - Mobile App (CHMA) |
|
Clinic - EMR |
|
Health Post - Mobile App (CHMA) |
|
Clinic - EMR |
|
Scenario Exercise
60
Scenario Exercise - Answers
Note: There can be many different answers depending upon how the scenario was interpreted, but these are some key points that should be present.
1a. Patient is registered in the point of care system (in this case the EMR or the mobile system.) The patient’s demographic data is sent through the interoperability layer.
1b. The point of care system ID is stored in the client registry and linked to a unique ID for that patient in the health exchange. The Client Registry will link the IDs from the Mobile system.
1a
1b
1a
61
Note: There can be many different answers depending upon how the scenario was interpreted, but these are some key points that should be present.
2a. The patient visit data is sent to the interoperability layer.
2b. The interoperability layer translates the patient ID from the sender’s ID to the Health Exchange ID in the client registry.
2c. Visit data from the point of care system is stored in the shared health record.
2a
2b
2a
2c
Scenario Exercise - Answers
62
Note: There can be many different answers depending upon how the scenario was interpreted, but these are some key points that should be present.
3a. There is a request to see the patient’s full record.
3b. The interoperability layer translates the patient ID from the requestor’s ID to the Health Exchange ID in the client registry.
3c. The Shared health record receives the request for the patient record.
3d. The record is sent to the interoperability layer.
3e. The record is sent back to the point of care system.
3a
2b
3a
3c
3d
3e
3e
Scenario Exercise - Answers
63
Course Evaluation
64
Course Evaluation
Please proceed to the evaluation questions.
65
Evaluation Question 1
66
Evaluation Question 1
A FR (facility registry) manages the unique id and attributes of the locations where health services are administered or supported.
67
Evaluation Question 2
2. In one health district, there is a hospital and a clinic. Mothers may do antenatal care at either facility and may give birth at another. What part of the architecture can help manage a patient's identity across systems?
68
Evaluation Question 2
2. In one health district, there is a hospital and a clinic. Mothers may do antenatal care at either facility and may give birth at another. What part of the architecture can help manage a patient's identity across systems?
The CR helps link a single patient’s identity across multiple systems.
A SHR (shared health record) supports data from multiple point of care systems and creates a comprehensive health record for a patient.
69
Evaluation Question 3
3. What component will help ensure that medical symptoms that are used in an EMR can be analyzed with symptoms from a mobile community patient application?
70
Evaluation Question 3
3. What component will help ensure that medical symptoms that are used in an EMR can be analyzed patient with symptoms from a mobile community patient application.
A TS (terminology service) manages the medical terminology used in the health system. It can be used to support data standards that are used in other applications or to support mapping terminology from one system to another.
71
Evaluation Question 4
4. What is an example of a point of care system.
72
Evaluation Question 4
What is an example of a point of care system.
Some examples of point-of-care systems are an EMR or a mobile system which is implemented at a point of care such as a clinic or as an application for a community health worker to use. Laboratory systems and pharmacy systems may also be examples of point-of-care systems.
73
Evaluation Question 5
What is the value of having an enterprise architecture?
74
Evaluation Question 5 - Answer
What is the value of having an enterprise architecture?
Among other things, an enterprise architecture creates value by creating a plan that:
75
Evaluation Question 6
6. The OpenHIE Architecture Specification provides which of the following information:
76
Evaluation Question 6
The OpenHIE Architecture Specification provides which of the following information:
The OpenHIE Architecture Specification provides:
77
Evaluation Question 7
If I need to create a way to link patient identities from an EMR and a mobile application, which OpenHIE components support that functionality?
78
Evaluation Question 7- Answer
If I need to create a way to link patient identities from an EMR and a mobile application, which OpenHIE components support that functionality?
The EMR and the mobile app are point-of-service systems that can send their identities through the interoperability layer to the client registry.
79
END
80
81
82
83
Quality Attributes
84
Begin to discuss
85
Registry Services
Registry services are designed to support interoperability and data normalization by providing authoritative sources for data and metadata that are used throughout the eHealth system.
86
Quality Cont..
Category | Quality Attribute | Description |
Design Qualities | Conceptual Integrity | Defines the consistency and coherence of the overall design. This includes the way components or modules are designed |
Maintainability | Ability of the system to undergo changes with a degree of ease. | |
Reusability | Defines the capability for components and subsystems to be suitable for use in other applications |
87
Quality Cont..
Category | Quality Attribute | Description |
Run-time Qualities | Interoperability | Ability of a system or different systems to operate successfully by communicating and exchanging information with other external systems written and run by external parties. |
Manageability | Defines how easy it is for system administrators to manage the application | |
Reliability | Ability of a system to remain operational over time | |
Scalability | Ability of a system to either handle increases in load without impact on the performance of the system, or the ability to be readily enlarged. | |
Security | Capability of a system to prevent malicious or accidental actions outside of the designed usages | |
Performance | Indication of the responsiveness of a system to execute any action within a given time interval. | |
Availability | Defines the proportion of time that the system is functional and working. It can be measured as a percentage of the total system downtime over a predefined period. |
88
Quality Cont..
Category | Quality Attribute | Description |
System Qualities | Supportability | Ability of the system to provide information helpful for identifying and resolving issues when it fails to work correctly. |
Testability | Measure of how easy it is to create test criteria for the system and its components | |
User Qualities | Usability | Defines how well the application meets the requirements of the user and consumer by being intuitive |
89
Quality Cont..
Category | Quality Attribute | Description |
Architecture Quality | Correctness | Accountability for satisfying all the requirements of the system. |
Non-runtime Quality | Portability | Ability of the system to run under different computing environment. |
Integrality | Ability to make separately developed components of the system work correctly together. | |
Modifiability | Ease with which each software system can accommodate changes to its software. | |
Business quality attributes | Cost and schedule | Cost of the system with respect to time to market, expected project lifetime & utilization of legacy |
Marketability | Use of system with respect to market competition. |