mirth connect as interface engine case study v2

25
Case Study for Mirth Connect Investigation Richard Pritchett, Christopher Klaus Executive Summary COMPANY X’s IT department develops their own interfaces. In this case study, this effort is currently done with Cloverleaf Integration Suite as their interface engine. This case study examines the open source interface engine, Mirth Connect. Mirth Connect is an open source standards-based health care integration engine. Mirth Connect facilitates the routing, filtering, and transformation of messages between health information systems over a variety of protocols (like LLP, Database, and FTP) with support for numerous standards (such as HL7, XML, and DICOM). 1 Initial investigations of Mirth Connect reveal the potential for: significant cost savings, increases in staffing availability and utilization, reliable disaster recovery capabilities, and a flexible development / infrastructure architecture. Situation What is causing this change now? The original focus for COMPANY X’S interface engine was clinical information systems, but the focus in now expanding beyond just clinical information systems. This and the other issues listed below spurred the creation of this case study. Money Since the inception of using Cloverleaf in 2005, COMPANY X has incurred approximately $200K in purchasing interface threads and over $100K in maintenance of these threads. As such, COMPANY X has spent over $300K on Cloverleaf. An average of $25K worth of new threads is purchased every year. Maintenance costs increase linearly with thread purchases at a stable rate of 18%. The current annual maintenance costs are $37K. 1 http://www.mirthcorp.com/products/mirth-connect/faq 1

Upload: christopher-klaus

Post on 13-Apr-2017

1.170 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

Executive SummaryCOMPANY X’s IT department develops their own interfaces. In this case study, this effort is currently done with Cloverleaf Integration Suite as their interface engine.

This case study examines the open source interface engine, Mirth Connect. Mirth Connect is an open source standards-based health care integration engine. Mirth Connect facilitates the routing, filtering, and transformation of messages between health information systems over a variety of protocols (like LLP, Database, and FTP) with support for numerous standards (such as HL7, XML, and DICOM).1

Initial investigations of Mirth Connect reveal the potential for:● significant cost savings, ● increases in staffing availability and utilization, ● reliable disaster recovery capabilities, and● a flexible development / infrastructure architecture.

SituationWhat is causing this change now? The original focus for COMPANY X’S interface engine was clinical information systems, but the focus in now expanding beyond just clinical information systems. This and the other issues listed below spurred the creation of this case study.

MoneySince the inception of using Cloverleaf in 2005, COMPANY X has incurred approximately $200K in purchasing interface threads and over $100K in maintenance of these threads. As such, COMPANY X has spent over $300K on Cloverleaf.

An average of $25K worth of new threads is purchased every year. Maintenance costs increase linearly with thread purchases at a stable rate of 18%. The current annual maintenance costs are $37K.

The historical trend and the foreseen projects both indicate the annual need for new threads will continue to increase.

StaffingWith increasing demands for new interfaces, availability and utilization of staff is becoming a serious concern. While internal demands are one source for new interface requests, there’s also a reasonable desire to collaborate with affiliates that produces new requests.

1http://www.mirthcorp.com/products/mirth-connect/faq

1

Page 2: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

AvailabilityOne of the current issues is that Cloverleaf utilizes Tool Command Language (TCL) for more in-depth interface programming. Since TCL is a niche skill set, it becomes rather difficult to find and hire developers or consultants. As such, ramping up to meet development demands is challenging due to this limited skill set availability.

Besides the concern of availability, the rarity of the TCL skill set translates into a higher level of compensation for developers and consultants.

UtilizationUtilization of current interface developers can be reduced when approval of licensing and limited access to the testing environment cause delays.

The concept of standardization is a current goal with one potential benefit being improved utilization of developers by sharing of development staff between teams. Cloverleaf’s development environment as mentioned earlier is based on a niche development language, making sharing of developers difficult due to the high learning curve presented by Cloverleaf.

Cloverleaf was not built with the concepts of being a rapid development environment with easy reuse of previous development efforts. This further reduced potential productivity.

CollaborationsAn open exchange of interfaces where COMPANY X and affiliates could collaborate on interface development would help reduce COMPANY X staffing requirements for interface development. Unfortunately, none of COMPANY X’s affiliates have purchased Cloverleaf due to the expense of this interface engine.

