6 February 2018
To Endure or to Modernise?
In Digitalisation World, Sergey Bludov, SVP of Media and Entertainment at DataArt, discusses how legacy systems can impede innovation and offers approaches for their modernization.
"Any long-standing business will ultimately face the dilemma – to keep and maintain its systems or to modernize. And the longer the solution is postponed, the more costly and painful it becomes. Legacy code is a natural consequence of continuously evolving technology. Therefore, consistent, on-going modernization must become a core strategy of any business that wants to stay relevant in the long term."
"The legacy code is not a problem in itself, as it may simply be an evolutionary stage that the system will pass... Legacy code does, however, hinder progress and slow down innovation. Legacy systems are typically very hard to change or extend: it takes significant development and QA effort to implement and test the required changes, increasing the total cost of a new release. A fast-paced release schedule and shorter user feedback loop are proven success factors for end-user satisfaction, but are difficult or economically infeasible to achieve with a legacy system. A brittle codebase also results in low quality releases and a fairly large number of major bugs discovered after a release is delivered to consumers."
"Often “rewriting” the system may seem easier than refactoring, but there are strong arguments against it. A complete blank slate rewrite of any non-trivial system is a risky endeavor with a long and not-well-predictable time frame to complete. Few organizations can afford to discontinue all activities on an existing system due to the changing business environment, pressure from competitors, and consumer demands. So both the legacy and the new systems will have to be developed and maintained simultaneously, with the legacy system having an “edge” over the new system, in terms of implemented and tested features. More importantly, without a company-wide shift in IT strategy, there is no guarantee that a new system will work any better or be of higher quality than the legacy system."
View original article.