Abstract
Background and Problems
The National Taiwan University Hospital (NTUH) has about 2,200 beds for inpatient services and serves approximately 7,000 outpatients daily. The Healthcare Information System (HIS) was built over 25 years ago under the IBM/SNA Patient Care System network architecture OS 390 environment with a hierarchical IMSDB database. 1 The NTUH HIS contains multiple components that operate independently, such as the Outpatient Information Systems, Inpatient Information System (IIS), Emergency Information System, and Laboratory Information System (LIS) as well as the Radiology Information System (RIS) with the Picture Archiving and Communication System (PACS) feature. The client/server approach was designed and implemented in the system. 2,3
Over time, the built-in technologies have become obsolete, and an integration among the HIS components has become inevitable. In addition, new demands have been acquired by the NTUH faculty and staff that are either medical- or administrative-related issues in order to cope with the advancement and improvement of technologies 4,5 (e.g., security, user-friendly Web browsing, wireless connections, e-learning environment, etc.). In recent years, healthcare regulations have been changing rapidly in Taiwan. Under these circumstances, the IBM HIS system needs to reflect the modifications and enhancements accordingly, eventually causing the system adaptation to become increasingly more difficult. Moreover, the annual maintenance charge of the IBM HIS system is significant, with the expense being a heavy burden for the NTUH.
Since December 2003, NTUH has begun to redesign and reconstruct the HIS to establish effective, financially manageable, and integrated services in order to provide an electronic educational healthcare environment. Here, we focus on IIS development and implementation. In the following sections of this article, we first illustrate the design of the overall IIS architecture. Detailed descriptions of system components and integration mechanisms as well as protocol stacks are described first. Then an integrated and a collaborative inpatient service with a data flow scenario and sequence is provided. Finally, the performance evaluations of IIS components are presented and discussed.
System Architecture
After a requirement analysis, we chose a four-tier infrastructure and service-oriented architecture (SOA) through the Web services 6 –8 as our IIS development and deployment platform. 9 –12 The overall IIS frameworks are depicted in Figure 1. Within the diagram, individual components are described below.

National Taiwan University Hospital's Inpatient Information System architecture and components. HIS, Healthcare Information System; HL7, Health Level 7; LIS, Laboratory Information System; PACS, Picture Archiving and Communication System; RIS, Radiology Information System; SOAP, Simple Object Access Protocol; UI, user interface; UDDI, Universal Description, Discovery, and Integration.
In the diagram, we adopt Web-based services for user-friendly browsing interfaces. 13,14 The portal servers and the Web user interface (WebUI) servers are introduced. The servers generate Web-based pages and construct dynamic web URL linkages directly to HIS components as well as their ancillary subsystems. 15 –17 The portal site requires a login process. In addition, we enhanced the login mechanism using a public key infrastructure that is based on Smart Client, 18 according to the National Healthcare Insurance Card requirements in Taiwan. Furthermore, the WebUI servers provide the connectivity between the portal servers and subsystems. 19
The Win-session servers and Web-session servers integrate the system authentication and authorization facilities via a Simple Object Access Protocol (SOAP) communication mechanism. The single sign on service is enabled. The state-session servers store the user's Web session status variables for analyzing user logic and validation. The Health Level 7 (HL7) 20 –22 framework is the middleware integration engine of the IIS architecture. 23 –25 It supports message management, routing, mapping, and database access. Detailed information about the processing of each message is also automatically logged by the engine. Moreover, the engine “glues” the medical systems (or applications) together. The HL7 middleware accesses the HL7 message embedded in XML format using SOAP. 26 –30
In order to achieve data consistency, we introduced a data exchange server that only receives the message sent from the HL7 middleware. While the data exchange server is receiving messages, it will perform the data synchronization among patient demographic data in HIS, patient radiology information orders to the RIS database, or laboratory orders to the LIS database. This data exchange process can ensure that all data in systems are up to date and synchronized. 31 –33
To increase the performance of the NTUH HIS, a cluster of identical servers is deployed and dispatched dynamically by introducing layer 4 switches and layer 2 switches. All the servers are configured, running under load balancing as well as failover modes to ensure the system's availability and concurrency. Firewalls are also installed to enhance the security of the architecture. A batch engine periodically checks the pharmaceutical inventory as well as the inpatient diet distribution and delivery. The lock server provides the sequence number (i.e., critical region) for the batch engine that is handling diet and pharmacy scheduling.
Protocol Stack
The new generation of the IIS infrastructure protocol stacks (Fig. 2) is based on a four-tier architecture under Microsoft Web services (.NET). 34 It logically separates the media transport protocols, middleware layer (SOA), and service layer (including back-end database) as well as front-end clients within the infrastructure. It enables the NTUH IIS service providers to address individual modules' needs by designing solutions independently at each tier.

