Technology Executives Club About Us | Contact Us | Search
Friday, August 08, 2008 
Home   Join   Seminars   Webinars   Library   IT Directory   Resource Center   Member Services   Membership

 


A Roadmap for the Enterprise Rollout of
Service-oriented Architecture

By Dan Christopherson, Chris Rollyson and Tom Strauss, nVISIA

The attention around service-oriented architecture and Web services is only surprising if one does not consider the pervasive problem that they address.  As the growth of networked computing has increased the efficiency of commerce, the largest computer systems have been relegated to the sidelines due to their complexity and design.  Service-oriented architecture (SOA) effectively addresses the need to modernize large systems quickly.  SOA denotes a network-centric, object-oriented approach to software development.  Web services are a set of XML standards that serve to render SOA more feasible because they are a relatively simple, inexpensive, universal means of making SOA accessible via the Web. 

However, SOA remains a sophisticated approach to enterprise architecture, and organizations that hope to use SOA to enhance their IT agility must establish basic levels of technical skill, formal processes, management infrastructure and business analysis capabilities.  This article outlines a roadmap that several large organizations have followed to drive significant, sustainable economic benefits with SOA.

The Evolution of Enterprise Software Development

Organizations follow the Evolution Stages because each stage requires the milestones of its predecessor.  Widespread SOA does not become directly relevant until Stage III.

The Stages of Software Development Evolution

In Stage I, developers build skills in Object-oriented Analysis/Design (OOA/D), which they apply to application integration in Stage II.  In Stage III, an Enterprise Application Integration team drives adoption of growing skills.  Stage IV sees enterprise SOA.  Most organizations realize economic benefits at every stage, but the cumulative impact increases geometrically.


Stage I: Distributed Software

Most enterprises still have limited in-house experience with building mission-critical distributed systems, so the theme in Stage I is developing competence in using Object-oriented Analysis/Design for mission-critical applications, which is required for developing service-oriented architectures.

The first step to enterprise SOA is selecting an appropriate project to begin developing OOA/D skills.  It must pose a challenge, but not seem like an insurmountable challenge.  It must be important enough to be meaningful but not so critical as to impose tight and inflexible timelines.

The goals in Stage 1 are two: to succeed in delivering referenceable mission-critical distributed applications and to develop competence in OOA/D, iterative, incremental development and the Rational Unified Process®.  Developers' capabilities grow rapidly throughout the projects, and the "anchor" project, which becomes a reference point for the organization's growing success with OOA/D.

As Stage I concludes, IT's relationship with business units begins to change because they have delivered several challenging, important applications using iterative development, which mandates more frequent communication between business sponsors and development teams.

Stage II: Application Integration

The successes of Stage I naturally progress into more complex projects that increasingly focus on integrating complex applications.  In Stage II, the goal is to apply the learning of Stage I to "point to point" integration.  However, Stage II is an interim step that carries a particular risk: a prolonged learning curve could result in many instances of one-off integration.  Therefore, the company must progress through Stage II as quickly as possible.  They must also select the right people to drive their progress: these people must be respected within IT and in business unit applications groups.

The themes of Stage II are: a focus on enterprise messaging and software reuse.  In Stage II, developers' application-centric focus limits the inherent reuse potential of OOA/D.  Developers often start experimenting with Web services for integration in Stage II.

The transformation of IT's relationship with business continues, and the business begins to assume that IT can integrate any two systems quite easily.

Stage II milestones are mixed.  IT and the business units have developed a collaborative relationship, but IT thought leaders begin to say, "We can't keep doing these one-offs," as they are becoming knowledgeable enough to move to the next level, where a true enterprise view of software development arrives.

Stage III: Centralized Enterprise Application Integration

Stage III sees the formation of a centralized Enterprise Application Integration (EAI) function that has a formal charter, is sponsored by a senior IT executive and has at least one business unit champion.  The necessity of IT and business executive sponsorship cannot be overstated because there will be a significant gap between the EAI group's formation and sustained quantifiable economic returns from the EAI initiative.  In addition, the EAI effort drives extensive change, and staffing the EAI team will require reassigning top people from other groups.

The EAI team's charter does not typically include non-reusable point-to-point integration.  Rather, they constantly consider the business domain in order to improve the reusability of software assets.  In addition, the EAI team involves the relevant "infrastructure" organization(s).  The EAI team often assumes a consultative relationship with applications groups to establish standardized processes for integration.  They create processes for building reusable enterprise services.  They select or develop a software asset life cycle solution, which monitors services' reuse.  They create a model to quantify the economic value of reuse. 

As Stage III closes, the EAI team has defined processes for creating, managing and maintaining reusable software as services, and they have initial models for measuring the value of reuse.  Above all, they have a robust, flexible infrastructure for service-oriented software.  Business unit management achieves a new level of "alignment" with IT, which is able to satisfy the needs of the business at an unprecedented level.

Stage IV: Enterprise SOA Software Interoperability

In Stage IV, the definition of "software" changes, and "integration" loses much of its former significance because software begins to interoperate natively; it no longer requires much of a separate effort to "integrate" it with other software.  Software is built by applying assets to business process within the context of enterprise and individual needs.  Stages I—III have enabled the IT organization to acquire the skills and experience to succeed with a new vision for developing software.

Two cornerstones of SOA are the preeminence of business services and a "service orientation."  In Stage IV, developers spend most of their time on analyzing business processes, and they increasingly abstract away from technology.  Business sponsors are actively engaged in developing business services.

In order to fully realize the adaptive advantages of SOA, it is necessary to design business services around the business process rather than a particular application.  This enables the teams to design business services that can support not only the current application but also other applications in related elements of the business process.

There is a widespread change in mindset in the application groups from "What functionality do I need" to "What services do I need, and how do I present them?"  The EAI team assumes an increasing role for growing and managing the repository of services and planning infrastructure enhancements to optimize enterprise software efficiency.

Conclusions

SOA and Web services are an expedient means to address one of enterprise IT's back end integration problem.  We believe that their appearance will be regarded as a "tipping point" for the transformation of enterprise software, as they invoke maturing technology (OOA/D) that has demonstrated success for several years. 

However, success with SOA requires technical skills, formal processes, management infrastructure and business analysis capabilities.  This is a significant undertaking, and having clarity about the stages of progress will help organizations understand the commitment.

Although we have presented a structured approach to adopting SOA, the process is far from rigid.  Iterative processes offer considerable flexibility when key elements of the approach are observed.  We have created this roadmap by creating a composite of the experiences of several organizations that have achieved significant economic benefits by rolling out SOA across their extended organizations.

SOA can be very effective at delivering enterprise agility.  Software undergoes widespread change in that code is designed as an asset that will be reused by other applications.  Therefore, the more software that is deployed this way, the more assets the organization has, and well designed assets and infrastructure accelerate the organization's ability to adapt to changing business conditions.  This is a powerful endgame that confers extensive competitive advantage.

 

 

 

 

 


 

Free Webcasts

Free Webcast of the Week Newsletter!

Register Now

Seminar Calendar

Get Event Info sent to you weekly with Free Club Newsletter

 

 

 

 

 

 

 

 

 

 

 

 

Free Weekly  |   Events  |   Library  |    Sponsorship  |   Advertising   |   About Us  |   Join  |   Member Pages

Copyright © 2008 Technology Executives Club, Ltd. All rights reserved. Privacy Policy