If the strategic architectural direction of an enterprise is to migrate toward a service-oriented architecture using Web services and an Enterprise Service Bus (ESB), which technologies, programming languages and platforms should that company begin to manage out of its application portfolio to enable, not inhibit, moving to an SOA?
ESBs can provide the infrastructural backbone over which loosely coupled, asynchronous interactions can happen. Yet, as mentioned in a ZapThink ZapFlash, ESBs by themselves don't provide the required integration to meet high-level business requirements or provide guarantees of loose coupling and coarse granularity as required in an SOA. Basically, implementing ESBs to meet SOA requirements requires the addition of extra functionality to compose fine-grained services into coarse-grained business services and provide policy-driven, managed and secure service interactions.
ZapThink introduced a vision of the SOA Implementation Framework (SOAIF) in our Service Orientation Market Trends report. The SOAIF envisions a comprehensive framework that provides all the technology that enterprises need to build and run an SOA -- process, management, security, modeling and more. In fact, as enterprises look to implement SOAs and vendors work to produce solutions that enable such architectures, three separate approaches to integrating disparate, heterogeneous information and systems in the enterprise are in the process of converging to provide an optimal implementation of an SOA -- one that meets the requirements for loosely coupled, coarse-grained, asynchronous services.
ZapThink believes the answer lies in a convergence of ESB, service-oriented integration, and business process management (BPM) approaches. The message-oriented, loosely coupled approach of ESBs provides an optimal base on top of which to run the loosely coupled, coarse-grained services implemented in an SOI. BPM solutions provide the process-driven guidance necessary to ensure that they compose fine-grained services into real, run-time business processes. Through the combination of these approaches, companies can move toward the vision of software that integrates automatically.