I thought it would be useful for some people if I gave a brief overview on what my take is on JBI, WCF and SCA. Remember this is my take. Research it for yourself using the links provided.
Java Business Integration is a Java community initiative to provide a better framework for building integration solutions than the proprietary EAI approaches or the inappropriate J2EE/JCA stack approach. JBI attempts to answer the concerns that many of us had with hub based proprietary EAI and our concern that J2EE, essentially a deployment container, was being used for integration.
I mentioned some concerns I had with JBI in previous post called JBI Pitfalls. It mainly talks about the danger of JBI implementations becoming a hub. I think JBI is a pretty good approach. I just know the people seem to gravitate to hubs.
Service Component Architecture is an initiative sponsered by several vendors including BEA, IBM, IONA, Oracle, SAP, Siebel, and Sybase. The goal is to provide a more open and technology neutral approach for implementing services. This is in many ways an answer to an evolution many of us have been seeing in the market - the move away from EAI and J2EE - but also to some extent a reaction to JBI. Many recognize the need for more than a Java centric approach. (There may be other political reasons too - read about middleware fashion) Read more on SCA here and here.
Windows Communication Foundation is Microsoft's proprietary approach to "connecting systems" or services. One of the main criticisms of Microsoft in the past is that DCOM and .Net were/are very insular - they didn't connect very well with applications or services on non-Windows based machines. (Hence the popularity of Orbix COMet for bridging CORBA and COM/DCOM.) Formally known as Indigo, WCF will provide greater connectivity to non-Windows based systems and services. Read more on WCF here.
Also it's worth looking at Microsoft's Connected Services Framework (CSF) here especially if you are working in the telecommunications industry. I wonder if the CSF will venture outside this market.
Will one of these approaches win out? It's unlikely. JBI is very popular in the Java community. However with Sun's recent announcement to join SCA I wonder how that will fit in with JBI? Will it be a two-way street or will SCA marginalize JBI? I'd be interested on feedback on this. And then there is WCF. I imagine this will do very well actually. However many people will still deploy on Unix for services deemed critical or high performance or some other reason not to deploy on Windows. So then in some organizations there will be a mixture of WCF and perhaps SCA and JBI and of course all the legacy CORBA, J2EE, EAI, etc. It will get very interesting.
I should also mention REST. REST is an acronym for Representational State Transfer and is based on a PhD dissertation by Roy Fielding. It's an architectural style based on systems like the world wide web. Many people are adapting REST for building out web services. The REST community don't see a need for lots of infrastructure like what is being specified by the W3C - so no need for things like SOAP or registries etc. No need for big stacks. There is a lot of merit in the the so called RESTful approach. For more information see this article and the dissertation here.
The good news is that there is plenty of great technology out there for people to dive into deploying new applications and services. Integration is getting easier and cheaper despite the different architectural approachs. Some approaches make more sense in different places.
I'm looking ofrward to feedback on this post.

IP Babble is the personal blog of William Henry.
Leave a comment