Date: February 7, 2017
“McCarthys has been developing software for the meat industry in Australasia for over 20 years. Our product, UniWorks, provides an end to end food processing software system. About 5 years ago we embarked on a major upgrade with a goal to rewrite the legacy Cobol system in Java. Having such a large investment with literally hundreds of person years of development the choice of the future technology underpinning the new system was important as we wanted to transition to a technology that will hopefully serve our future requirements for another 20 years.
Initially we settled on SpringDM as it was based upon the popular Java framework Spring. However, although Spring itself continues to be well supported, support for SpringDM had been discontinued. Obviously this wasn’t the best of starts but we were keen to stay with OSGi as the opportunity to enforce modularity and make changes in a running system (which the current Cobol system does particularly well) were important to us.
The problem we faced was that we weren’t sure which OSGi technology to pursue and so to help with this choice we commissioned Paremus. Before making the choice we had Paremus review our current SpringDM system and produce a valuable detailed report to highlight current areas where we could improve. While a transition to Aries Blueprint would have probably been less costly, in the end we settled on a move to Declarative Services. We did consider other alternatives but amongst other criteria we were keen for any implementation to be backed by an OSGi Alliance specification and saw that there was an active community producing new specifications based upon the Declarative Service model.
In the process of producing the report it became apparent that there was one major missing piece of the jigsaw inhibiting us from transitioning to Declarative Services, that being a service based model for transaction management for JPA and JDBC persistence. After some discussion we commissioned Paremus, with the major contributor being Tim Ward, to develop an open sourced solution based upon RFC221. Details on how to use the new Aries Transaction Control services can be found at Aries Transaction Control. We were very pleased with the quality of work produced and found Paremus easy and more than willing to discuss any issues we had.
The solution is very comprehensive and is capable of managing both local and XA transactions. It also offers the Last Resource Gambit which we required as we still needed to access our existing Cobol database. We have undertaken an extensive testing exercise to ensure that the control of the transactions in our new system are working as this is obviously one of the most important parts of most applications that have many entities and store large amounts of data. We are pleased to say that the new system has now been deployed across 12 sites in Australia and is working well.
We believe that the Aries Transaction Control implementation is production ready and can recommend it as a tried and tested solution for any organisation wishing to adopt Declarative Services and JPA/JDBC persistence. Whilst we were fairly thin on the ground with regards to in depth knowledge of OSGi, with the help of Paremus we were able to achieve the first step in our goal to rewrite the legacy system. The facts that we are 12,000 miles from Paremus and in opposing time zones did not prove to be an issue as they are adept in working with remote clients.”
Tim Jones (McCarthys)