Interface Engines in Healthcare
A computer application that supports the transformation of the syntactic and semantic structures in communication content during transmission from a sending system to receiving system(s), ensuring reliable delivery of the communication and minimizing information loss and semantic shift during the communication.
Before the invention of application programming interfaces (API) and CORBA Interface Definition Language (IDL) files, “interface” was the term used to describe the electronic communication of information between two computers . Today, the term “interface” also refers to communications between layers of software and even between software objects within a software layer. A modern example of an interface is a Web Service Definition Language (WSDL) file in XML format (www.w3.org).
Within early interfaces, the syntax of the communication content, i.e., linear arrangement of characters in the communication exported by the sending system, often could NOT be imported directly by the receiving system. Consequently, transformation procedures were employed to rearrange the characters in the communication into a linear structure that COULD be imported by the receiving system. In the same manner, if terms used by the sending systems could not be imported into the receiving system, a substitution of terms that could be imported by the receiving system was also applied to the communication content.
In order to reduce the burden of computing these transformations on the slower computers of the past, the execution of these transformation procedures was transferred to a separate computer that was placed in-between the sending and receiving computers. As time passed, the ability of these “interface systems” to support better and easier transformation authoring and high “transaction” or messaging volumes, these systems became known in the 1990s as “interface engines,” a new kind of software application in themselves [4, 5].
As the language of the industry evolved, the communications between computers became known as “messages”; the transformation of the syntactic and semantic content became known as “mapping” from sender to receiver; and techniques for ensuring reliable receipt of communications between a sending and receiving computer became known as “reliable delivery protocols” or “reliable messaging protocols.”
However, despite the increasing sophistication of the transformation tools, the industry soon discovered that there was a limited ability to ensure that all the information sent by the sending system could be imported by the receiving system . Information loss and shift in meaning of the communication content was observed when evaluating the information content of the sending and receiving systems after the communication occurred. In many ways, the result was similar to the garbling of sentences that occurs in the children’s games that test the ability of children sitting in a ring to sequentially whisper a sentence into the ear of the next child. The child who initiates the sentence rarely gets the same sentence whispered back by the last child.
As a consequence, organizations that developed standards in support of many other industries began to support standardized messaging structures for the computer industry, including message standards in the healthcare industry. These standards included both the arrangement of “fields” and special characters in the messages and the sets of terms used to populate these fields. In healthcare, the messages most widely used internationally by the year 2000 were authored by a specialized healthcare standards organization, the Health Level 7 (HL7) standards development organization (www.hl7.org), which focused on ISO Level 7 transaction protocols .
These messaging standards reduced the cost of each messaging “interface” between computers by as much as tenfold from the 1980s to the turn of the century. However, the implementation cost of these messaging interfaces (HL7 version 2.x messages) continued to retail at over $20,000 per interface (in addition to the cost of the interface engine), and many hospitals required over one hundred messaging interfaces.
By the early 1990s, planners in HL7 began exploring model-based development methods and new message authoring techniques that would both improve the quality and reduce the cost of communications between computer systems in healthcare. The improvement in quality of communication refers to the preservation of information content and semantic meaning of the communication or what is known as “semantic interoperability.” The reduction in cost comes from decreasing the number of choices allowed to developers who “interpret” the standards into actual application code. The result of this planning effort was the publication of the HL7 Reference Information Model (RIM)  and RIM-derived messages, electronic documents , and web services.
Parallel efforts in other industries as well as the growth of Internet communications between computer systems have caused rapid evolution in both the kinds of communications the healthcare industry wishes to utilize and the techniques for electronically communicating between computer systems.
As the result of many initiatives across industries, there have been great strides in communication methods that no longer utilize the traditional, preconfigured point-to-point HL7 interface engines. The concept of a “bus” was borrowed from the internal computer bus that supports the physical “plug & play” communication of multiple physical components (such as hard drives) within a computer. This concept of a “bus” was abstracted to a “service bus” located within a data center that allows dynamic selection of multiple web services in a service-oriented architecture. As a result, interface communication in a data center no longer needs to rely on a “point-to-point” pre-configured solution. Rather, in a service bus, a “service directory” may be used to dynamically select the method of communication and the endpoint(s) of communication desired. Increasingly, these new kinds of “messaging engines” or “enterprise service buses” are being utilized in healthcare data centers. Finally, “healthcare service bus” is a term used to describe a “virtual service bus” or a system of “federated enterprise service buses” where dynamic web services are supported between individual enterprises and enable healthcare communications across the wider community (www.openhealthtools.org).
Although many people believe that legacy computer systems and traditional, preconfigured point-to-point messaging methods will continue to be used for many years in healthcare, the consequence of new communication techniques used by many other industries is that communication methods in healthcare will also evolve. The role of the traditional data-center-based, HL7 2.x interface engine will gradually be reduced in favor of web-service-based communications that support transformation and routing across healthcare communities.
The scientific study of messaging concepts begins with narrow, reductionist models, e.g., the physics of electrons and gravitational bonds communicating between atoms and within molecules. These concepts are studied within incrementally more complex systems in chemistry labs, organic chemistry labs, genetic and hormonal communications, electronic systems and neural communications, human communication, and finally, in computer systems that support human communication.
The study of messaging was enhanced by the development of communication models, many of which include the concept of state machines. Communication may be defined as “transferring awareness of a change of state in the model of the sending system to the receiving system(s).” This communication may be as simple as informing the receiver of the increase in the state of ionic attraction that occurs when an atom has gained or lost an electron or as complex as informing a second organization that the state of a hospital now includes a patient ready for placement in a nursing home.
The concept of a “state machine” was introduced in the mathematical modeling and electronics literature. A “state machine” was a systems model developed in the 1950s and 1960s to describe state transitions in sequential circuits . Generally, finite state machines describe a model wherein a “state” describes the static “snapshot” or configuration of elements within a modeled system. The visual image generated by the use of the term “machine” is that of a machine moving while an observer takes sequential snapshots, each of which illustrates the machine in different configurations or states. A “process” is the change in configuration or transformation of elements in the state machine, i.e., “state transition.” “Event-driven state machines” highlight the trigger events used in event driven programming and messaging models; one visualizes an operator pushing buttons on the machine. And communication can then be described as the transferring of awareness between two or more systems, specifically, the awareness of the state transition of the sending system. One visualizes sending a picture of the new state of the machine, or perhaps a picture of the new state and a picture of the former state, as soon as the operator pushes the button on the machine.
A trigger event in healthcare is often a clinical observation result on a patient, a clinical order, or other clinical event. Observation results by clinicians characterize the clinical state of a patient during a specific time period. Changes in the clinical state of the patient are tracked by obtaining sequential observation results. When a transition occurs in the clinical state of a patient, the change may trigger a message alerting a physician. A new clinical order by the physician may trigger a message to the lab requesting a new lab test.
In the same manner, changes in the clinical state of the patient may be recorded in an electronic medical record system. The resulting state transition in the electronic medical record system may trigger a message to another electronic system. As illustrated, state transitions in electronic medical record systems are closely related to the clinical state changes in the patient and the awareness of care providers about the clinical state of the patient.
Finally, the study of the science of state changes, the communication of state changes, and the relationship of state changes to electronic communications in healthcare has been applied to more sophisticated techniques for dynamically orchestrating these communications into optimized process flows. Web service orchestrators have evolved as components of data integration engines such as service buses in healthcare. And optimized patient care processes are increasingly implemented with web service orchestrated electronic health record activities (www.infoway-inforoute.ca).
The most common first step in the installation of Hospital Information Systems (HIS) is to establish an identity system for enrolling patients as they enter the hospital, commonly referred to as a “registration system.” When the registration system records a new patient identity or updates an older patient’s demographic information, data about the patient is communicated via messages to other systems, such as order management systems, laboratory systems, and billing systems. This data includes a patient identifier and at least the first name, last name, date-of-birth, gender, and address. Traditionally, point-to-point interfaces are pre-configured within an interface engine from the registration system to the other systems, allowing broadcast of the identity of the new patient or updated demographic information to the other systems. If needed by any of the receiving systems, transformations may be applied to the syntax and semantics of the message that is outbound from the interface engine to each specific receiving system:
Later, if a clinical order is generated within the Order Management System for a patient, a subset of the fields in the Patient Identity message will be included in the clinical order and sent to the laboratory system and billing system via the interface engine. Again, transformations of the message may occur if needed by the receiving systems:
What is illustrated in the two figures above is that in a traditional interface engine scenario, the Registration System is never queried for additional Patient Identity information. Therefore, Patient Identity information is redundantly stored within the other systems. However, as populations managed by systems grow, the inefficiency of redundantly storing Patient Identity information grows as well. As a consequence, larger healthcare systems, such as regional or community-sized systems, are evolving towards a “just in time” communication of Patient Identity. A “service bus” replaces the Interface Engine, and the Registration System is dynamically queried as needed for additional Patient Identity information:
- 1.Collen M. A history of medical informatics in the United States, 1950 to 1990. Bethesda: American Medical Informatics Association; 1995.Google Scholar
- 6.Russler D. et al. Influences of the unified service action model on the HL7 reference information model. In Proceedings Symposium on Computer Applications in Medical Care, 1999, p. 930–34.Google Scholar