Legacy Applications
Legacy systems often continue providing useful services fulfilling user’s needs, hence organizations can have compelling reasons for maintaining their availability. The term ‘Legacy’ does not necessarily mean the system is old, it can mean the system does not fit in with the current direction or environment within a corporate IT environment.
When is a system a Legacy System?
- legacy skills shortages are driving up maintenance and integration costs
- the hardware may be obsolete and difficult/expensive to maintain
- there is a general lack of understanding of the system
- the business that created the software has ceased to exist or the staff who were experts on it have retired/forgotten what they knew
- lack of documentation
- integration may be difficult because technologies may differ wildly.
Reasons for Retaining a Legacy System
- the system performs well
- the system contains data that is still relevant and useful
- the system cannot be removed from service for planned maintenance/replacement as it is business critical and required to provide close to 100 percent availability
- the costs of redesigning or replacing the system are prohibitive because of size/complexity
- retraining on a new system would be costly.
When making a decision on the future of a legacy system, possible choices include embracing and extending the legacy system perhaps by adding new interfaces, application retirement (whilst still retaining access to historical data) or application replacement.
There are a number of ways to provide new interfaces to an existing legacy application. Use of a modern web based interface can mean the provision of a web-based interface to a terminal-based mainframe application (not necessarily a step forward); It can also enable other modern applications to access the interface and interact directly with the legacy system, with the added benefit of being able to do this from other locations subject to security arrangements. This approach opens up both the valuable functions of the system as well as the underlying data and can be a practical and appealing way of making use of existing reliable and proven assets, as compared to the anticipated appreciable benefits of replacement (which may be zero).
Application retirement places a legacy system in a state where it’s data remains available for use.
An application rewrite enables users to consider what they want now and how their needs might evolve. For the developer, new technology can be adopted encompassing the entire system from hardware through operating environments, interoperability requirements, presentation, control and delivery mechanisms.
Ingeneering already support many legacy systems. Most cases have required fixes and extensions on take-on; Opening up these legacy systems has provided the owners with access to the rich vein of information and functionality available in these systems, made them accessible other audiences and applications. We have expertise in a wide range of environments, languages and databases and if you are looking to support a legacy system make us your first port of call.