Service Oriented Computing Is Overrated

Information infrastructure problems cannot be solved by service oriented computing (SOC) alone. Pro or con?

Pro: Hyped Claims

Service-oriented computing (SOC) is a programming paradigm shift in the computer and information technology industry. Unlike object-oriented programming, SOC deals with modules or components that can be represented as reusable entities with service interfaces. Each entity may have a specific goal or objective. The entities can be composed and reused in various applications or solutions.

For example, if you have a traditional Java program, you might like to allow this Java program to be accessed or invoked by other applications deployed over the Internet. So you can make a service orientation for your traditional Java program. That is, expose some of the method names and associated parameters as Web services. SOC makes this possible.

In the long run, SOC is being mainly driven by service oriented architecture (SOA), which has been gradually adopted in most industries. Why does the industry care about SOA so much? Mainly because SOA has been evolved from an IT infrastructure (e.g., programming and middleware) level to a business process level and then further to enterprise level.

In terms of body of knowledge, SOC has become an important part of the rapidly evolving services computing discipline, which covers the science and technology of leveraging computing technology and IT to create, operate, and manage business services in an effective and efficient manner. As the largest computing professional society, the IEEE (Institute of Electrical & Electronics Engineers) Computer Society, of which I am an active member, has been defining the knowledge areas of services computing since 2003 by working with leading industry partners such as IBM to help train more top talents in the modern services industry. IEEE Transactions on Services Computing also launched to publish top quality research papers in this emerging field.

Con: A Technological Boon

The basics of service oriented computing (SOC) are actually quite sound and represent a modest improvement over ideas developed during the past quarter-century: distributed processing, object-oriented programming, self-describing data, middleware.

However, now we have embraced SOC as the solution to all that ails our information infrastructure. If we rush to deploy the ideas of this process without thinking about what we are doing, we risk committing to an expensive development process that may not solve our problems and could lock us into an inflexible IT system.

Like so many new ideas in IT, SOC works well with simple problems, such as the commonly cited example of planning a vacation. As long as we are working with straightforward services, such as the task of purchasing an airline ticket or reserving a hotel room, we can make and deploy successful systems. Once we are dealing with more ambiguous services and trying to manage those systems, we find the current tools of SOC much less helpful. These tools encourage us either to create a system either too general or too narrow. With the general system, we are likely to waste money and time and create security problems. If we solve only the immediate problem, we will often have created a system difficult to adapt to new needs.

The proponents of SOC argue that their methods ought to produce simple, flexible, and well-performing systems. They will make good on these promises only as they improve the standards of SOC and find better ways of managing the dynamic interactions between services. They will likely make such improvements over the next five years, but in the process, they will create a form of information technology that is different from the service oriented architecture that we see today.

Opinions and conclusions expressed in the BusinessWeek Debate Room do not necessarily reflect the views of BusinessWeek, BusinessWeek.com, or The McGraw-Hill Companies.

Reader Comments

Iconoclast

Remember, I believe SOC was created by a market research team at IBM to convince clients they needed to spend tens of billions of dollars on something that is more difficult than the average person can overcome. Granted, if you gather the best and brightest people together, you can probably make this happen. Not every company can hire the best and brightest, and most fail to hire enough.

Joe

True, any software architecture should align with business processes. As the pro argument points out: Standards are the driver. SOC/SOA/Web services is not even the issue. It's not a tech issue. How to reuse information across business processes is the issue.

BY

Zhang omitted to mention that one of the business drivers for adopting SOA/SOC is for enterprises to reuse legacy applications by wrapping them in simple codes to let them appear as services. Unlike the previous thread's claim that enterprises "needed to spend tens of billions of dollars," enterprises can actually save bundles of money in buying or creating new applications.

Simhadri

Further to the comment from BY, SOA/SOC helps encapsulate the legacy application code as services interim, then slowly migrate these complex pieces of functionality into more manageable modern technologies as the people who built the legacy applications are no longer around and the technologies are antiquated. This will give business an opportunity to modernize their environment in a more manageable way than ever before and reduce the impact to the businesses as a result.

Kevin

