If your company is considering service-oriented architecture (SOA), there are many issues and challenges that need to be addressed in order to improve the chances for a successful implementation. One issue that is often overlooked early on, is an assessment of the company's existing skill sets and the application development culture.
If distributed computing, abstraction, loose coupling and service-orientation are foreign concepts to an organisation, there obviously will be challenges to implementing SOA. These companies should seek help from consulting firms who have a proven track record delivering SOA, but they should not let the consultants run the show. There should be a strong technical leader who understands SOA and can set the strategic vision. The consulting firms should complement this person and help the company realise the vision.
The consultants' goals are to maximise revenue. The IT leader's goal is to deliver SOA without breaking the bank! If a company does not have a strong technical leader with great business and people skills, it should hire someone. This person will cost top dollar but the initiative will likely fail without the right person in charge.
SOA requires specialists in many areas. A company implementing SOA will likely need enterprise architects, data architects, security specialists, process modelers, integration specialists, process analysts on the business side and various types of developers. If you need to purchase software such as an enterprise service bus (ESB), business process management systems (BPMS) or service management tools, you need to hire people to administer this software. Testers and infrastructure people need to understand the concepts of SOA. It would be wise to consider bringing in an expert or two in this area as well.
Budget for a large amount of training. Everybody is impacted by SOA. The DBAs, configuration management personnel, project managers, testers, developers, architects and all of the specialists mentioned above will need various types of training. One of the greatest cures for resistance to change is knowledge. The more these people understand SOA and its potential benefits, the less they will resist it.