Some of COMPANY X’s affiliates do currently utilizes Mirth as their interface engine.

Disaster RecoveryDiscussions aimed at improving disaster recovery have brought to light Cloverleaf vulnerabilities.

There is no reliable backup from which COMPANY X can perform a restore. By using flat files for a “database”, the most important files for backing up Cloverleaf are kept open by the application and thus are unavailable to backup processes. The files needed for Cloverleaf recovery are not saved.

Even if the appropriate files for manual rebuild were available, the Cloverleaf site locking restrictions would allow only one developer per site to be performing the rebuild. As such, restoring Cloverleaf would take at least a day or two.

2

Page 3: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

ArchitectureSecuritySecurity consolidation efforts recently highlighted that the implementation of Cloverleaf is lacking in security. Given that Cloverleaf has access to all patient data, this lack of security makes Cloverleaf COMPANY X’s largest security vulnerability.

Alerts Console/ Monitoring/ DashboardCurrently Cloverleaf alerts are based on an alerts configurator within the Cloverleaf Integration Suite. Each site has separate monitoring of message flow. Currently there is no single alerts console / monitor / dashboard.

Development EnvironmentsWith Cloverleaf each site will only allow one developer to work on that site at time. With more interface developers recently hired / to be hired, this restriction becomes more of a problem. Cloverleaf’s development locking mechanism is implemented in such a way that developers do not know if another developer is working on the site, the only way to start developing is to break a lock, and breaking the lock causes any current work on the site to be lost.

Version ControlCloverleaf has a weak version control, but restoring requires a manual process. The version control is more of a save by save archive. Restoring could mean trying multiple version of the file until the last good version is found, meaning delays in rolling back. Due to the numerous revisions kept, comparisons between versions are not very useful.

Testing EnvironmentsCurrently there is only one test environment. In order to test in different environments in Millennium certain parts of the engine needs to be redirected on the test interface engine. As a result, a potential bottleneck for project timelines occurs when testing for different projects needs to be done in the different environments.

Open SourceA large part of Cloverleaf is open source as discussed earlier. Cloverleaf’s implementation of open source tools is often years behind current versions. Updating the open source components of Cloverleaf would invalidate the maintenance agreement.

DatabasesCloverleaf “database” was recently corrupted twice in one week. Recovery from corruptions is a manual process, which can be quite time intensive.

BackgroundHow did COMPANY X get into the current situation? Cloverleaf was brought in to replace an old interface engine that was no longer being supported. At the time COMPANY X was focused mainly on clinical information system interfacing, and Cloverleaf was considered one of the better solutions for such

3

Page 4: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

work. This project was initiated in 2005 and the transition continued into 2007 to mesh with other projects’ timelines.

Lawson BackgroundFor more than 30 years, Lawson has delivered enterprise resource planning (ERP) solutions that offer performance, reliability, flexibility, cost-effectiveness and scalability.

By 1990, Lawson had 250 employees and $30 million in sales. Lawson broke ranks with other ERP vendors by committing itself to developing solutions that met the particular needs of specific industries. The company made a decision to focus on industries including manufacturing, distribution, healthcare, retail, financial services and the public sector.

Lawson's successful initial public offering was in 2001. Since then, Lawson has continued to build on the foundation of flexible architecture, analytics and web-addressable applications – acquiring several companies and developing several inventive new products through the first decade of this new century.

In 2003, the Lawson dedicated support team achieved an unprecedented sixth Support Center Practices certification.

Today, Lawson continues to break new ground with a wide variety of opportunities – including innovations in software, services, support and a continued refinement of their partner network – to help customers streamline their operations and save time and money with world-class ERP solutions.2

KLAS reports on interface engines ranks Cloverleaf as the 6th best interface engine.3

2http :// www . lawson . com / About - Lawson / Company - Overview / History / 3http://www.klasresearch.com/Research/Products/?ID=55353

4

Page 5: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

