In previous posts, we’ve talked about the importance of integrations for clinical diagnostic labs. Integrations can help labs improve business performance, reduce the risk of errors, and boost productivity. We’ve looked at file- and API-based integrations for liquid handlers and how to overcome the technical challenges of implementing integrations within a lab environment. In this post, we’ll take a closer look at the differences between direct and indirect integrations.
When you’re integrating clinical laboratory software, you need to choose between two different types of integrations:
Each of these methods has pros and cons, so we recommend considering the following factors before making a final decision about which type of integration will be the most appropriate.
There can be a delay between the data leaving the source system and arriving at the destination system. If real-time updates are critically important, a direct integration could have the advantage, since data is generally transferred in less than a second.
If you need to exchange data back and forth between systems, you will most likely want to use a direct integration, since this type of integration is almost always two-way. Indirect integrations tend to be one-way and the originating system has no capacity for receiving a response.
Indirect integrations are usually more fault-tolerant. For example, imagine a scenario where the destination system is not available. In a direct integration, when the destination system is not available, the source system could block any user action until the data has been transferred. In an indirect integration, this would not be an issue because the broker application monitors data produced by the source system and waits patiently until the destination system becomes available. While this could lead to a significant data delay, that might be tolerable in many cases. For instance, if the LIMS is providing metadata to an accounting system so that invoices can be generated, it’s probably more important that the overall system be fault-tolerant and that correct invoices are generated. A delay in their production likely isn’t significant.
Indirect integrations are better for future-proofing your solution. Imagine you need to update the source or destination system. In a direct integration, you will likely have to redesign, retest, and potentially revalidate the entire integration. Whereas with an indirect integration, even if you replace the source or destination system, half of the integration will still function. In this case, you’ll need to update the broker to understand the new parts of the integration, but this is typically less work than building a new direct integration.
When the systems of multiple vendors are involved, indirect integrations are often a better choice. That’s because it’s not common for the source system’s engineers to be familiar with the destination system (and vice versa). An indirect integration has an advantage because source system engineers produce data in a specified format and destination system engineers can contribute to the design of the broker. Both sets of vendors do what they do best—handle incoming and outgoing data to their own systems.
Indirect integrations between systems from multiple vendors also offer advantages for project management. Both halves of the integration can be simulated or tested in isolation, reducing timelines and associated risk.
Error-handling is one of the biggest challenges with indirect integrations. With one-way communication, it can be difficult to discover if there is an error processing the file. Direct integrations with bi-directional communication have an advantage here.
To decide on the most appropriate type of integration for your situation, you need to understand which of the above factors take priority. The following table is a quick guide to which type of integration we think is best for each.
Considerations | Which type has the advantage |
Data delay | Direct integration |
Bi-directional | Direct integration |
Fault tolerance | Indirect integration |
Future-proof | Indirect integration |
Multiple vendors | Indirect integration |
Error-handling | Direct integration |
Obviously, you’re in the best position to know which of these factors are the most important within your lab environment. However, we’re always happy to talk with you about the specific scenarios you’re facing and help you evaluate the options in light of your priorities. We recognize that every lab is in a unique position, and understand that no one approach will work in every instance.
Contact us if you need help evaluating which type of integration to use or need help with the integration. Read our other integration posts to learn more.