At the end of our tour, we get a few minutes to visit the data center. It's not large-there are perhaps eight racks, each with a half-dozen slots for technology hardware-but it's extremely busy. While I'm there, the company is ripping and replacing its old satellite Internet connection. These are huge, gold-ball-like antennae that go on top of this ship. There's a deadline to meet, too; the ship's itinerary puts it on the island of St. Thomas on Tuesday.
Ritchie Coombs, the company's director of shipboard IT operations, refers to this as "open-heart surgery." The team needs to take out Internet service and replace it without interrupting service long enough for anyone to notice.
I leave Ritchie to his work and head back to land. Tomorrow it's time to visit shore-side IT operations.
Royal Caribbean Gets the Most from Its 20-Year-Old Reservation System
While Royal Caribbean is headquartered in Miami, IT operations are based 30 miles away in Miramar, Fla. The small office complex has a sign out front and a nondescript lobby, expect for the large model of Allure.
I meet with J.P. Hurtado, the director of customer systems, and Jason Fortier, a manger of software engineering, who explains the complexity of the organization's software. It starts with RES, the company's core reservation system, with more than 9 million lines of RPG code that is more than 20 years old.
Reservations come from a half-dozen directions. Guests can create them directly, through the Royal Caribbean International website or a call center, or call a travel agent. (Defendis says 85 percent of the company's bookings occur through travel agents.) Some use CrusingPower.com; others use a SOA-based public API that created in 2007.
Whatever the source of the booking, it all goes through RES, abstracted away through a service oriented layer. Before the API was in place, organizations built custom, one-off integration points with RES, which required maintenance and retesting with every new release. Once the cruise API was in place, customers slowly converted over to it. Royal can re-use that same API on its website and in its call center, separating the actual reservation system from its clients.
Now, with the code is isolated, the company can pull one piece at a time and replace it with a more modern system. One whiteboard I pass lists goals, by year, of percentage decrease in RPG code. Within five years, RES should be 10 percent (or less) of its original self, replaced with a Java system-all with no risky cut-over, no multiple teams making the same changes in both systems, and no huge project that splits the engineering department in half.
Agile Lets Programmers Experiment in Two-Week Sprints
Sign up for Computerworld eNewsletters.