ESBs emerging roles

Two distinct use cases are emerging for Enterprise Service Buses:

  • firstly many organizations are using ESBs internally as the enabling infrastructure for their Service Oriented Architecture.
  • The second use case places the ESB on the edge of the network in a role more traditionally occupied by B2B integration solutions.

This second use case is being used by organizations providing Web service interfaces to their business and in particular by pure play Software as a Service (Saas) providers who realise they need to take a proactive approach to their customers' integration issues. This may even involve hosting some portions of the integration solution on behave of the customers. An ESB deployed in a SaaS environment requires additional features over and above those of an ESB used internally. For example:

  • Multi-tenanting support is fundamental to the SaaS model, but good support for it is not available in many ESBs. Hosting integrations on behalf of customers requires that data generated as a result of messages flowing through the ESB is segmented on a per customer basis. This applies to a whole variety of information stored in log files, activity reporting and data stored in databases. The segmentation of data in databases also applies to languages such as WS-BPEL which are heavily dependant on the persistence of data. The SaaS provider may need to make this data available to their customers in order to provide the same level of visibility into their integration solutions as they do for their core services.
  • Scalability and Performance requirements for SaaS are typically more demanding than within the enterprise environment. The ability to deploy within a clustered environment is now a must.
  • Productivity tools are vital. It must be possible to create integration solutions quickly for customers. Within the enterprise, an integration project might have been viewed as one off projects. For the SaaS provider they are now a normal part of providing access to their systems to each new customer.
  • The software license model for the ESB needs to be consistent with the on-demand or per user billing model for the SaaS provider.
  • The ability to deploy client side instances of the ESB is also important as the SaaS provider may not want to host all the integrations. For this scenario, ease of installation and maintenance is vital as is the need to work within a wide variety of IT environments.

No comments: