Welcome!

Web 2.0 Authors: Jim Kaskade, Elizabeth White, Liz McMillan, Roger Strukhoff, Kevin Benedict

Related Topics: Open Source, SOA & WOA

Open Source: Article

The Five Basic Characteristics of SOA

If these measurements apply, you can call it SOA, at least in my world

The Gartner Group just listed "9 ways to measure SOA success.” Not to take anything away from Gartner, but theirs is a pretty basic list, if you ask me.  Indeed, these nine measurements are really about any successful architecture, using SOA approaches or not, which is fine. However, I have a few of my own that are more specific to SOA.

Here are Gartner's nine:

1. Improved efficiency, particularly with respect to business processes execution.

2. Lower process administrative costs.

3. Higher visibility on existing/running business processes.

4. Reduced number of manual, paper-based steps.

5. Better service-level effectiveness.

6. Quicker implementation of processes.

7. Quicker time to market.

8. Shorter (overall) project cycles.

9. Overall reduction in the total cost of application development and maintenance.

However, I have a few of my own that are more specific to SOA.

1. The ability to alter schemas without affecting services and/or processes. You've created an architecture that's able to accommodate changes to the underlying data structures without driving redevelopment of any services or processes that leverage that data structure.

2. The ability to alter services and/or processes, without altering schemas. The same concept as No. 1, but we're just going the other way. The issue here is that SOA architects often fail to consider agility in the context of data abstraction. In many instances, data is bound to services, processes, or both, and thus any changes to those services and/or processes drives changes to the schema, and the other way around. In order to get the full benefit of the architecture, you need to figure out how to abstract these changes in either direction.

3. The ability to create and alter core business processes using a configuration rather than a programming approach. The idea is to place volatility into a single domain, such as a process/orchestration layer or a composite (aka mashups), thus avoiding constant redevelopment and testing. This is key to your success, considering that we are going to change many business processes going forward, but typically should not change many services. Therefore, you want to make sure that any changes to business processes don’t drive waves of redevelopment. In essence, it’s a configuration solution, not a programming problem.

4. The ability to leverage processes and services from outside of the enterprise, such as from a cloud computing provider. We're clearly moving in this direction, and much of the motivation behind SOA is the ability to make this type of convergence easy. Architecture should consider that services are pervasive, and can come from within or outside of the enterprise. This frees up those who build business applications to be more creative and productive. Don’t be afraid of extending your architecture to the clouds.

5. The ability to expose processes and services from inside of the enterprise. In short, going the other direction as No. 4. Same benefit, just the other direction. If these measurements apply, you can call it SOA, at least in my world. At issue is that many are losing perspective when it comes to SOA. SOA is an architectural pattern that provides an additional benefit of agility, or the ability for the architecture to change as needed to support the business. Often, this is overlooked in favor of more easy to conceive and technology-oriented concepts. However, going down that road won’t even provide you with the core benefits you’ll need to justify doing a SOA. Trust me.

More Stories By David Linthicum

Dave Linthicum is Sr. VP at Cloud Technology Partners, and an internationally known cloud computing and SOA expert. He is a sought-after consultant, speaker, and blogger. In his career, Dave has formed or enhanced many of the ideas behind modern distributed computing including EAI, B2B Application Integration, and SOA, approaches and technologies in wide use today. In addition, he is the Editor-in-Chief of SYS-CON's Virtualization Journal.

For the last 10 years, he has focused on the technology and strategies around cloud computing, including working with several cloud computing startups. His industry experience includes tenure as CTO and CEO of several successful software and cloud computing companies, and upper-level management positions in Fortune 500 companies. In addition, he was an associate professor of computer science for eight years, and continues to lecture at major technical colleges and universities, including University of Virginia and Arizona State University. He keynotes at many leading technology conferences, and has several well-read columns and blogs. Linthicum has authored 10 books, including the ground-breaking "Enterprise Application Integration" and "B2B Application Integration." You can reach him at [email protected] Or follow him on Twitter. Or view his profile on LinkedIn.

Comments (0)

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.