Inpatient Information System protocol stack. LAN, local area network; MAN, metropolitan area network; WAN, wide area network.
In the diagram, Tier 1 is clients. Tier 2 is the media-processing protocol layer that consists of media gateways that accommodate traffic from various access media, including wired, wireless, narrowband, and broadband communications. It also bridges different signaling, enabling service providers to integrate traffic from networks using disparate protocols. Soon, the architecture will extend to cover wireless features as well.
In Tier 3, the HL7 messages, used in NTUH IIS architecture, transfer over SOAP. SOAP with HL7 is a lightweight protocol for customizable messages exchange in the IIS framework. In addition, the HL7 fields are created dynamically by the HL7 Library 35 to enhance performance spatially and temporally.
Tier 4 focuses on services and application creation. The infrastructure provides an open environment for the interconnection among IIS servers that enable rapid service customization and deployment. The services include computerized physician order entry (CPOE), billing, pharmacy, diet, etc. The four-tier distributed IIS framework makes components interoperable as well as integration feasible. 36 –39
The four-tier IIS infrastructure software modules are described and depicted in Figure 3. At the upper portions of the diagram, it shows that the IIS services are categorized into Windows applications and Web applications. These applications provide IIS services (i.e., Smart Client printing system, billing, diet, order management, etc.). In addition, single sign on service, user interface, and session management for authentication and authorization are included. All of these services reside on the portal servers, WebUI servers, state-session servers, Web-session, and Win-session servers covered in the System Architecture section.