Mirth Corporation BackgroundFounded as WebReach in 1993 and headquartered in Irvine, CA, Mirth Corporation serves many of the nation’s largest and most respected health care organizations. Mirth software and systems are used daily by thousands of health professionals across the U.S. to streamline care management processes, and to securely exchange health information. With over 8,000 registered users and 85,000 downloads, Mirth is gaining global recognition as an emerging leader in Open Source Health Information Technology.

The Mirth Project – founded, incubated and supported commercially by Mirth Corporation – aims to transform health information technology by making high-value information technology solutions available to the health care community on an open source basis. Mirth’s professional grade, service-backed open source offers break through cost barriers to achieve more rapid health information technology dissemination, and enable users to create a safer and more effective health care delivery system.

The Mirth team is passionate about improving health care through the strategic use of technology. By taking an integrated view of the health care industry, Mirth Corporation helps partners quickly address the demands of today’s regulatory and competitive environment. Mirth Corporation delivers solutions that help leading health care organizations – and those who serve them – efficiently manage their costs and provide a more valued service to their stakeholders. The result: safer health care at a lower cost with greater convenience for patients and providers alike.4

KLAS reports on interface engines ranks Mirth as the 3rd best interface engine.5

4http://www.mirthcorp.com/company/about 5http://www.klasresearch.com/Research/Products/?ID=47554

5

Page 6: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

AnalysisLet’s review what COMPANY X’s investigation shows in comparing Cloverleaf and Mirth.

MoneyHere is a preliminary cost comparison of the differences in the licensing, maintenance, and support costs between Cloverleaf Integration Suite and Mirth Connect.

The costs for the Cloverleaf Integration Suite include:● yearly thread maintenance for COMPANY X is currently ~$40K

The costs for Mirth Connect include:● free threads (which Mirth calls channels),● free documentation capabilities within the open source engine,● there are options for a Virtual Mirth Appliance of specific interest would be the Multi-Client

Gateway option for $9,999 to purchase / $1,999 for maintenance, and● three tiers are available for support (silver- $2,500, gold - $10,000, platinum – TBD).

Making some conservative assumptions COMPANY X can estimate a cost comparison for a 5 year period. These assumptions being:

● future projects (HIE, meaningful use, ACO, etc.) will require additional threads at the same average rate to previous years, which would be $25K for Cloverleaf and free for Mirth,

● thread maintenance will remain 18% for Cloverleaf and free for Mirth,● Mirth platinum support would be at most $40K and after the first year COMPANY X would

move down to gold support for future years at $10K, and● we choose to purchase ($9,999) and maintain ($1,999) a Mirth VM appliance. If no significant

benefits are available for purchasing the Mirth VM appliance, then instead COMPANY X could build COMPANY X’s own Mirth LPAR or VM.

REDACTED - Yearly price comparison between Cloverleaf and Mirth Table for a specific healthcare organization showing Cloverleaf costing more than 3 times Mirth over a 5 year period.

While this is a simple model, it is clear from these estimates that over the long term Mirth presents a potential financial benefit. The most important factor to take away is that Mirth becomes a fixed annual cost, while Cloverleaf represents an annually increasing cost. For a more complete estimate of cost savings, other factors would need to be incorporated, such as:

● the transition costs and time,● hardware costs for each option (initial investigations indicate Mirth will require less),● potential thread licensing and maintenance price increases due to Lawson now having to respond

to Wall Street expectations,● true Mirth platinum cost (which is expected to be less), and● a determination if a Mirth VM appliance is desired.

6

Page 7: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

StaffingExploring Cloverleaf and Mirth, COMPANY X can see the differences in availability and utilization of staff as well as opportunities for collaborations to reduce staff effort.

AvailabilityCloverleaf utilizes TCL for thread development, which is a niche skill set. In-house the TCL skill set is limited to the interface development team. A cursory search did not identify any outside consulting firms that do TCL. When demand for interface development outpaces COMPANY X’s current staffing capabilities, supplementing COMPANY X’s staff will be difficult.

Mirth utilizes JavaScript for thread development, which is one of the core languages used for web development. In-house this skill set would be readily available in the web development team. A cursory search quickly identifies multiple consulting firms that do JavaScript. As such, JavaScript is a readily available skill set in comparison to TCL. A good business requirements document (developed in collaboration with in-house interface developers) would allow supplementing by in-house or outside consultants when demand for interface development outpaces COMPANY X’s current staffing capabilities.

