What are legacy systems and factors to consider before deciding on modernization?
So what is a Legacy System?
In computing, a legacy system is an old method, technology, computer system, or application program, (of, relating to, or being a previous or outdated computer system), that is still in use. Often referring to a system as "legacy" means that it paved the way for the standards that would follow it. This can also imply that the system is out of date or in need of replacement.
Gartner, defines a Legacy Application as: “An information system that may be based on outdated technologies, but is critical to day-to-day operations. Replacing legacy applications and systems with systems based on new and different technologies is one of the information systems (IS) professional’s most significant challenges. As enterprises upgrade or change their technologies, they must ensure compatibility with old systems and data formats that are still in use.”
Understand features of Legacy System:
- It is a proven concept which is used by the end-user for their business operation
- It has its existence in the business
- It is solving the problems of the user for their daily routine with business systems
- It is still in use because it is acceptable to the user
But replacement is necessary because adaptability in the future for existing systems / software will not be sustainable.
Factors to consider while considering modernization of Legacy System:
1. Availability of funds
The budget for the modernization of software should be planned to avoid the problem of budget constraints later. It could be possible that unknown obstacles may arise while in development so there should be some extra reserves for such an eventuality. Budget constraints can ruin modernization efforts and result in business losses.
2. Cost & benefit analysis
Cost & benefit analysis should be performed to check if maintaining the legacy system will be good enough or if modernization is required. Maintenance of outdated legacy systems adds cost to the company and it is therefore necessary to modernize at least critical systems before they become obsolete and gradually transform to new systems without replacing entire IT teams./p>
3. Return On Investment - ROI
Modernization of legacy systems involves manpower efforts and up-gradation of underlying hardware and software. It is not a simple task to take on. You need to calculate the Return On Investment for up-gradation or conversion into the new system. You have to perform analysis on long term and short term business goals that can be achieved by modernizing software./p>
4. SWOT Analysis
SWOT analysis is a technique used to determine and define a company's Strengths, Weaknesses, Opportunities, and Threats – SWOT. The primary objective of a SWOT analysis is to help organizations develop a full awareness of all the factors involved in taking up a modernization project to enable informed business decisions./p>
5. Risks and Time constraints
A budget deficit and / or improper infrastructure for automation can halt, suspend delay the releases. Planning must include risk analysis and a guaranteed strategy to enable modernization smoothly. Legacy systems that evolved over years usually are complex and reengineering will take a lot of time. Make use of a framework or automation work as it will minimize time constraint./p>
6. Availability of documentation
Good documentation will result in a greater understanding of the business process to be modernized. A repository should be created for keeping documents organized so it easy to locate information about the application. Availability of detailed design and functional documents will give a greater advantage of understanding systems./p>
7. Migration tools
Many organizations require migration from an older system to their new architecture therefore it is necessary to consider migration tools that offer easier transition. Quick and easy implementation of technologies is critical to avoid impacting current operations. Rewriting the entire code for an application based on a new architecture leads to high cost to business. Reinventing the wheel is not necessary when migration tools are available./p>
Modernization is all about choosing the right technology that is in line with the business goals.
Jagdish Gundeti is working as a Technical Architect with Application Development and Maintenance department on technologies like C++, VC++ and Embarcadero at Direction Software LLP.