Our client faced difficulties managing a complex system built using InterSystem’s Caché, which has limited support for the latest server platforms and technologies. This system performs an Enterprise Service Bus role involving processing interfaces interacting with various applications by processing HL7 and XML-type messages.
After an analysis of the legacy codebase, Clinovera’s team uncovered the following issues that prompted our client to consider migrating to IRIS:
• Code Defects: Errors in the codebase caused unexpected results in development and production environments.
• Uncontrolled Disk Usage: Errors with the custom class management system lead to growth in disk space consumption over time.
• Limited Support: Finding support for InterSystem’s Caché’s technology is becoming increasingly difficult.
• Upgrade and Scalability Issues: Upgrading, redeveloping, and scaling the current interfaces built with Caché poses significant challenges.
• Integration Difficulties: Integrating new systems and applications with the existing Caché-based infrastructure is complex.
• Troubleshooting Bottleneck: There is a lengthy troubleshooting process for any issues in the existing codebase.
• Communication Platform Integration: Replacing the internal communication platform necessitated integrating the new solution with the existing Caché system, adding further complexity.
Clinovera modernized integrations using the latest InterSystems tech stack and best practices to ensure the core business logic remained intact and delivered the expected results. To unify the tech stack and streamline communication with downstream healthcare providers, we recommended switching outbound messages from SOAP to the industry-standard TCP. The production process was consolidated for better scalability and support.
The HL-7 component of the system was re-engineered using built-in classes, replacing the suboptimal, custom-designed legacy code. Intelligent checks were added during development to improve speed and efficiency significantly. Purging was implemented to optimize memory usage and then automated for seamless management. After successful delivery, the client received comprehensive training for independent system management. Ongoing client support was established to ensure a smooth post-go-live experience.
The code delivered a significant 28% efficiency gain(*). The resulting solution boasts a simpler architecture due to the reduction in code elements and technological diversity, resulting in easier ongoing support. Furthermore, the implemented automation tasks effectively manage memory usage, streamlining system maintenance. The client is highly satisfied with the project and is happy to serve as a reference. We can provide contact details upon request and with the client’s consent.
* A 28% increase in efficiency was observed during the acceptance testing, where old code and new code were compared on the same hardware.