Initial investigations found in the UK that JavaScript average daily rates6 are 71% of the cost of TCL average daily rates7 for the 3 months up to April 7, 2011.

UtilizationCloverleaf delays waiting on approval of licensing could be resolved by having an excess of licenses always available. Delays due to lack of testing environments could be resolved from having extra testing environments (which is discussed in the Architecture section).

There’s a high learning curve presented by Cloverleaf using the TCL language. COMPANY X found only one new TCL book available for examples. Thus bringing in new developers not familiar with TCL would take time to ramp up. TCL syntax checking needs to be done outside of Cloverleaf with separate tools.

For Mirth, JavaScript is a standard development language that is widely used. JavaScript has extensive training material available. Examples for advanced JavaScript development are readily available. JavaScript syntax checking is built into Mirth.

Better and more standardized development tools would allow staff to complete projects faster and more reliably. Initial internal staff testing indicated that Mirth is a faster and easier interface development tool than Cloverleaf.

To validate in-house developers’ opinions online reviews were examined. Besides the KLAS report shown earlier here are some specific developer quotes:

"As a Senior Integration Consultant I have worked with Cloverleaf, Rhapsody and many other integration engines. Recently I had the opportunity to work with Mirth Connect... Mirth is a great little interface engine, it supports all the basic standards of the healthcare industry."8

6http :// www . itjobswatch . co . uk / contracts / uk / javascript . do 7http :// www . itjobswatch . co . uk / contracts / uk / tcl . do 8amBlog /? tag =/ Mirth + Connect

7

Page 8: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

“The Mirth Connect™ interface engine has gained rapid popularity, becoming the most widely downloaded open source software for healthcare integration. This flexible yet cost effective java-based integration solution has been implemented on a wide number of platforms ....”9

"Quickly, I author several programs in VB I replaced with Mirth so less time programming and more time completing a channel. Interfaces that we would have dreaded completing and I have no problems attacking with confidence. Lab interfaces were nightmares and are manageable now. Being a GE VAR we have many different clients with many different interfaces to PM and EMR and we can meet those needs better than any company now without the need for outside help." 10

No reviews were found that indicating Cloverleaf is a better development tool than Mirth Connect, while many reviews indicated that Mirth is faster and easier.

9http :// www . orchestratehealthcare . com / capabilities / the - mirth - connect . html 10Quote from MC in California http :// www . mirthcorp . com / company / testimonials

8

Page 9: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

CollaborationsBy contributing interfaces to the local community, opportunities for affiliate collaborations would become easier and take less COMPANY X staff effort. This assumes affiliates would be interested and able to take part in such collaborations.

With the expense of Cloverleaf and the limitations on the TCL skill set, it is unlikely that affiliates would take part in such collaboration if based on Cloverleaf. No affiliates were identified that currently have or develop in Cloverleaf. There would be minimal returns at best for releasing Cloverleaf interfaces to the local community.

Mirth is a free tool and JavaScript a readily available skill set. Two of COMPANY X’s sister sites currently use Mirth, so there is a strong potential for collaborations on Mirth interface development. Besides reducing costs of collaboration work, there would be the potential of gaining some interfaces COMPANY X could utilize with little work on COMPANY X’s part.

Current collaboration work requires COMPANY X to purchase threads and staffing time in order to perform such work. Collaboration work with Mirth would only involve staff time.

In fact, one example of national level collaborations already exists on HIE. The result is a Federal Health Architecture (FHA) document, “Mirth Connect HIEM File Transfer Adapter Installation and Configuration Manual”.11 The FHA coordinates health IT activities among more than 20 federal agencies. FHA’s intent being to jump start any HIE implementation by supplying most desired functionalities. Mirth demonstrated HIE capabilities with DOE’s EMR, Noteworthy, with only 1 week of spare time.12

Disaster RecoveryTo have a reliable backup for restoring from Cloverleaf, COMPANY X would need to create and implement manual build policies and procedures. A manual build event would require the necessary scripts and XLATEs (Cloverleaf translations) to be regularly saved. Saving such files to a secondary location, the DR site, would make the rebuild feasible.

