Friday, November 21, 2008

two new (free) SOA books

Two new SOA books have just come out recently. Both are available as free PDFs (after registration):

  • An Implementor’s Guide to Service Oriented Architecture: Seven vendor representatives offer their views on the constituting parts of SOA and best practices. The aspects they examine are service design, registries and repositories, ESBs, runtime management, organizational structures and capability development (team, training). I especially enjoyed the ESB section by Hub Vandervoort of Progress. Hub details different mediation requirements that enterprises have today. He then goes on to demonstrate how these can be addressed with different infrastructure choices, such as ESB.

  • SOA Adoption for Dummies (courtesy of Software AG): The author liken SOA adoption to a space journey: keep the pointy end of the rocket up until you reach weightlessness. I quite like the view on ESB presented in this book - ESB is only one of a kind of SOA intermediation infrastructure - and it doesn't sit in between consumers and providers tying everything together. Rather it exposes services of different size, smell and colour in a homogeneous fashion to the consumer layer.

    Some SOA nerds may squirm after reading the ESB sections in this chapter. If you’re one of them, you may be inclined to have a near-religious belief in the classical view of ESB. In the classical view, an ESB is a critical piece of SOA infrastructure that sits between service providers and consumers. The services themselves are not hosted on the bus. We also strongly believe in the need for such infrastructure and address it in the later section “Understanding Service Mediation,” but we don’t believe that only products with an ESB label have a special right to be that piece of infrastructure.
I also like the following statement on the need for an intermediation layer in an SOA in order to increase flexibility and loose coupling:
    In order to achieve maximum flexibility in your SOA, service consumers should never connect directly to the service implementations in the service-enablement layer. Instead, they should connect to the service interface hosted in a separate service-mediation layer.

Sunday, November 16, 2008

Microsoft ESB Guidance v 2.0 out

Congratulations to Dmitri Ossipov and his team. They've just released version 2.0 of the Microsoft ESB Guidance.


From Adlai Maschiachs MS blog:
The Microsoft ESB Guidance provides architectural guidance, patterns, practices, and a set of BizTalk Server and .NET components to simplify the development of an Enterprise Service Bus (ESB) on the Microsoft platform and to allow Microsoft customers to extend their own messaging and integration solutions. The Microsoft ESB Guidance consists of a series of interoperating components that support and implement a loosely coupled messaging environment that makes it easier to build message-based enterprise applications. The services and components fall naturally into the following seven categories:

  • Web services. These expose internal services such as itinerary processing, exception management, resolution of endpoints and maps, BizTalk operations, UDDI interoperation, and transformation of message content.
  • Itinerary services and centralized store. These include agents for performing transformations and message delivery. You can resolve itinerary from the store and create custom services that participate in Itinerary processing.
  • Itinerary on-ramps. These receive external messages using either SOAP or WCF. On-ramps expose the itinerary SOAP header and perform itinerary processing, using the Microsoft ESB Guidance Resolver and Adapter Provider Framework for dynamic resolution of endpoints and metadata.
  • On-ramps. These receive external messages in a range of formats and transports, such as HTTP, JMS, WMQ, FTP, Flat File, and XML. They are typical BizTalk receive locations that optionally use the Microsoft ESB Guidance pipeline components and the Microsoft ESB Guidance Resolver and Adapter Provider Framework for dynamic resolution of endpoints and metadata.
  • Off-ramps. These implement send ports for the delivery of messages using formats and transports such as SOAP, WCF, JMS, WMQ, FTP, HTTP, Flat File, XML, or any other custom formats. They are typical BizTalk send ports that optionally use the Microsoft ESB Guidance pipeline components and the Microsoft ESB Guidance Resolver and Adapter Provider Framework for dynamic resolution of endpoints and metadata.
  • Exception Management Framework. This includes the exception Web service, the exception management API, and components that enrich, process, and pass exception details to the ESB Management Portal.
  • ESB Management Portal. This provides registry provisioning, exception mediation, alert notification, and analytics.