Preface
Developers who’ve had to do application integration work know what a daunting endeavor it can be. While some applications provide facilities for integration, say with a rich API meant to be externally consumed, many were never designed to be accessed by other applications. Challenges also abound for applications that are designed for interoperability from the ground up. Developers will often spend a considerable amount of time dealing with the plumbing of a particular integration protocol, such as SOAP or JMS, to allow their applications to play nicely with the outside world.
Enterprise Integration Patterns, by Gregor Hohpe and Bobby Woolf, quantified these challenges, attached a language to them, and offered a catalog of solutions. Integration developers and architects could, if they chose, look at their integration problems through the lens of these patterns and implement them appropriately. Implementation, though, is where the work lies. The integration developer, in addition to dealing with JMS brokers, SOAP stacks, and legacy databases, now has to implement message routers, data transformers, and protocol adaptors to put the patterns into practice.