As I have mentioned in my previous posts , SOA is becoming the next generation of the IT industry. Not only that Web services provide major contribution to that. Just having Web services does not make SOA complete. There are a number of factors which are necessary for making SOA complete , or moving company into so called SOA.
When a company want to move into Web services , one of the first thing they need to focus on is the web service framework they are going to use. There are number of good open source and commercial web services frameworks around , you can pick one which match with your requirement and then enable Web services in your company. If you are looking for an open source solution then Apache Axis2 would be a good candidate. I am not recommending Axis2 , since I am an Axis2 developer , but it so extensible , flexible as well as easy to use , above all it inteoperates with other open source and commercial web services stacks.
Next major component which make SOA complete is ESB or Enterprise Service Bus. There is no clear definition for ESB , different people have different opinions on that. In my view ESB is a bus which connect different kind of applications together and provide a way to talk to them in application independent manner. Web service provide right infrastructure for that providing SOAP based interaction. With ESB one can talk to different kind of applications and can connect different kind of applications. For example we can connect data service , main frames and messaging queue together using an ESB.
The requirement of ESB depends on the type of application you have , if you have just Web service application then you might not need an ESB, however if you have different kind of applications (say Java and non-Java applications) , then to connect such application we need an ESB.
There are a number of ESB out there , and you can find both commercial and open source ESBs. It is not surprise to see that open source ESB performs better than some of the commercial ESBs. WSO2 recently did a performance comparison , you can read them and make your decision. In Apace domain , there are two ESBs , Apache Synapse and Apache ServiceMix.
Apache Synapse (or WSO2 ESB) is built on Axis2 and ServiceMix is built on CXF. I like Apache synapse due to few reasons , first it is built on Axis2. Second I was able to write the very first synapse toy based on the current architecture , third it seems to be the fastest ESB.