Cloverleaf site locking restrictions would allow only one developer per site to be performing the rebuild. There is no mechanism available to reduce this recovery bottleneck. As such, this path would mean a rebuild time of at least a day or two. Another issue is that rebuilding Cloverleaf on another server would require new thread licenses for that server for the rebuild.

We could make a LPAR for Cloverleaf and leverage the high availability capabilities. This is not currently done, and would involve further costs. Testing would be required to confirm it works. The result would be a recovery time would be less than an hCOMPANY X’s.

In comparison, Mirth can be hosted on a LPAR or VM, allowing Mirth to be brought up rapidly at the DR site. With a VM, the restore would be up within seconds.

11http://developer.connectopensource.org/download/attachments/28082252/ CONNECT_Release_2_2_MIRTH_HIEM_File_Transfer_Adapter_Installation_and_Configuration_010810.pdf?version=1&modificationDate=1262978079000 12 http://www.mirthcorp.com/webinars/mirth-nhin-connect-webinar

9

Page 10: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

ArchitectureAn architecture diagram for Cloverleaf would be similar to the Mirth Connect architecture diagram below. Unfortunately COMPANY X was unable to locate a Cloverleaf architecture diagram.

10

Page 11: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

SecurityAt an addition cost, Cloverleaf has two options for improved security: Cloverleaf Security Server and Cloverleaf Secure Messenger. Cloverleaf Security Server has passwords and access control to restrict the development environment. Cloverleaf Secure Messenger uses OpenSSL for certificate-based interface security. Cloverleaf Integration Suite can also utilize sftp and https. The current version of Cloverleaf Integration Suite utilizes OpenSSL version 0.9.8e, which was released in early 2007. While implementing Secure Messenger would improve security, the failure to keep up to date with OpenSSL means that there would be well known vulnerabilities.

Mirth Connect can be setup to require strong passwords for access to the development environment. Mirth is an Apache web application, which means Mirth inherits Apache access control capabilities as well as the capability to restrict access by domain or specific IP addresses. Mirth can encrypt database entries to add another level of security. Purchasing any support level adds sftp and https capabilities into the Mirth Connect development tool. Purchasing a Mirth appliance comes with protocols like SSL tunneling and VPN encryption of threads (channels).

Up to date SSL tunnels and/or VPN encryption capabilities could likely be setup outside of these applications to allow encrypted interface messaging.

Alerts Console/ Monitoring/ DashboardCurrently each site has separate monitoring of message flows, which requires being inside the interface engine. Cloverleaf Global Monitoring is a single alerts console where all interface messaging can be monitored and controlled from a dashboard, which can be purchase separately. Alerts are currently gathered in a database, which could be used to feed or make a dashboard.

On the Mirth roadmap for release 3, there is a plan to have a general alert console for monitoring and restarting threads. Given Mirth supports SOAP, the database mentioned above could feed into this console to act as a single Mirth & Cloverleaf dashboard.

Development EnvironmentsWith more interface developers recently hired / to be hired, Cloverleaf’s development locking mechanism will increase the chances for code loss. Creating more Cloverleaf development environments, one for each developer, would eliminate this issue but means purchasing more thread licenses. This would mean $200K per developer for completely separate development environments.

In Mirth, the only potential for lost work is only if two developers are working on the exact same interface on the same development server. It is easy to install a local version of Mirth, which completely eliminates such conflicts. Thus Mirth has a significantly lower risk for lost work.

Cloverleaf supported message standards include:● HL7● X12*● UN/Edifact● XML● NCPDP● Delimited Text

*Lawson has yet to fix the HL7 to X12 conversion utility, but an easy hack returns this functionality.

11

Page 12: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

Mirth Connect supported message standards include:

● HL7 (Version 2 and 3)● X12● XML● DICOM● EDI● NCPDP● NHIM CONNECT gateway’s HIEM File Transfer● Delimited Text

Cloverleaf supports the following protocols:● TCP/IP● HTTP/S (https requires Cloverleaf Security Server)● Files● S/FTP (sftp requires Cloverleaf Security Server)● LU● UPoC● Custom TCL (Database, Emails)

