What is the best approach for integrating a legacy system into a SOA?
A “rip and replace” approach, i.e. an immediate, complete rewrite is often too costly and has a questionable ROI. Partial migration is a complicated task, since enterprises usually operate a portfolio of applications and would require integration solutions for a multitude of interdependencies.
The figure below illustrates a client example of our “Surround and Retire” method. Legacy systems A and B allowed a straight forward rewrite, and are connected to legacy system C through a wrapper that encapsulates some of the existing functionality of system C as a service, thus making it available to other participants of the SOA (i.e. other services as well as client facing applications like Rich Internet Applications or "fat" desktop clients).
Other portions of system C are replaced with a new service oriented implementation that provides the excact same business functionality, some portions are replaced while being enhanced at the same time, and there is new functionality that is implemented following SOA principles.
Over time, less and less of system C’s business logic is needed and will eventually be completely retired.