Colonna Group Brokers a More Modern Computing Environment
Colonna Group modernizes its core RPG application using rest4i framework.
Image by Emmanuel Fradin
By Jim Utsler11/01/2018
For many organizations, RPG-based applications are the lynchpin of their everyday mission-critical operations.
Customer: Colonna Group
Business: Complementary healthcare and benefits insurance brokerage
Challenge: Bringing its 20-year-old RPG-based application into the modern era
Solution: Using the rest4i framework from rest4i to simplify its modernization effort
Hardware: An IBM Power Systems S914
Software: rest4i’s rest4i framework and X-Analysis from Fresche Solutions
That’s why many organizations are modernizing those applications, knowing that their RPG code and the essential business logic it represents are core to their businesses. That’s also why they’re stepping beyond 5250 interfaces to expose those applications to a larger world that includes web-like access.
One such company that recognized the modernization imperative is the Colonna Group. Its core business activity is managed by a home-grown software package called SIRIUS, which has been in continual development for years using Adelia to develop ILE RPG code. SIRIUS is a robust system that serves the company well, but, it had its limitations, including no direct conduits between modern front ends and back-end services.
“Users were locked into an interface that couldn’t deliver the benefits of a modern browser-based application,” says Simon Savage, systems architect with Colonna Group. “We also needed to implement online digital services, while using as much of the existing software as possible to keep costs low and allow for gradual and permanent modernization with no big-bang effect.”
To do so, Colonna Group decided to develop a new software design, which included front-end logic, web APIs, ILE services and an enhanced database design. It also began using the rest4i framework from rest4i to handle the essential “plumbing,” as Savage calls it, to make it all work.
The Paris-based Colonna Group is comprised of two companies: J.P. Colonna, founded in 1972, and Gestion Prestation Service (GPS), founded in 2005. The two companies employ some 350 people in Paris and Romorantin-Lanthenay, France. Colonna Group is a complementary healthcare and benefits insurance broker, with a user base of more than 200,000 employers and more than 1 million individuals covered for healthcare reimbursement and complementary employee benefits.
“In France, we have basic state-run social security, which isn’t the same as the U.S. retirement-based Social Security. Instead, this has to do with healthcare reimbursements. However, this service doesn’t cover all reimbursements, but you can add extra private coverage—or mutuelles—for better medical-expense reimbursements,” explains Savage. “So what we do is act as an intermediary, both selling insurance plans to customer companies—for which we invoice monthly premium payments—and disbursing reimbursements to employees after we’ve received details about their medical expenses. We then reimburse or bill that to the insurance companies.”
Orchestrating all of this and more, including customer inquiries, is the SIRIUS application, which has been in service for around 20 years. Currently running on a recently acquired IBM Power Systems* S914, it and IBM Db2* for i are the functional equivalent of the company’s brain, representing years of accumulated business logic and data. This type of historical system is largely a good thing—until it has to be modernized to meet exacting user requirements.
“Like so many such applications running within IBM i, it’s been built up over the years, basically being quick-fixed all the time without any real initial overview or modeling as a system. It started off as a small system, not having to handle very much, and bits were added as business needs required them. After a while, that becomes incredibly difficult to manage, particularly as people who knew what’s been done to the system leave the company,” Savage says.
This may not have been a big deal if the company hadn’t decided to modernize and streamline its application environment. But that rarely happens anywhere anymore. Everyone wants the latest and greatest software and data interfaces, and seamless methods by which they can deliver their services no matter the client platform. But understanding connections both within applications and the database can be daunting.
As Savage explains, “A single change can have unexpected effects, so we had to spend a lot of time checking that there were no knock-on effects when a change was made that we hadn’t realized. For example, some piece of code may be tweaked, but if you do something else elsewhere in the system, you may end up with contradictory tweaks elsewhere in the system. So we used X-Analysis from Fresche Solutions to help us understand what was going on inside the system.”
Although this was helpful, Savage’s team was also tasked with creating a web- and moble-based extranet for its end-user company employees—with a non-negotiable deadline for the first week of January 2018 and a summer 2017 start date. As a result, finding potential disconnects between system resources became even more critical.
This also applied to finding methods by which back-end application capabilities and data could be easily and seamlessly delivered in a user-friendly, web-based format. This prompted Savage to begin looking for quick and easy-to-implement modernization tool that wouldn’t require a steep learning curve.
Deploying REST APIs has become a norm within the modernization community. But getting up to speed on this, especially when facing a no-miss deadline and complex back-end systems, isn’t simply a matter of saying, “Make it so.” In fact, directional parameters are needed to determine what information comes from where and how it’s parsed.
In the case of Colonna Group, it decided on a new four-layer software design, including the front end, web APIs, ILE services and database design. The front end was developed by an external company. That top layer is the end-user interface, which contains no business logic. The web APIs receive the client-device request and return a JSON string the client reads and formats to the device.
“Now, all of the requisite business logic should be fully available to all of these APIs via procedures and service programs. So if we need to calculate a tariff—how much we should bill—that service can be called from anywhere in our systems, from Adelia programs, from web APIs, from SQL or whatever in batch programs. That’s the IBM i design, with all ILE programs being able be used anywhere." The fourth layer involves the database, where Colonna Group pushed business logic closer to the database, making programming easier and SQLs more efficient. (See “Modernization Roadmap” on for additional details.)
Much of this was based on the rest4i framework. The APIs it helps generate act as a gateway of sorts, gathering information from several sources, including, for example, existing RPG applications, new ILE services, an in-house EDM application, external web APIs, the Integrated File Server (IFS) and the database, formatting the requisite information as JSON strings. It then uses a web server such as Apache to send and gather the appropriate information to and from the web-based client devices.
In addition to its end-user client-facing extranet (which came in on deadline), Colonna Group has since developed and delivered an extranet application for its company clients. This not only provides a positive image of the company, but also delivers long-term business-productivity gains because its end-user customer base no longer has to contact Colonna Group’s back-office team to obtain and manage basic information.
And because business logic is encapsulated in ILE services, the company is experiencing significantly reduced maintenance delays. This provides a single version of business-logic code that’s available to every software component, including ILE RPG programs, SQL, web services and web APIs.
“Our 20-year-old legacy application and new modern apps integrate perfectly and effortlessly on our IBM i system, so we can move gradually to the new application design as immediate needs dictate. We have total independence between the business logic and user interface layers, so front-end changes may be made with no impact on the APIs and services,” Savage says. “Much of this is due to the rest4i framework, which saved us a significant amount of time in coding and getting us up to speed with the REST API architecture.”
Jim Utsler, IBM Systems magazine senior writer, has been writing for IBM since the mid-1990s.