InfoQ

News

Pragmatic SOA: Adoption Project by Project

Posted by Mark Little on Jan 31, 2007 05:33 AM

Community
SOA
Topics
Methodologies,
Stories & Case Studies,
Governance

The latest release from Zapthink discusses that age-old axiom of how you shouldn't run before you can walk and it's applicability to SOA. According to ZapThink:

"... success with SOA rarely necessitates comprehensive change; instead, architects who choose their SOA battles carefully can deliver on SOA's promises to the business via projects of limited scope. Architects who miss this point often set the bar for SOA success too high ..."

This isn't particularly new: for example, we had the same problems when CORBA and DCE first came on the scene and everything just had to be distributed and object-based. Some could argue that this in turn lead to a lot of backlash. Therefore, lessons like this should be learned and it's good to see the article, particularly given the large amount of hype that still surrounds SOA. Hopefully most people are experienced enough to realise this, but it's often the case that the obvious tends not to be so obvious after all.

The authors discuss that an iterative approach to developing with SOA is extremely important, along with solution-oriented thinking. Pragmatic SOA combines these two things with a risk/benefit analysis and should (in theory), help projects to experience some/many/all of the benefits SOA offers. According to Zapthink, Pragmatic SOA should be taken on a project-by-project basis and  they give some interesting examples, such as:

  • SOA Governance: as the report mentions, most governance challenges don't involve IT directly and aren't automatable. Therefore, with Pragmatic SOA, governance initiatives could focus on Service security policies, then followed by QoS policies etc. Creating these building blocks allows IT to leverage SOA in increments and prioritize specific policies.
  • Reuse: in theory SOA offers better reuse characteristics than object-oriented systems, but practice is currently different. There are often technical and political reasons that affect reuse within organizations; cross-organization/cross-company boundaries add more complexity. The authors correctly indicate that reuse builds over time and shouldn't be forced: it will grown "at its own pace".

The report concludes that:

"When architects are implementing SOA, this need to focus on pragmatic efforts is particularly important, because of the immaturity of the architectural approach on the one hand, and the need to build and maintain business support for SOA initiatives on the other."

Do you have examples of other scenarios where pragmatism and SOA go hand-in-hand?

No comments

Reply

Exclusive Content

Measuring Agile in the Enterprise: 5 Success Factors for Large-Scale Agile Adoption

Michael Mah analyzes the development process in 5 companies: 2 Agile (one of them BMC) and 3 classic. He presents the factors which contributed to the success of BMC's Agile adoption.

Tom Preston-Werner on Powerset, GitHub, Ruby and Erlang

In this interview filmed at RubyFringe 2008, Tom Preston-Werner talks about how both Powerset and GitHub use Ruby and Erlang, as well as tools like Fuzed, god, and more.

David Laribee on Alt.NET and its Mission

David Laribee discusses the purpose of ALT.NET, its mission and future.

Discover RailsKits and Stop Writing Redundant Code

Ruby on Rails has become a popular Ruby framework for creating web applications in recent years. An aspect of creating a web application is the need to repeatedly create the same base functionality.

A Formal Performance Tuning Methodology: Wait-Based Tuning

Steven Haines talks about tackling web application performance tuning by proposing a method called wait-based tuning.

Shaw and Fowler About Forging a New Alliance

Shaw and Fowler talk about the need for a new relationship between the business department and the IT department. Studies have shown that projects mostly fail due to miscommunication between the two.

How to GET a Cup of Coffee

In this article, Jim Webber, Savas Parastatidis and Ian Robinson show how to drive an application's flow through the use of hypermedia in a RESTful application.

Archaeopteryx: A Ruby MIDI Generator

Eccentric artist turned overnight anti-celebrity, Giles Bowkett captures the heart and soul of RubyFringe as he demonstrates his revolutionary Archaeopteryx MIDI drum pattern generator.