Tutorials
Oracle SOASince SOA integration is the least invasive approach to legacy application modernization, this technique allows legacy components to be used as part of an SOA infrastructure very quickly and with little risk. Further, it is often the first step in the larger modernization process. In this method, the source code remains mostly unchanged (we will talk more about that later) and the application is wrapped using SOA components, thus creating services that can be exposed and registered to an SOA management facility on a new platform, but are implemented via the exiting legacy code. The exposed services can then be reused and combined with the results of other more invasive modernization techniques such as rearchitecting. Using SOA integration, an organization can begin to make use of SOA concepts, including the orchestration of services into business processes, leaving the legacy application intact.
Of course, the appropriate interfaces into the legacy application must exist and the code behind these interfaces must perform useful functions in a manner that can be packaged as services. SOA readiness assessment involves analysis of service granularity, exception handling, transaction integrity and reliability requirements, considerations of response time, message sizes, and scalability, issues of end-to-end messaging security, and requirements for services orchestration and SLA management. Following an assessment, any issues discovered need to be rectified before exposing components as services, and appropriate run-time and lifecycle governance policies created and implemented.
It is important to note that there are three tiers where integration can be done: Data, Screen, and Code. So, each of the tiers, based upon the state and structure of the code, can be extended with this technique. As mentioned before, this is often the first step in modernization.

In this example, we can see that the legacy systems still stay on the legacy platform. Here, we isolate and expose this information as a business service using legacy adapters.
The table below lists important considerations in SOA integration and enablement projects.
|
Criteria for identifying well defined |
Services integration and orchestration |
|
|
• Represent a core enterprise function |
• Wrapping and proxying via middle-tier |
|
|
• Present a coarse-grained interface |
• Who's responsible for input validation? |
|
|
• UI, business logic, data access layers |
• Orchestrating "composite" MF services |
|
|
• Exception handling—returning results |
• Supporting bidirectional integration |
|
|
Discovering "Services" beyond screen flows |
Quality of Service (QoS) requirements |
|
|
• Conversational vs. sync/async calls |
• Response time, throughput, scalability |
|
|
• COMMAREA transactions (re-factored |
• End-to-end monitoring and SLA |
|
|
Security policies and their enforcement |
• Transaction integrity and global |
|
|
• RACF vs. LDAP-based or SSO |
• End-to-end monitoring and tracing |
|
|
• End-to-end messaging secruity and |
Services lifecycle governance |
|
|
|
• Ownership of service interfaces and |
|
|
|
• Service discovery (respository, tools) |
|
|
|
• Orchestration, extension |
|
|
|
• BPM integration |