Let's face it, SOA is just another technology for those who offer "solutions" to make money. If companies like MS, Oracle, and SAP spent more time building robust applications instead of trying to be bigger, we wouldn't need SOA, Fusion, you name it. At least for the small to medium companies. People forget, the KISS principal can apply to systems as well. Why you see these large IT transformation initiatives under way to sunset and eliminate all the custom apps, and a move to using COTS as intended.

Pedro

SOA is not overrated. It's exactly the type of architecture and design that we need to overcome the IT application deficit. Its modular approach of delivering services allows re-usability while allowing refactoring of legacy applications. Aside from the direct benefits of service registration, orchestration, etc., it is easier to manage and maintain services than specific siloed applications. In these turbulent financial times, both SOA and SaaS (Service as a Service) are needed to keep the IT costs down.

beano

SOA/SaaS (Software as a Service) offers an extensible and flexible infrastructure for newer and custom software. SaaS also beats out home-grown enterprise apps by offering a competitive price point where the application can be tried/tested for a marginal cost prior to enterprise-wide deployment. But an earlier commenter is right about the need for analyzing reuse of business process before a comprehensive argument can be made for SOA for legacy apps.

Albert Benoist

Take a look at [my book], The Vertical System. It is a new way to look at our problems and a real solution.
Albert Benoist

Shamus

This is an inappropriate topic for a debate, since "overrated" is subjective and can never be unequivocally decided.

Albert Benoist, I had a good read of much of your book. It's great that people are thinking and writing about alternatives to the current economic system. My beliefs are that (a) technology such as the bracelet you propose will always be abused, especially where bankers are involved. Don't forget that money is the root of all evil. (b) In order to free ourselves from a faked economy, we need to unchain our entire concept of trading time for money. Time is worthless, as are ideas; only the product or service that is delivered as a result can hold value. Try as they might, systems will never be in place to value time, because time spent by somebody with 30 years in training will not necessarily be more nor less productive than time spent by a freshman. It all comes down to incentive and other things we cannot even attempt to measure.

The problem is not economy; the problem is faked scarcity. Companies, patents, religions, legal and governmental institutions exist largely to enforce and propagate scarcity, since it is the only path to profit, which is the only path to a comfortable life in this strange, new economy. Until we stop faking scarcity, admit that we already produce more food and clothes than we could ever use, and admit that automation can help produce even more of the only two things we actually want (technology and nutrition, not money--we just use it, for now, to get technology and nutrition), nothing will change, no matter how many holes are plugged. Scarcity, fake scarcity, and the profit associated with maintaining it is our bottleneck.

John

I read http://www.thesoablog.com daily for SOA news.

Bikrant K Sharma

Software as a service is a great concept, and one cannot ignore its powers to stimulate enterprise to grow rapidly and make it scalable. Working as a software developer for two years, I think SOA is not overrated but wrongly used.

It's programmer nature that if I got a new hammer, I'll then start nailing every thing with it. No, you can't. You have to see what goes well with service and what doesn't and decide accordingly. If you just go ahead with everything as service, you are not going to get appropriate results. You have to think before using it. Don't nail!

JP

SOA is useful, but it is definitely overrated.

Newbie