Mirth supports the following protocols:● LLP/MLLP● TCP/IP● HTTP/S (https is given with support)● Files● Database● S/FTP (sftp is given with support, otherwise can be done in JavaScript)● Email● JMS● Web Services (SOAP)● PDF/RTF Documents● Custom Java and JavaScript

“Besides generic file flipping or port-to-port mapping for messages, Mirth Connect allows us to do easy transformations. All we need to do is put the value from one field to another field in the message because the downstream system expects it to be in a certain place. Mirth Connect can also do much more sophisticated processing and transformation because it uses a JavaScript engine and allows us to manipulate the message with all sorts of different connections. We can query databases directly and input data through the database connection. We can send email and connect to secure FTPs. Mirth Connect gives us tons of power.”13

Version ControlA standard software practice is to perform version control. A good version control would maintain code versions of interfaces:

● almost eliminating the chances for code loss, and● allowing rapid interface roll back when needed.

13KLAS comment from a director http :// www . klasresearch . com / Research / Products /? ID =47554# loadTab %283%29

12

Page 13: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

Cloverleaf has a rudimentary code version capability with no integration of this capability within the engine. Retrieval of lost code and rolling back interfaces is a more difficult process than it should be.

The Mirth road map has integration with Subversion for code versions of interfaces planned for release 2.2. Subversion is one of the more popular code versioning tools. Subversion also has nice documentation capabilities allowing improvements to interface change documentation.

Manually keeping up with interface code versions is feasible with both systems. Performing such a manual process would be easier with Mirth, but wouldn’t be required for very long since Mirth release 2.2 should occur soon.

Testing EnvironmentsCurrently to test in different environments in Millennium certain parts of the engine need to be redirected (e.g. ADT). This produces a potential bottleneck for project timelines when testing needs to be done in the different environments.

In order to implement quality testing environments in Cloverleaf, 6 separate test sites would need to be created. Currently this would mean spending approximately an additional $200K to purchase thread licenses along with maintenance for these threads.

For Mirth Connect, there would be no additional costs to produce numerous test sites. As a result, project delays for testing would be reduced.

Open SourceCloverleaf has various open source products as part of its core system. These include:

● cURL 7.18.2● jvm 6.0● openSSL 0.9.8e● perl 5.8.8● Tcl 8.4.2● xerces 2.7 (XML)● xalan 1.10 (XSLT)

Researchers have demonstrated that open source is no more or less secure than closed source tools; so Cloverleaf’s utilization of open source is quite understandable.14 That said, ensuring open or closed source systems are secured requires keeping up with more recent version of such tools. Cloverleaf’s implementation of open source tools is often years behind current versions. One significant concern is OpenSSL 0.9.8e was released in 2004.

Mirth is a completely open source product. The history of the Mirth Connect produce shows a more diligent effort to ensure open source components are kept up to date.15

14R. Anderson, “Security in Open versus Closed Systems - The Dance of Boltzmann, Coase and Moore”, http :// www . cl . cam . ac . uk /~ rja 14/ Papers / toulouse . pdf 15http://www.mirthcorp.com/default/mirth-connect-20-release-notes

13

Page 14: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

DatabasesInternally Cloverleaf has no true database; instead it is a structured file based system. As a result, corruption of this file system can occur far easier than in a true database. Recovery from this corruption is a manual process, which can be quite time intensive.

Mirth has various options to use for an internal database (Derby, PostgreSQL, MySQL, Oracle 10+, MS SQLServer, and MS SQLServer 2005). Database corruptions are rather rare and recovery is far easier.

RecommendationBased on the current situation and the initial case study here are specific recommendations for COMPANY X.

First, there should be a more in-depth study for a go / no-go determination on a one year Mirth project.

After a year, a review should be done to determine if:● Cloverleaf should be retained as the sole interface engine,● a dual interface engine environment should be maintained, or● a complete migration to Mirth Connect as COMPANY X’s interface engine should be performed.

MoneyFurther investigation should be performed to produce detailed project costs and realistic cost saving estimates by pursuing Mirth. Results from this investigation should be used in a go / no-go determination for a one year Mirth project.

In a year these cost projections should be revised. A review should be performed to determine if cost projections still indicate that Mirth is a good option to pursue and at what level it should be pursued.

