Friday, August 19, 2005

The key pillars of an SOA’s success

Although a wide variety of factors determines the success of enterprise’s SOA strategy, four (4) pillars for success can be underlined and highlighted.


1. Organizational Alignment

The extent to which an organization has aligned their business and technology strategies is a key determinant of SOA readiness. It is important to evaluate the business strategy for well-defined business services and processes, and it is also critical for the success of an enterprise’s SOA strategy to secure a budget and to have an organizational alignment with respect to a funding model. Organizations with funding models that facilitates cross-unit cost sharing are typically much more successful in migrating to SOA enabled space than those with more inflexible funding models.


A flexible funding model is required and needed to compensate for initial overheads caused by applying SOA principals. Overheads are caused by different factors. The project team members have to familiarize themselves with new SOA standards, patterns and processes. However, the initial overhead is caused by the efforts required to increase reusability.

In addition, the choice of a suitable project piloting the implementation of the enterprise SOA is a critical factor for the success of an enterprise’s SOA strategy. It is very important that chosen project should be as visible as possible. However, this does not necessarily mean that it has to be prestigious. Ideally, the SOA projects should run no longer than one or two years, with a first delivery after six months.


2. Setting Up a SOA Swat Team

Such a team should focus exclusively on how best support and establish the SOA in the organization. The SOA Team will therefore have to contain evangelists whose task it is to explain the benefits of an SOA to the different departments and this initiative includes helping target audiences to gain an understanding of key SOA architectural principles, concepts, best practices, and technologies as well as the support in the actual implementation of these principals.


3. Methodology and Process

Adoption of an iterative methodology is critical to support quick, efficient, service-oriented analysis and to design lifecycle activities that complement SOA. Also, formal governance and operations
procedures make an organization more likely to adapt to SOA. New techniques for model-driven architecture (MDA) that heavily involve visual business process and service interaction modeling approaches are beginning to emerge, and are also important to evaluate. Examples of SOA success factors pertinent to methodology and process include:

  • Governance Model — Policies and procedures for the identification of necessary services,
    coordination of complementary or conflicting service development efforts, and full lifecycle management of services from proposal to support
  • Model-Driven Architecture (MDA) — Familiarity and/or usage of emerging approaches and technologies that enable development of service-oriented models to facilitate interaction and communication of requirements and logic between business analysts, architects, developers, and testers.


4. Technology and Tools

SOA success is highly correlated to the choice of technology and tools utilized in both design-time and run-time environments, as well as the way in which those technologies and tools are designed to interplay to deliver a true service-oriented solution.

  • In the design-time environment, SOA readiness is impacted by how well the integrated development environment (IDE) extends to support rapidly emerging SOA implementation standards, especially Web services protocols. Design, development, testing, and deployment tools must support unique protocols and attributes of SOA, and critical infrastructure is necessary to support publication and discovery of new and existing services.
  • In the run-time environment, SOA readiness demands an infrastructure that supports secure, interoperable, and reliable messaging between services, and is capable of orchestrating service interactions to support business process demands.

Choosing the appropriate tools and technologies is not sufficient to achieving SOA success alone. The use of appropriate design and message exchange patterns is critically important. These enabling patterns allow organizations to deliver and utilize services in a repeatable manner to ensure consistency and adherence to best practices necessary to scaling SOA across the organization.


Recommended approach

Any organization’s strategy for moving to SOA should involve the following four (4) major activities:

  • Education — Gain an understanding of key SOA architectural principles, concepts, best practices, and technologies.
  • Assessment — Determine the current state of your organization’s readiness for moving to SOA by identifying existing best practices and gaps, as well as major opportunities for realization of benefits from SOA.
  • Planning — Develop a phased SOA migration plan that makes sense for the organization, mitigating business and architectural risks while measuring and delivering significant return on investment (ROI) through increased flexibility and responsiveness to changing market demands, as well as decreased design, development, integration, and support costs.
  • Execution — Deliver prototypes, pilots, infrastructure, and services consistent with the phased SOA migration plan, seeding and embedding SOA perspective and best practices
    throughout the business and technology groups within the organization as well as among key customers, partners and suppliers.