InfoQ

News

Evaluating SOA Readiness: A Perspective

Posted by Dilip Krishnan on Jan 21, 2009

Community
SOA
Topics
SOA Appliance ,
SOA Platforms
Tags
Best Practices ,
Adoption

David Conway an independent Enterprise Architect and SOA Consultant, shares his perspective on SOA readiness in an organization. He characterizes SOA as an agent for reducing the TCO (Total cost of ownership) as a result of sharing and reusing composable services.

Once you've understood why an organization needs SOA, he states that “SOA is a form of solution it can only be effective if it solves the problem at hand. So the [next] step “in being ready” is to clearly understand the problem that you are trying to solve.” and gives examples of classes of problems one can hope to solve using SOA.

  • We have really useful data trapped in legacy systems that we would like to release to new user groups to increase customer satisfaction
  • Our admin processes are manual, inefficient and costly as we continually re-key the same information in multiple systems
  • We find it really difficult to get our existing systems to communicate with new supplier systems
  • Our business systems cannot scale to meet our continuously growing user community

He cautions that since SOA is a unique in that it emphasizes cross organizational sharing, and that “it […] challenge[s] an organization to change how it thinks, communicates, delivers, supports and manages. He outlines some of the challenges that any organization needs to be aware of in order to be ready.

  • Communication Channels An organization will have to invest in both informal and formal communication channels to promote information sharing.
  • Governance SOA will initially require a Governance function as you will not achieve business wide coordination without some degree of control. 
  • Budget Sharing information and processing across an enterprise means a single initiative may involve multiple departments. A budgetary approach that allocates budgets on a departmental basis may struggle to encourage the level of collaboration necessary to deliver an optimized solution.

In addition to these organizational challenges he goes on to list the things one needs to know (paraphrased) to evaluate an organizations’ readiness in moving forward with an SOA.

SOA requires skilled analysts - SOA enables business process re-engineering. Your analysts must be skilled in gathering business requirements so they can analyse a process and remove redundancy.

SOA requires knowledgeable technical staff  - Developers and designers need to be proficient with messaging standards and messaging patterns, XML technologies, SOA platforms and tools. They also need to know the strengths and limitations of SOA apply that knowledge to their solutions.

Building Services incurs costs – He categorizes costs as up-front costs i.e. service deployment, service registry for discovery,  security etc. which can be borne over the life-time of a program and the right choice of tools can help to minimize some of these; and operating costs associated with testing, which involves services testing as well as client application testing and maintenance of the service.

Managing Vendor Lock-in – In choosing platforms and tools, vendor lock-in is unavoidable in any enterprise IS. The best strategy is to pick the vendor that best suits your profile, adopt popular industry standards where possible and try to be smart about how and when you upgrade.  

Is your organization ready for SOA? Be sure to read the original essay.

No comments

Watch Thread Reply

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.