Friday Feb 09, 2007
Modernising Legacy Applications for SOA Environments
Because of the large capital investment in legacy systems, it is preferable to
find a satisfactory migration path from the legacy system environment to modern
SOA (Service Oriented Architecture) environments.
Somewhat contentious, would be to decommission existing systems in favour of a SaaS service or to use a packaged COTS application. The following discussion is for when this is not an option.
Legacy applications need to be modernised in a
fashion that automates the majority of "eyeball" type work. Current
best practices suggest a Model Driven Development approach with appropriate
modern tools.
I've identified three high level options for migration of legacy applications into a SOA environment, with some identified advantages/disadvantages.
Option 1 – do-nothing
-
Staff retention – people no longer wish to work on legacy applications
– bad career choice for future
-
Attraction of new talented staff – old generation technology, staff want
to work on Projects utilising modern development tools and methodology
-
High cost to change to adapt to new business processes
-
Expensive runtime licenses in addition to licensing for new environments
-
Unable to meet business expectations to respond in a timely manner
-
Difficult to integrate with other systems, very rigid in purpose
-
Large sites, have many generation of technolog needing specialist
knowledge of each generation
-
Unable to change platform of choice for middleware and databases
Option 2 – manual
-
Labour intensive due to the need to eyeball code and document
specifications for new systems
-
Open to error, security problems and inconsistent coding
- Offshore code factories, whilst reducing some short term costs do not
solve architectural issues and still retain the other problems associated with
manual transformations
-
Often insufficient budget to achieve the targeted strategic architecture
for the business
-
Unable to reengineer, without a complete rewrite – often the original
analysts and designers are no longer available to assist
-
Timeframe are usually long >1 year for projects, resulting in a
freeze of all change and hence responsiveness to business
Option 3 – tools
-
Reduces 85% of the eyeball work required
-
Reduction in timeframe target. In general, it is expected to achieve, a
quarter of the timeframe for manual methods
-
Through using a model driven approach ability to refactor components for
modern architectures
-
Ability to introduce new elements such as Web Services to comply with
the strategic architecture
-
Reduce overall project costs and the number of staff required to
complete
-
As the majority of code is generated, it ensures code conforms to Best
Practices and Design patterns. Thus reduces coding errors.
-
Improves security, through consistent code generation of high quality
code (no shortcuts taken by developers to meet timeframes)
-
If appropriate tools are selected, they can also be used for new
application development
-
Improves dramatically the ability of IT to help facilitate changes in
business processes through the use modern paradigms such as SOA.
Tags | Comments 2

[Trackback] Nick talks about different options on how to modernize legacy applications for SOA environments and it...
Posted by Solution Architecture on February 13, 2007 at 08:56 AM CST #
[Trackback] Nick talks about different options on how to modernize legacy applications for SOA environments and it reminded me about one of the common SOA anti-patterns I see. First of all, I am all for capitalizing on legacy, which has been...
Posted by Distributed Systems Simplified on February 13, 2007 at 09:00 AM CST #