Gregor Hohpe, author of "Enterprise Integration Patterns", has been thinking about the concept of Mashups becoming the next generation approach to EAI. Gregor makes the connection that Mashups and EAI are trying to achieve the same goal:
Mashups pull data from different sources, aggregate and transform the data to be used in different contexts. EAI solutions pull data from different sources, aggregate and transform the data to be used in different contexts. Huh?Gregor points out that Web 2.0 technology is an enabler for EAI through looking at newer sites such as MySpace, Digg, del.icio.us etc:
They also use the Web as a platform to retrieve and share data, often from multiple sites. These mashups use lightweight programming models such as JavaScript to pull data together and present them to the user in a meaningful way. For example, one such mashup pulls a feed of suitable apartments from a listing site and plots them on Google Maps.Gregor provided a Google Mashup Editor tutorial that shows how to pull an Atom feed of calendar entries and display event locations on a map. The key point about Mashups is that they leverage common protocols. As Gregor explains about the sample application:
Not earth shattering, but trying to build this type of application 5 years ago before the advent of geocoding, RSS, Atom, and Google maps would been very time consuming at best. The presence of standard protocols and powerful tools make this type of integration relatively easy.While the technology and tools behind Mashups are relatively new, existing design patterns still have relevance. Gregor used the "Pipes and Filters" pattern to enrich the data stream with geo data using Yahoo Pipes. In this version , no Javascript is required to look up the longitude and latitude of a location, instead the coordinates from the feed are passed directly to the google maps component, thus making the solution more loosely coupled. However, mashups don't promise any silver bullets - existing integration problem areas such as authentication and agreement on content will still exist:
For example, token and ID management can already become a challenge for mashups. Semantic mismatches and incompatible data formats are a staple of data integration and are not likely to vanish.Gregor concludes by stating that the expectations of Mashup solutions are not as comprehensive as traditional EAI solutions:
They provide small, high-value point solutions as opposed to trying to achieve enterprise-wide integration nirvana.Bill Burnham predicted in 2004 that " low end EAI" was where the action is at, before Web 2.0 and The Long Tail. Has the time come for Mashups to become EAI 2.0?