Inpatient Information System infrastructure software modules.
The middle portions of the diagram consist of the HL7 middleware modules. The modules handle message management, routing, mapping, and database access as well as connectivity among IIS components. Furthermore, a Document Object Model-like HL7 message library (HL7 Library) is implemented in the module. 35 Initially the HL7 Library generates all the fields of the message in the HL7 message. It is both spatially and temporally expensive. Later, we enhance the Library by creating fields dynamically as needed. Moreover, the HL7 transfer engine exchanges or maps HL7 messages between IIS (implemented in C#) and RIS (implemented in Java). The lower portions of the diagram containing data exchange modules handle multiple database integrations as well as redirections to the third-party outsourcing systems (i.e., RIS with PACS, LIS, etc.). 40 –42
The module-based architecture apparently makes the IIS software components reusable and resource-sharing effective and efficient. The approaches make IIS development and deployment technically sophisticated as well as economical.
Integrated and Collaborative Service Data Flow Scenario
In this section, a scenario illustrates collaboration and interoperability among IIS modules as well as other components (RIS with PACS, LIS, CPOE, etc.) in NTUH.
IIS Integrated Data Flow
For example, a pediatrician examines an inpatient. The pediatrician logs into the NTUH IIS initially, and, after validation, the pediatrician enters into the CPOE Web page. While diagnosing, the pediatrician advises the inpatient to take an echocardiogram examination in the Radiology Department. The radiology scheduling Web page pops up, and the pediatrician makes the service arrangement for the inpatient. After being scheduled, the inpatient goes for the echocardiogram check. The films are retrieved later by the pediatrician for further examination and treatment. Finally, the pediatrician finishes the case. The scenario with the Web page snapshots are shown in Figure 4.

Inpatient Information System integrated data flow scenario snapshots. CPOE, computerized physician order entry.
The sequence diagram of the scenario is depicted in Figure 5. The SOA HIS has integrated the IIS, RIS with PACS, LIS, etc., under the .NET environment. At the beginning, the requests and responses are exchanged for validation via authentication/authorization by a generated session key. After the session is established, HL7 middleware delivers the scheduling information to the IIS Web page. Meanwhile, the patient demographic data are forwarded to RIS and PACS from IIS via HL7 middleware and, subsequently, the data exchange server. In addition, the radiology scheduling information in RIS can be retrieved by the data exchange werver, and the information is then displayed at the user's Web page. Requests and responses among the associated components in the scenario are clearly indicated in Figure 5.

Sequence diagram of Inpatient Information System integration and interoperability. WebUI, Web user interface.
Collaboration Among Workflow Steps and Characters via CPOE in NTUH IIS
CPOE is an application that is used to electronically write physician orders in the HIS. It is linked with clinical decision support, which provides much of the value of implementing it. Figure 6 illustrates the collaborative workflow process based on the CPOE system in the NTUH IIS. There are five steps and four characters included in the workflow. The five steps include order entry, order confirm/receipt, order review/perform/record, order query, and billing. The participants include physicians, pharmacists, nurses, and clerks.

Collaboration workflow process by orders view with the Inpatient Information System. EMAR, Electronic Medication Administration.
In the order entry step, the orders (include medication, nonmedication, and urgent orders) prescribed by the physicians are the basis. After ordering, physicians confirm the orders, and nurses receive them as well as check if there are any problems; the problem orders will be sent back to the physicians for further checking. Next step, the pharmacists dispense drugs based on the medication and urgent orders; problem orders will be locked and re-informed to the physicians. Meanwhile, the nurses perform and record orders by the Electronic Medication Administration system, 43,44 which communicates with IIS through an HL7 message. In addition, the IIS CPOE system provides a friendly interface for user to query orders. Finally, the clerks operate the billing process.
Herein, collaboration among components based on the CPOE in NTUH IIS is important for further establishing the electronic medical records. The workflow mechanism improves safety in several ways: That is, (1) all orders are structured, such that they must include a dose, route, and frequency; (2) they are legible, and the orders can be identified in all instances; (3) information can be provided to the physicians during the process; and (4) all orders are checked for several problems, including allergies, drug interactions, dangerously high dosages, drug-laboratory problems (giving a patient a drug when he or she has a known biochemical factor that predisposes that individual to risk), and whether the dose is appropriate for the liver and kidney function.
Achievements and Performance Evaluation
Achievements
The inpatient information platform in NTUH is easy to deploy and yields an almost immediate return on the investment. The new generation of the NTUH IIS provides a low-cost and is compatible with future system upgrades. The system is designed and implemented on SOA middleware frameworks; its flexible and robust architecture leads to the good integration and collaboration as well as interoperability among the components and the multiple databases. In addition, the HL7 middleware is ideal for heterogeneous, distributed, high-traffic environments, helping NTUH dramatically reduce its operational costs.
Performance Evaluation
In the NTUH IIS, the portal and WebUI servers construct dynamic web URL linkages and direct front-end requests to HIS components as well as their ancillary subsystems. In addition, the HL7 middleware is the integration engine of the IIS architecture; it supports message management, routing, and mapping as well as database access. The WebUI Server and the HL7 Middleware play critical roles for IIS performance. Therefore, we evaluated and analyzed these two components respectively in the framework.
WebUI server statistical data collected in 1 day aggregated by hours
The WebUI Server handles services: pharmacy, billing, diet, bed, ward, etc. Here, we investigate performance evaluations for pharmacy and bed management services over a single day on July 3, 2008, as shown in Figures 7 and 8, respectively.

Pharmacy management performance evaluation of the WebUI server over a single day.

Bed management performance evaluation of the WebUI server over a single day.
In Figure 7, the histogram represents hourly pharmacy requests. The average response time within an hour is shown in the broken line. The number of the pharmacy requests reaches the peak at about 4,000, with an average response time below 3.5 s. Similarly, in Figure 8, the number of the bed requests is not beyond 1,400, and the average response time is under 2 s.
The response time in Figures 7 and 8 varies significantly, while the request counts are either zero or very low. The reason is that the WebUI server has a caching mechanism implemented for common data sharing. Therefore, subsequent requests can reduce response time.
HL7 middleware statistical data collected in 1 day aggregated by hours
HL7 middleware receives messages, parses the messages, and fetches data from the HIS, RIS with PACS, or LIS database via the data exchange server. The middleware performances are evaluated based on requests and responses to and from the module. The requests are initiated by any other components in IIS to the HL7 middleware module. The corresponding responses are returned by the middleware to other components; the service time is logged in the HL7 middleware. The results were collected over a day on July 3, 2008, as shown in Figure 9.

Performance evaluation of HL7 middleware over a single day.
In Figure 9, the histogram represents hourly request counts. The average response time within an hour is depicted with the broken line. The highest number of hourly request counts is below 106, with an average response time of approximately 60 ms.
Statistical data of WebUI server, HL7 middleware central processing unit, and memory usage collected during 1 week and aggregated by hours daily
The WebUI server, HL7 middleware central processing unit (CPU), and memory usage data collected between July 2, 2008 and July 8, 2008 are shown in Figures 10 –13. During this period, the WebUI server CPU usage reached, on average, 20% at most diurnally. Similarly, the daily HL7 middleware CPU usage did not exceed 45%. For memory usage, the HL7 middleware reached approximately 900 MB and remained steady. In the WebUI server, however, the memory usage varied hourly. Normally, 700 MB was used between midnight to 9:00 AM, and 2.2 GB was used between 9:00 AM to midnight.

One-week central processing unit utilization of the WebUI server.

One-week memory utilization of WebUI Server.

One-week central processing unit utilization of HL7 middleware.

One-week memory utilization of HL7 middleware.
We can, therefore, conclude that CPU and memory utilization in the IIS are stable and robust, indicating that the resources are sufficient.
Conclusions
In the integration process, we met the following challenges: The Web applications of IIS must be user friendly and have acceptable performance; the healthcare standard messages need to be designed for exchanging data among subsystems; and the domain knowledge must be collected by the subsystems. If there is an obstacle with which the engineers should be familiar in the HL7 standard and coding style, the project managers might be subject to pressure and complaints from the engineers.
Based on middleware technologies and SOA, the NTUH IIS platform is easy to deploy and offers an almost immediate return on the investment. We are currently correcting the analytical and validity data for another research article (manuscript in preparation). The new generation of IIS has virtually unlimited scalability and provides a low-cost and compatible method for future system upgrades or changes. In addition, the IIS HL7 middleware is ideal for heterogeneous, distributed, high-traffic environments, and it dramatically helps NTUH to reduce operational costs. The multitier IIS has integrated components under the .NET environment. The HL7 message standard is widely adapted to cover all data exchanges within the system. All services are independent modules that enable our IIS systems to be deployed and configured with the highest degree of flexibility. Furthermore, we can conclude that the multitier IIS has been designed successfully and in a robust way based on the index of performance evaluations, CPU, and memory utilizations.
Footnotes
Acknowledgments
The authors would like to acknowledge members of the Information Systems Office at NTUH for their assistance.
Disclosure Statement
No competing financial interests exist.
