Five best practices for deploying a successful SOA
Component business modeling (CBM) as well as Service-Oriented Modeling and Architecture (SOMA) both support a best practices approach to modeling. CBM helps you analyze your enterprise by first partitioning it into relatively independent,
non-overlapping business components to identify opportunities for innovation or improvement. Service- oriented modeling is necessary for the creation of an SOA and for input uses the results of the business componentization analysis as well as business goals and key performance indicators. The output is an SOA which is independent of any specific technology as well as model for how it can best be realized using the appropriate technologies.2 In the IBM study, almost
25% of the case studies were early adopters of SOMA and indicated that it was key to their success.
It’s also important to think outside the boundaries of your enterprise. Be sure to interlock with service partners, since an SOA has high dependencies on other applications. This partner interlock will help ensure that your interfaces are mutually understood at each phase of your deployment to prevent any potential compatibility issues.
Structuring your organization and building skills The largest number of lessons learned and best practices identified from the IBM study relate to organizational factors including culture, skills, training,
teaming, organization structure, decision making, reward systems, collaboration and governance.
IBM Systems Journal: Service-oriented Architecture, Volume 44
As you move toward SOA, you will want to move away from a siloed organizational structure, which tends to limit thinking within the scope of individual projects. Integrating a large number of projects with their own agendas without some central control is nearly impossible and almost always inefficient. A best practice is to establish a design authority to engage technical stakeholders and promote early architecture decision making.
To facilitate the alignment of business and IT, it is important to provide more training—along with easier- to-use technology—to support business analysts who are responsible for documenting the business processes. Do not assume that your business process analysts easily understand service definitions written by developers. Current tools are geared toward a more technical audience, so there is a knowledge gap along with a cultural difference, which means more training is needed to develop IT business analysts.
With SOA projects you will be dealing with short time- frames, challenging objectives, demanding customers, multiple resources in various locations with different skills and ways of working. Especially with a proof of concept, where the project can be easily sidetracked because of other activities, you need laser-sharp focus through a strong project manager who can anticipate issues and accommodate them in a beneficial and proactive way.