Java .NET Integration
Search:  

Urix

Urix uses Mainsoft to port its RiskSmart application to open systems, establish a single source code strategy for .NET and Java, and save $200,000/year in maintenance and support costs

Industry: Insurance/Risk Analysis
Company: Urix
URL: http://www.urix.com

Background

Urix is the leading provider of business intelligence and predictive modeling software for the health care industry. Its products include RiskSmart, a calculation engine that can be integrated into comprehensive software solutions to assess health care outcomes, set insurance premiums, and control costs for individuals and groups.

Business opportunity

RiskSmart was originally written in the C language and moved to C# in January 2005. The calculation engine consists of 150,000 lines of C# code and executes as a set of .NET assemblies, with no user interface, as part of a comprehensive solution for analyzing health care risks and associated costs.

According to Atul Mistry, Vice President of Technology at Urix, the product's reliance on Windows and .NET effectively limited its market potential. "Our business partners have standardized on UNIX, and virtually all of our largest healthcare insurance customers have UNIX-only requirements in their datacenters, running on AIX, HP-UX, or Solaris. We figured we could convince some of the insurance companies to use Windows and .NET, but this wouldn't solve the significant sales barrier we faced. We also considered delivering RiskSmart in a Software-as-a-Service (SaaS) offering, but the health care industry is not yet ready for this type of approach. Bottom line is we would lose significant business opportunities if we didn't deliver a UNIX deployment."

Decision process

Mistry considered rewriting RiskSmart in Java and maintaining two source bases. He estimated the rewrite would take two person-years for the initial port to Java, plus two Java developers on an on-going basis to support ongoing maintenance and enhancement costs.

Instead, Mistry chose Mainsoft's cross-compilation software, Mainsoft, Enterprise Edition. The software plugs into the Visual Studio development environment and compiles Microsoft's Common Intermediate Language (CIL) into Java bytecode. It also supports a long-term, single source code development strategy across .NET and Java.

Implementation

According to Mistry, the initial port of RiskSmart to Java using Mainsoft took about two person-weeks. "The port was exceptionally easy, in part because the ported Java code ran directly on a Java VM. Because there was no user interface component to RiskSmart, there were no complexities associated with an application server. There were only a couple of things we had to do manually," he explained. "We use log4net, an Apache project, as our logging utility, and we simply had to switch that to log4j during the port. The second thing was that we use a lot of XML, and there are some inconsistencies between Microsoft XML and other implementations. Mainsoft's support team helped us resolve both these issues very quickly."

Explains Mistry, "There's no apparent performance difference between the .NET and Java versions of the application, which is currently in its third Java release." The development team builds the application nightly, and then executes Mainsoft to build the Java port. "Most product testing occurs on the .NET version, with some testing done on the Java side to assure its integrity. When RiskSmart for .NET is ready to ship, so is RiskSmart for Java."

Conclusion

Urix is now in production at virtually all of its largest health insurance customers' datacenters, supporting 70% of all lives that are analyzed by the RiskSmart calculation engine. Without a Java solution, the vast majority of that business would not have been possible.

This project could have been accomplished using traditional porting and software support techniques, but at a significantly higher initial and ongoing maintenance cost, and a delay in product release, which would have resulted in lost business. Mistry estimates that the company's savings on development and maintenance costs are on the order of $200,000 annually.

Home · Site map · Privacy statement · Legal notice · Contact us


©1993-2008 Mainsoft Corporation. All rights reserved.