Workshop on Web of Services for Enterprise Computing
On 27-28 February, the World Wide Web Consortium (W3C) is organizing a workshop on the "Web of Services for Enterprise Computing", the aim of which is "to gather interested parties to discuss and provide recommendations to W3C regarding the best approaches to facilitate the processing of business transactions and interactions with systems that pre-date the Web, and address the need to interconnect intranet and/or extranet services using Web technologies." IONA’s Eric Newcomer and MITRE’s Ken Laskey will chair the workshop.
The call for papers has generated a number of very interesting submissions. The workshop agenda reveals the position papers that have been accepted, including the following examples:
- IONA’s Steve Vinoski will present a paper authored by Newcomer that argues for a hybrid solution for addressing the REST-vs.-SOAP debate; "A hybrid approach to the problem may be best. Let the Web do what it does, and evolve and grow naturally. Over time existing IT systems may be replaced using Web technologies, but in the short term the investments in existing systems are too large to consider wholesale replacement. It just isn’t economically feasible for business and government to completely rewrite and redesign everything they have, especially when it is delivering value."
- Redhat’s Mark Little (who is also an InfoQ SOA editor) has submitted a position paper requesting the W3C to add support for session contexts: "[T]he W3C should acknowledge that context and session management are a fundamental missing component of the Web Services architecture and solicit responses on how to best address it."
- WSO2’s Jonathan Marsh and Davanum Srinivas ask the W3C to assume a more active role in improving interoperability in the WS-* world: "[W]hile incubating higher layers of Web Services, the W3C should not neglect the opportunity to become the central focus for maintaining the core Web Services specifications, both individually and when composition issues arise between them, and to lead practical interoperability by maintaining and extending the test frameworks and activities."
- The submission from BT’s Paul Downey “concentrates on a single, but important issue: given the Web has proven to be enormously successful for human to computer interactions, why isn’t the Web seen as being “good enough” for computer to computer interactions”. Paul has expressed his love for the Web before.
- REST proponent Mark Baker addresses the “enterprise issues” reliability, security and transactions, and argues that in each of these cases, REST as the Web’s architecture is actually superior to the Web services approach — his position does not come as a surprise to InfoQ readers here.
- Yahoo!’s Hugo Haas and Mark Nottingham (who, incidentally, has just confirmed he’ll present at QCon) describe the challenges Yahoo! faces with SOAP-based and HTTP-based services; according to them, the most pressing problem with HTTP is authentication (“The mechanisms defined in RFC2617 [which describes HTTP basic and digest authentication] fail to meet even the basic requirements of the modern Web.”)
- HP’s David Booth suggests a radically different approach. The purpose of his submission “is not to propose a particular standardization effort for refining the existing XML-based, WS* approach to Web services, but to suggest another way of thinking about SOA in terms of RDF message exchange, even when custom XML formats are used for message serialization.” The main issues addressed by using RDF are XML versioning, “babelization” of vocabularies and “schema hell”.
- In his submission, Dave Orchard from BEA questions whether the W3C has achieved its goal of creating a stack of small, composable specifications that lead to a consistent architecture: “In examining any future work, the question of whether the factored approach has delivered on the promises of interoperability, simplicity and composability must be answered. The answer is still to be determined and it certainly is not an unqualified Yes at this point in time, 5 years after the first WS workshop.”
- The IBM paper, authored by Chris Ferris, Kelvin Lawrence and Tony Storey, also argues for the co-existence of different styles: “Our vision is of a single scalable stack, offering the best of the Web in simple scenarios, and scaling gracefully to SOAP based Web services with the addition of optional extensions when more robust quality of service features are required. We believe that the right steps have been taken in the development of some of the more recent WS-* specifications to enable this vision to become reality.”
- Progress Software’s Glen Daniels concedes REST is appropriate in many situations, but not in all situations: “For many cases the “staight-ahead” Web as it is today just isn’t sufficient - for instance, when mapping REST-style semantics on top of back end systems creates design mismatches, or when enterprise-style “-ities” are needed beyond what standard HTTP/SSL can provide.
- The W3C Technical Architecture Group (TAG) has submitted a white paper, edited by Noah Mendelsohn, presents and discusses three different use cases (although one might argue it’s rather the same use case, implemented in three different ways). The conclusion is that the Web offers many benefits the Web services stack should be considering.
An amazing document comes from Nick Gall, a VP at Gartner, whose position is “that the W3C should extricate itself from further direct work on SOAP, WDSL, or any other WS-* specifications and redirect its resources into evangelizing and standardizing identifiers, formats, and protocols that exemplify Web architectural principles. This includes educating enterprise application architects how to design ‘applications’ that are ‘native’ web applications.” Gall has not been invited to present it at the workshop, though.
There are numerous reactions to the workshop and the submissions, e.g. from Eric Newcomer, who will chair the workshop, Pete “S stands for Simple” Lacey, who would love to get in. Steve Loughran has put up an unofficial position paper, not exactly in favor of the SOAP/WS-* approach (to quote: “Let’s recognise that the SOAP dream of dynamic service binding, interop and global services is dead. The only place SOAP survives is in the enterprise, because if you can control both ends of the conversation, you can use the same toolkit and eliminate interop.”), and argues that one thing the REST community should adopt is a simpler programming model (which gets questioned by Patrick Logan, and subsequently addressed by Steve again.)
All in all, the workshop papers, as well as their respective authors’ writings and blogs, provide a very comprehensive overview about the positions in the REST-vs.-SOAP debate, which has been a popular topic here on InfoQ, too. While it may seem that awareness of (and respect for) REST has grown, one should not forget that the workshop call for papers specifically asked for suggestions on how to align Web services with Web architecture. Pete Lacey may be right when he suggests to REST proponents that they can’t hear you.
Great summary, minor comments
Thanks very much for a great summary of the workshop papers. I am really glad we ended up receiving so many good papers. For a while there I was kind of worried we would not.
I did want to make it clear though that the purpose of the workshop is not to settle the debate about SOAP vs REST or whether WS-* is too complex and bloated etc. The purpose of the workshop is really to try to address the problem of enterprise software standardization.
This may not come across too well in the workshop description. To be honest we had a hard time coming up with a good description. But this is the origin of the workshop - from comments I first made at the W3C's Advisory Comittee meeting in December '05.
Basically I was saying that while the Web is very successful, and in fact standardization has worked there, the enterprise IT environment still struggles to find the right solution.
Personally, I believe that XML and Web services are the best solution we have to date - perhaps I should qualify that by saying if they were to be implemented according to their original design principles.
But if someone can propose a solution based on Web technologies that will address enterprise requirements, that is fine by me. My goal really is to find a good solution here.
So far in the discussions leading up to the Workshop, most users have rejected the idea that Web technologies are sufficient.
Something very interesting came out of the debate, which is basically that companies whose IT environments post date the Web do not really share that view. It seems to be mainly companies with IT environments that predate the Web who are saying this.
We also tried to encourage as many users to submit papers as we could, since finding a solution is predicated on stating the requirements.
I am also glad to say that it looks like Pete Lacey will be able to join us (we are just waiting for the paper he promised to submit).
However what I really wish is that we will be able to spend most of the Workshop time on trying to find a solution, rather than on criticizing the work that's been done to date.
Don't get me wrong, that's important, but what is most important to me is a finding a good alternative, if what we have isn't going to cut it.
Nick Gall's paper
Sorry, I did want to answer one more thing. Nick's paper was accepted for the Workshop - some were not accepted at all and are not published. The W3C workshop process includes peer review of submitted papers, and all submitted papers were reviewed by members of the program committee.
Nick's paper was accepted and he has been invited to attend. (You need an accepted paper to get in invitation.) But the results of the review indicated that the points in his paper were covered by another paper, and so we did not ask him to present.
However the Workshop is structured so that each presentation is followed by discussion, and it is our expectation (and hope) that Nick (and others) will contribute to the discussion. And the discussion is what will go into the workshop results.