The Holy grail of our times is for organizations to offer an ever-dazzling array of new features and improved functions to delight customers, new and old. Those of us with large volumes of legacy code can only dream of it, or can we?
Modernization (sigh) is the buzzword of our time, but it is nothing new. It is a tried and tested recipe that has resulted in both successes and spectacular failures.
Whether you are a bank carrying large amounts of Cobol for transaction handling or a shipping company still rocking your AS400 system for global bookings. Do not let people fool you into a full-blown rebuild to bring your company into the 21st century. Legacy systems have been around for decades (for good reason) and will continue to remain and grow, rather than being replaced by their Java/C# equivalents. The key is to know where and how to start upgrading? The 6 R’s (as referenced by Stephen Orban already in 2016) specify various strategies on how business context/strategy and technical know-how need to be combined to make decisions. Decisions that help you modernize, help you achieve and accelerate operational efficiency, and help you grow the business.
On a recent business trip to visit New York, I took the opportunity to explore the city. It is easy to be in awe of the infrastructure that hides beneath the city that never sleeps. The sheer number of stations, kilometers of rail, and weaving connections between lines are astounding.
The subway systems seem to be running a dependable and consistent service to millions of New Yorkers and guests. This service continues to run as improvements are continually made over the years, as I found out when visiting the NY Transit Museum (which I can highly recommend!).
New and improved subway cars have been introduced regularly since their inception in 1904 (refactoring). Turnstiles have been improved and upgraded to move from the paper ticket to a coin token to an electronic card system, with the additional option of checking in with your phone or credit card (re-architecting).
Although not an easy task to undertake, these improvements have a profound effect on the experience of millions as they make their way to work and social engagements. What does this show to us IT techies? It is a solid piece of modernization!
Yes, it is complex, it takes time, and you might need to go through multiple iterations if you are so lucky as to operate for decades. By upgrading the ticketing systems, traffic control systems, and the cars themselves, the NY Subway has effectively upgraded the user experience to stay relevant to the world around it.
Enterprises with large legacy codebases should be doing the same. Not ten years ago, the majority of the discussions I participated in, within these enterprises, revolved around the replacement of systems too big to comprehend. The complexity was off the scale and was often why implementation trajectories were stopped and whole rebuilds canceled. I have seen companies flush millions down the drain with a new replacement initiative that cycles every 4-6 years.
Luckily many companies and our own clients are seeing reason. They have done away with the megalomaniac projects that are too large to succeed. Instead, they are following in the footsteps of the NY subway by replacing key components of applications where they interface with the rest of the world.
SIG advocates the same approach and applies software assurance monitoring to build, track and monitor modernization programs in four simple steps.
Yes, you might need to go through the same steps multiple times in the years to come. With every step, you will bring additional value and increase the user experience. Modernization is complex, but it is not as hard as we like to make it. As the NY subway shows us, modernization is possible even within the operational pressures and physical confines of New York City.