StaffingStaffing availability and utilization should be tracked and potential benefits from collaboration explored. In a year, staffing requirements of Mirth development efforts should be reviewed and compared with Cloverleaf development efforts.

AvailabilityUse of JavaScript developers from other teams should be tested to confirm increased staffing availability when needed.

Potential consulting companies for Cloverleaf and for Mirth development should be identified with determination of prices. Besides offering a comparison this will also setup the infrastructure for rapid hiring of consultants if ever needed to supplement current staff for interface work.

UtilizationCurrent in-house developers should use Mirth for new interface projects. Estimates of increased productivity should be tracked to determine improvements in staff utilization.

Development on existing interfaces should continue in Cloverleaf with tracking estimates of staff productivity.

14

Page 15: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

Conversion efforts for migration from Cloverleaf to Mirth should be explored. Interfaces to select for migration would be:

● projects with likely delays due to the lack of multiple Cloverleaf testing environments, and● interfaces with consistent problems that have proven difficult to resolve in Cloverleaf.

CollaborationsCollaboration projects should utilize Mirth. A code sharing environment should be setup to encourage regional collaborations, especially between affiliates and COMPANY X staff, on Mirth interface development. This will help reduce the required COMPANY X efforts for collaboration projects. This would also present an opportunity to offer a free hospital-based aggregation service to area physicians.

Disaster RecoveryEven if Cloverleaf were to be completely replaced by Mirth that would be a long term project. As such, manual rebuild event policies and procedures should be developed and implemented for a realistic capability to restore Cloverleaf.

Policies and procedures for maintaining a Mirth LPAR or VM at the DR site for rapid disaster recovery should be developed and implemented.

ArchitectureSecurityA good security practices encourage a multi-layered defense that requires a multi-vector attack in order to penetrate communications. COMPANY X’s security experts better versed in this environment would have more ideas, but here are a few potential defensive layers:

● configuring the network firewall to only allowing specific IPs to communicate with the interface server(s)

● adding TCP wrappers on the server side,● encrypting these communications via SHH tunneling, SSL tunneling and/or VPN encryption

(which should be feasible outside of the Cloverleaf and Mirth engines, removing the need for Cloverleaf Secure Messenger to add this capability), and

● encrypt databases that are only used by Mirth (Cloverleaf does not have encryption capability with databases).

The Cloverleaf and Mirth development tools should also be restricted. The firewall IP restrictions can again act as one layer of defense. Citrix role based access control is probably already being used to help restrict access to developers.

Mirth should be configured to require complex passwords. While password protection of Cloverleaf would be good... it would require Cloverleaf Security Server.

15

Page 16: Mirth Connect as Interface Engine Case Study v2

Case Study for Mirth Connect InvestigationRichard Pritchett, Christopher Klaus

Alerts Console/ Monitoring/ DashboardMove away from having to be in the interface engine to monitor interfaces, so that other teams can see that the interface is working. This would reduce the loss of interface developer time to check for other teams if there is an interface problem.

When Mirth 3 is released, COMPANY X should use SOAP to connect Cloverleaf to the Mirth general alert console. As such COMPANY X would have a single web dashboard to allow monitoring and restarting of threads (with a little extra effort for Cloverleaf threads). This would allow us to avoid the cost of Cloverleaf’s Global Monitoring tools while gaining the same capabilities.

Development EnvironmentsExplore different development environment configurations made possible with Mirth. Track the problems and advantages of Cloverleaf and Mirth development environments for the one year review.

Version ControlCreate and implement policies and procedures for the manual process of rolling back with Cloverleaf.

Develop policies and procedures for using Subversion with the release of Mirth 2.2. Examine the roll back, comparison of previous versions, and documentation capabilities.

Testing EnvironmentsWait until the one year review to determine if an addition $200K should be spent to implement testing sites for Cloverleaf.

For Mirth, implement four test environments one for each Cerner development environment and one for COMPANY X’s interface team usage.

Open SourceGiven both products are strongly if not entirely based on open source, so there is little to be discussed regarding this topic.

DatabasesDetermine which database to use for Mirth that would best fit within COMPANY X’s environment.

16