It is appalling to see how dumb techies are that they even run out of new ideas. The philosophy of SOA is nothing new. The techies (who think they are God's gift to Earth) have been trying to come up with newer jargons to resurrect their jobs and professions. Not just SOA/SOC, also think of crap like SaaS, Utility Computing, Cloud Computing, Mashups--the list is endless with useless ideas. The fact is business guys don't trust techies. Period.

Tom-in-Ohio

Sounds like a marketing department just discovered subroutines and decided to try and trademark it.

Another John

Newbie at March 5, 2009 11:18PM: So you would agree that the platform you used to write that gem is a useless idea? How dare those "dumb techies," as you say, develop something that you're able to use to ridicule and denigrate them. I'll grant you that not every idea is a good one, but you can hardly argue that tech is of no use to business. You can bet your last dollar that tech will figure in big time in trying to wade through the massive data as we climb our way out of the mess in our economy.

Nasir

Well, Newbie, don't you agree that it's the business guys' foresight that has actually brought us to the downturn we are in now. Second, if technology is of no use, imagine how business was done 10 or 20 years back, categorically. I am not getting into the debate of what technology has brought to the business practices in general. The truth is that SOA or Web services as it's for Java, does actually bring a lot of good sense it makes the so-called legacy systems. Still relevant, it basically bridges the gap between the past systems and future ones to come, and between businesses don't worry. Newbie, somehow you will get this feel of SOA once you see the entire business system has been revolutionized by this concept.

3rd John

So, the question is how do SOA, SOC, SaaS, mashups, Utility, Cloud, move the humans, machines, and software up the evolutionary ladder toward The Singularity? Are these steps on the ladder or tangents that have no lasting evolutionary value?

Albert Benoist

In the vertical system, if you want privacy, take off the bracelet. No penalty. Of course, you lose the benefits, too. The system is highly individual oriented, everyone is somewhat different from his counterpart. Conversion of work to asset yields unlimited capital and full employment. Look me up and see.

Nexus

SOA/SOC is a bit of a con and marketing hype to extract more IT dollars--it is no more than glorified messaging and merely absorbs more limited IT budget (to allow more costly tinkering and fiddling) in the belief that disparate systems (different look and feel, overlapping processes, duplicated and multiple data definitions) can be made to work seamlessly. SOA will not overcome the inheritance and limitations of legacy (batch) applications--legacy includes SAP, Oracle, MS, etc. What is needed is first, a new way of building fully integrated real time applications without programmers--a new eco-system (this capability exists), or second leverage a system that neutralizes multiple supporting systems by integrating them into a broader and higher operational framework that represents the enterprise (and the value chain) itself (this also exists)--SOA tools cannot do this.

DonR

I worked for a vendor of SOA technology and tools a few years ago. I think it's fair to say that we had a pretty mixed experience. Our customers were primarily large financial institutions and telephony companies, all of them with vast IT investments. A few of them had the architectural discipline within IT to do SOA right, and their results were spectacular. They found they were able to build 80% of every new system on existing modules or components, many of which were ancient mainframe applications with well-designed services interfaces. But that kind of sophistication, along with the determination to create a culture of reuse, was missing from all but a handful of our customers and, I daresay, all but a handful of IT organizations globally.

SB

Looks like some of the bloggers have jumped in without going to school on the SOA concept first. If they did that, they would see, as pointed out by Mr. Zhang, that SOA is a paradigm shift, not a retread of MOM, message-oriented middleware. Not a conspiracy of techies either. Of course SOA won't overcome legacy batch overnight, but it offers ways to repackage the old, with a concept for handling old and new as services, with a linking process. That will take a lot of work, but to see that it's real, one has to look no further than the ERP providers who see the challenge to their hegemony coming out of left field.

Kirk

The big issue with SOA is not the technology but the business. (Think scalpel versus staff.) As the technical side of business becomes more and more commoditized and change management of IT solutions becomes a six-month, $500,000 gambit, the business is willing to perform more self adjusting. The speed of business is now much faster than the speed of IT. Ironically the management of information is about 1/1000 as fast as the information itself. SOA is just fine, but is your business set up for process owners, process governance, business rule management, business activity monitoring, metrics management in near real time, data extraction expertise, analytics, etc? If not, SOA will seem like a geek dream, not a revenue stream.

Joe Coder

Silver bullets are for werewolves. They don't work for technology.

SOA is another brilliant but essentially worthless marketing scheme. OO creates jobs, not software. Every few years (weeks?) there's another whole way of looking at software and deployment, and nobody says the emperor has no clothes. All this does nothing but waste money and destroy the economy. Business should be about delivering product, not about consuming technology. The world is upside down thanks to MBA CTOs who haven't a clue and have never written a line of code in their lives.

There is no end to good marketing. Don't let the business or technology get in the way. Just keep on spending and consuming. In the end you'll have 20 offshore data centers full of Indian and Chinese guys and no product.

Join the Debate

 

Participate More!

Please send us your ideas for new Debate Room topics. If you're an academic, association officer, or other industry expert and would like to write a Debate Room essay, send us a query. Questions? See the

BW Mall - Sponsored Links

Buy a link now!