Summary
In a recent blog post, Google's Gregor Hohpe asks if mashups foreshadow the next generation of enterprise integration techniques and tools.
Advertisement
Acknowledging that enterprise integration—the process of composing new services from existing enterprise applications—is not the most fashionable term these days, Gregor Hohpe points to the similarities and differences of Web-based mashups and enterprise integration systems in a recent blog post, Mashups == EAI 2.0?:
Nowadays the term "EAI" is certainly more uncool than anything Web 1.0 but the problems of integration have not gone away...
The difference between mashups and composite applications is more about the approach than the technology, so it is not surprising that some of the same patterns and techniques seem familiar. This fact appears to be confirmed by vendors with extensive integration and ETL experience now dabbling in the mashup space...
One differences between enterprise integration projects and mashups Hohpe points to is that of expectations:
Because integration is difficult, mashups set the expectations lower and are generally less ambitious. They provide small, high-value point solutions as opposed to trying to achieve enterprise-wide integration nirvana...
A more significant difference, however, is that between relying on well-defined, rigid, even standardized, data formats, on the one hand, and a set of sample messages in a certain format, on the other. Enterprise integration tools typically expect messages to confirm to rigid schema, often defined in WSDL or some other metadata language. Creators of Web mashups, by contrast, take the more pragmatic approach of inferring data formatting rules from a sample of messages:
After realizing that syntactic schema definitions à la WSDL solve only a very small portion of the semantic mismatch issues, mashups put the whole notion if schema aside and just look at an example message...
Does this mean schemas and data formats are a dumb idea? No, if you are building a B2B integration with your business partners a rigid definition of all message formats and protocols (beyond schema) is an excellent idea (hello, RosettaNet). Tools like [Yahoo] Pipes highlight that the schema approach is a pretty big hammer and you can get pretty far with a much smaller hammer, that is also easier to carry around.
Enterprise integration projects are typically associated with large-scale projects, perhaps because such integration tasks define applications that are critical to a business' operations. But enterprise managers sometimes may want new services that can be quickly implemented, almost in the spirit of mashups. Do you see a role for such light-weight enterprise integration, using the techniques and tools of Web-based mashups?