« New Podcast is Up There....Show 14 | Main | Oh No! Another SOA Reference Model. »
September 16, 2005Need Better Legacy Integration for SOAs
I saw this come across the wire today, and other legacy integration solution. As you know, integrating with existing legacy systems for a SOA is going to be a challenge, and technology like this could make it easier…perhaps.
So, how does one expose existing legacy systems for a SOA? The architect has only three choices in determining how to accomplish this with existing legacy systems:
• One, he or she can move much of the business logic to a shared server, such as an application server. Others can leverage the services at that point of integration, versus communicating directly with the legacy system. We can call this porting.
• Two, he or she can rebuild each application using an application service-sharing mechanism, such as Web services, to create a tightly coupled application that allows easy cross-accessing of application services. We can call this wrapping, or service-enabling.
• Three, you can leverage a middleware layer that’s able to translate the local proprietary services, existing in the legacy system, as open interfaces such as Web services. We can call this service abstraction.
If the architect decides that the second choice is the most attractive, he will have to “wrap” the application logic encapsulated inside both applications. To accomplish this, he will use a service sharing technology, such as Web services, so that there is a common mechanism to share application services remotely. This will require rewriting the applications and then testing them. Fortunately, this is not as daunting a task as it might appear. Tools exist for each environment to wrap each application, re-creating the applications as truly distributed systems able to share both application services and data.
The third choice is typically the most practical. By leveraging service abstraction products there are typically no changes that need to be made to the existing legacy systems, the abstraction technology is able to account for the interface differences at run time. Thus, outside applications looking to leverage the services of a legacy system invoke a Web service exposed by the abstraction layer, with the abstraction layer managing the translation of the interfaces to the legacy system. Of course there is a bit of latency when using this mechanism.
We’re going to need some good technology here.
Posted by davel at 03:00 PM in
|
Digg This |
Add to del.icio.us

Dave Linthicum's Podcast Channel
