By boldly stepping into an IT modernization planning strategy, Royal Caribbean, one of the world’s largest cruise lines, is altering its 20-year-old applications and database development processes in preparation for the next 20 years of business goals. It is currently in the second phase of a program designed to migrate selected, monolithic, RPG applications to Java-based Web services that will continue to run on IBM Power servers and the IBM i operating system.
The current project focus is a strategic modernization of the company’s custom-designed reservation system that includes accounting, inventory, revenue management, and sales. The objectives include the creation of a systems inventory that analyzes programs and data, and then abstracting that information into logical components and data models. During that process, the IT project team expects to establish a framework for making decisions about modernization approaches and service exposures.
The original reservation application is huge. It includes more than 7 million lines of code that during the course of two decades has been modified, manipulated, and maintained a multitude of times using several flavors of RPG from legacy to modern. The reservation system has always run on IBM midrange servers from AS/400s to modern Power Systems. Discovering what you have in such a large system and in your applications sounds easy, but for most companies it is not. Creating an inventory is like unraveling a bowl of spaghetti and sorting all the noodles into groups based on length, color, and flexibility. As anyone who’s looked at millions of line of code knows, Monolithic apps hold many mysteries. Solving the mysteries is work that can be done by hand, but it is immensely labor intensive.
To automate the discovery process, Royal Caribbean purchased X-Analysis from Fresche Solutions to define the system inventory, or “as is” state. X-Analysis generates reports that describe the physical architecture in terms of objects, programs, and physical and logical files. In addition, it identifies the relationships between the data schema objects. This process, when done manually, is often a labor intensive and time-consuming search and rescue procedure. The X-Analysis tool is designed for cross-referencing, documentation, re-engineering, and code generation.
“This is very valuable in understanding how to carve up the existing monolithic and procedural system into a services model,” commented IBM i modernization specialist Ryan Smith, who was hired by Royal Caribbean to consult on the project. “Understanding relationships leads to making the right decisions.”
Fresche Solutions consultants initially were used to demonstrate the code discovery capabilities of X-Analysis, but Jose Machado, Vice President of IT at Royal Caribbean, says that IT staff members are learning to use the tool and it will have continued uses in the current and future modernization efforts. Each phase of the Royal Caribbean project begins by breaking down an application into modules, submodules, and ultimately to business functions. The goal of the process is to match programs and data to business functions.
Examining business rules, extraction, consolidation, and exporting capabilities is the first step—the mapping phase—that leads to larger modernization programs. It allows business rules to be classified, consolidated and applied to modules of the application, or it can also do the same mapping to the database. In the early going of this modernization project, consultant Ryan Smith handled the mapping with input from Fresche Solutions and the Royal Caribbean teams that knew the existing applications from years of experience.
“We had our trainers on site who could see how to leverage X-Analysis. And they set up training with the teams that were familiar with the core application running on IBM i. The productivity gains—just for maintenance purposes—were considerable,” says Jennifer Fisher, Vice President of sales and marketing at Fresche Solutions.