Have Web Services really begun yet? (Or, the REAL Web Services Killer App.)

by Kevin Bedell

Web services seem like they've been around too long already. They're like a great new Summer song that's getting old now that Fall's on the way. Or like your favorite Uncle after he's been at the house a month and you realize it's him eating all your favorite breakfast cereal.


OK, so it's not that bad. But from all you read about them, you would think that they've been around forever. And they have if you consider the life span of the average new technology. But I think this is different. Really different. Here's why.


Web services are actually delivering value. This isn't just a marginal, incremental improvement - it's a real change.


By defining a contract between the client and the server that's easy to understand and based on technology-agnostic XML, Web Services have found a killer app: It makes integrating two systems easy.


Sure - you can do a lot more than just integrate two systems using Web Sevices. But this is a killer app and it's real.


Here are a couple easy examples:


Exposing business systems to your customers. Every company has back-end systems that they run their business on. And just about every company has web- or extranet-applications that their customers use. How do you bridge the two? Put a web service between them and it's easy. It no longer matters that one department uses Java and the other uses VB. Everyone speaks XML.


Simplify passing data to suppliers. In the last two years I've worked on two e-commerce systems that needed to send orders to fullfillment companies. In one situation we connected via MQ Series; in the other the supplier wrote an application we connected to using RMI. We could have saved huge hours if we had just written a web service and defined everything in XML. (And I could have spent more time re-reading old Seinfeld scripts.)


It's worth repeating - connecting two discrete systems together is the Web Service Killer App.


But are we really just beginning? You bet. Most corporate IT departments are just getting started with the technology.


Consider:


  • Apache Axis is just beginning its adoption.

  • The EJB 2.1 spec isn't even final yet and will turn every J2EE server into a Web Service server.

  • .NET is moving, but most recruiters will tell you that .NET projects have only been staffing in earnest for 6 months or less.




And looking over the current crop of JSR's listed with the Java Community Process, it's clear that the whole next generation of Java and J2EE will all be focused around incorporating web services deep into Java. And this won't even hit production apps for a year.


So (as my kids ask every Summer when we're driving on vacation), "are we there yet?"


Nope. Not by a long shot.




3 Comments

alexmoffat
2002-09-04 06:57:30
To paraphrase a campaign slogan, "It's the semantics, stupid"
While WebServices certainly make the technical part of integration easier I'd question whether that was ever the major difficulty. In my experience it's always far harder, and involves more difficult to obtain resources, to understand the meaning of the data being exchanged than it is to actually exchange it.


Standard schemas etc. for the web services xml will help but will still require each participant to map their own internal data to the standard schema. In fact, that now introduces two mappings with the possiblity for error and misunderstanding where there would previously only be one.


It seems that developers always like to try to solve the "easy" technical problems, i.e. how to I map an object into xml, rather than attempt the more difficult and fuzzy semantic ones, i.e. how do I know that we both agree on what "production lead time" means. We can reinvent CORBA, or EDI, as web services, but, while doing so will help keep us all employed, if we don't tackle the semantics there won't be any substantive change.

kbedell
2002-09-04 08:02:39
To paraphrase a campaign slogan, "It's the semantics, stupid"
I certainly agree with your points. Just because two sides "speak the same language" (i.e., XML), doesn't mean it will be easy to communicate with a common meaning.


But my point remains the same: It's easier to get to the point where you're discussing the meaning of the communications now. Before one side or the other (or likely both) had to learn new technologies (for example you mentioned CORBA) before that discussion even took place.


And getting the two parties discussing the meaning of the communication faster (instead of figuring out which communications technology to use and how it works) adds value to the process. Significant value. As I stated earlier - I think this is a Killer App.



alexmoffat
2002-09-04 08:20:11
To paraphrase a campaign slogan, "It's the semantics, stupid"
And I agree with you. I think web services make things easier. Great leaps forward (sounds like a Chinese political slogan) will only come with more concentration on semantics though. Perhaps by reducing the syntax and technical issue to commodity status web services will help people focus on the semantics.