There is a lot of discussion going around on the future of Enterprise Integration. Will it be all SOA? Will there be an ESB required? What will happen to pure play EAI vendors? Where does Open-Source fit in? Having done a lot of "Real World Integration" and spoken with a lot of individuals from other companies, I think I can safely say that Enterprise Integration will continue to be one of the more complex and challenging disciplines with in any organization.
I don't think pure play vendors are going anywhere (assuming they stay financially viable), SOA will continue to grow in hype but practical implementation will still be very challenging. ESB's will be interesting to watch. I'm not convinced that they will be able to distinguish themselves above and beyond the pure play EAI vendors (one in the same sometimes). And Open-Source will continue to put pressure on every traditional software shop which is a good thing.
There is a lot of buzz around the Service Oriented Architecture (SOA). Their are now what I call "purist" who believe that ultimately all applications will just talk with each other via the WS-* standard de-jour. While an interesting goal, not one really based in reality. The average software shop (not the Oracle's, Microsoft's or IBM's) will not have the vision or resources to embed this integration layer into their core apps. A lot of developers still struggle with basic integration concepts. The large number of standards associated with the WS-* specs, make it extremely unlikely that wide spread understanding much less adoption will occur. This will also make interoperability a difficult challenge as developers struggle to interpret the standards. Except perhaps in the larger software shops.
But what if they could? Would that really be a good thing? I'm not sure. I believe manageability of that type of distributed infrastructure would be much more costly than a more centralized approach. A lot of folks who implement pure play integration solutions end up with a more central architecture even though the products usually support a distributed model. Certainly some of the reason that happens is cost. But I think a big contributing factor is complexity. Lots of moving parts create lots of support issues.
Don't get me wrong. I think a move to embrace the SOA architectural style is a good thing. But only when taken with a dose of reality. More on the reality of integration to come.