Kirstan Vandersluis

Subscribe to Kirstan Vandersluis: eMailAlertsEmail Alerts
Get Kirstan Vandersluis: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Related Topics: SOA & WOA Magazine

SOA & WOA: Article

Spiral SOA Web Services Target Agility - Part II

How to Achieve Short-Term ROI While Building Agile Architectures

(Part I of this article outlines the dimensions of the situation facing companies who wish to adopt an agile SOA strategy. Part II covers adoption of such a strategy.)

(The author is Chief Science Officer with XAware, Inc.)

A company’s success in the future will be closely tied to adopting SOA. The impact of not adopting SOA is potentially fatal to a company. Regulatory requirements, if not met, may result in the loss of entire business lines. In our increasingly connected world, customers have ample choice in almost all facets of the economy. If a company does not react to new customer expectations while its competitors do, the inevitable outcome is declining market share. Companies in many industries today are moving to SOA and the agility that is brings.

But agility is not achieved simply with a purchase and installation of a software package. While an SOA platform is the foundation upon which business agility is achieved, IT must also adopt service orientation as the way to build and enhance systems.

An adoption strategy must consider several dimensions:
• The need to reuse existing resources, not replace them
• The need to start with isolated, departmental-level implementations during the early stages, yet be robust enough to handle enterprise-scale.
• The need to abstract complex information structures into objects that the business analysts can deal with.

Spiral Adoption Strategy
In 1988, Barry Boehm from the TRW Defense Systems Group published a seminal paper on the Spiral Development Process Model. As a development process model, it defined an iterative software development process, that sought to reduce risk and increase the likelihood of delivering on-time, high quality software. The Spiral Model was one of several process models that heavily influenced today’s agile computing movement. Here, we adopt the spiral metaphor to describe a recommended adoption pattern for Service Orientated architectures.

The goal of the Spiral Adoption Model is to reduce overall risk by opportunistically adopting SOA over an extended period of time. Ultimately, the enterprise evolves to become Service Oriented to the greatest extent possible, resulting in a highly agile information technology, providing maximum agility to the business. In this mature SOA environment, the enterprise has a comprehensive library of business-oriented services, which can be rapidly orchestrated into business process to meet evolving needs.

The Spiral Adoption Model is depicted in Figure 2 below.

Adoption of SOA starts with a business need, and a deliberate decision to move towards SOA. The Spiral Adoption strategy follows a pattern where business problems are solved in a Service Oriented approach. This means that the functionality of the application solving the business problem is divided into services, which are invoked in a proper sequence to perform the desired behavior. As seen in figure 2, an organization starts with one project, and progresses through development stages until that project is complete. As additional business needs surface, the process is repeated, as shown in outer rings in the spiral. The organization gains knowledge and experience on each ring of the spiral, continually building maturity in SOA development capabilities as the spiral expands away from the center.

The true benefit of Spiral SOA is that with each project, a library of reusable services accumulates. Over time, development time for a new project shifts from creating new services to reusing existing services. Ultimately, the enterprise achieves agility, in that new business processes are merely orchestrated from the existing library of services, and few, if any, new services are required.

The following sections describe the phases of development within each ring of the spiral.

Identify Business Need
Within each ring of the Spiral Adoption model, a cycle begins with the identification of a business need. For example, a regulatory authority that currently accepts multiple files from its member organizations, may determine the need to automate the processing of those files to minimize human interaction, improve accuracy, and reduce costs.

In the analysis phase, high level business needs are formalized to identify specific processing requirements for participating organizations. Requirements are written and a determination is made as to what role computer assets, human assets, and organizational assets play in the solution.

In the Design and Build phase, requirements are allocated to designed components and ultimately transformed into callable services. Each service is deliberately defined in terms that a business person understands, thus facilitating reuse as an activity in a business process in the future. The information needs of the project are modeled and translated into a form amenable to a service implementation. XML Schema is used for this purpose, and lets the designer specify the major information objects that will be managed and exchanged. Intelligent services are finally built that exchange the resulting information objects and perform pertinent processing on them. Often, an orchestration layer links lower level services into higher level services, exposing them as business processes to be invoked by users or events within the enterprise.

Once built, services are deployed into the enterprise infrastructure, where they are managed and monitored throughout their lifecycle. Services are managed and monitored to ensure responsive execution that meets the original business need.

Business services, like all software systems, go through a maturing process where changing user and system requirements require minor modifications and performance improvements. Often, after the pressure of initial delivery subsides, a review of the service definitions reveals opportunities to adjust service definitions to enable better reuse of services in future projects. Finally, the service is “institutionalized” by publishing it in a manner that enables invocation from other processes within or outside the enterprise. The Spiral Adoption strategy formalizes this phase to facilitate reuse of services and thus cost savings for future projects.

More Stories By Kirstan Vandersluis

As a founder of XAware, Kirstan Vandersluis has been instrumental in developing and patenting XAware’s product suite. Vandersluis has extensive experience in software development spanning multiple industries, including DoD, semi-conductor and telecommunications, where he has engineered the deployment of both corporate and commercial software products. Previously, Vandersluis was a software development manager and senior architect at MCI. As a published author of, “XML-Based Integration with XAware,” Vandersluis often speaks publicly about XML-related technologies and XAware product strategies.

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

Most Recent Comments
SOA Web Services Journal News Desk 06/16/06 02:18:22 PM EDT

While new business functionality traditionally requires multi-year development projects, SOA promises new functionality by orchestrating existing services into required business processes. Unfortunately, adoption of SOA is not practical in a single, enterprise-wide, 'big-bang' conversion.