<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>mikechampion's weblog : Web Services and Service Architectures</title><link>http://blogs.msdn.com/mikechampion/archive/tags/Web+Services+and+Service+Architectures/default.aspx</link><description>Tags: Web Services and Service Architectures</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Service Orientation, the Hype Cycle, and a RESTaurant</title><link>http://blogs.msdn.com/mikechampion/archive/2005/03/23/400961.aspx</link><pubDate>Wed, 23 Mar 2005 18:06:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:400961</guid><dc:creator>mikechampion</dc:creator><slash:comments>8</slash:comments><comments>http://blogs.msdn.com/mikechampion/comments/400961.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mikechampion/commentrss.aspx?PostID=400961</wfw:commentRss><description>&lt;p&gt;Edd Dumbill has a funny &lt;a href="http://usefulinc.com/edd/blog/contents/2005/03/23-soa/read"&gt;retrospective on the SOA hype&lt;/a&gt;:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.sys-con.com/story/?storyid=48814&amp;amp;DE=1"&gt;&lt;strong&gt;&lt;font color="#555599"&gt;&lt;em&gt;2005 Will Be the Year of SOA -- Are You Ready?&lt;/em&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;&lt;em&gt; (.NET Developer's Journal) &lt;/em&gt; &lt;li&gt;&lt;a href="http://searchwebservices.techtarget.com/featuredTopic/0,290042,sid26_gci946449,00.html"&gt;&lt;strong&gt;&lt;font color="#555599"&gt;&lt;em&gt;2004: The year of the SOA?&lt;/em&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;&lt;em&gt; (ZapThink, searchwebservices.com) &lt;/em&gt; &lt;li&gt;&lt;a href="http://www.gartner.com/DisplayDocument?doc_cd=111924"&gt;&lt;strong&gt;&lt;font color="#555599"&gt;&lt;em&gt;Predicts 2003: SOA Comes of Age via Web Services&lt;/em&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;&lt;em&gt; (Gartner) &lt;/em&gt; &lt;li&gt;&lt;a href="http://www.sys-con.com/xmledge/24.cfm"&gt;&lt;strong&gt;&lt;font color="#555599"&gt;&lt;em&gt;Bowstreet Predicts 2002 Will Be The 'Year of Web Services'&lt;/em&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;&lt;em&gt; (Bowstreet press release) &lt;/em&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;I remember having a &lt;a href="http://groups.yahoo.com/group/service-orientated-architecture/message/892?threaded=1"&gt;bit of a tiff &lt;/a&gt;with &lt;a href="http://groups.yahoo.com/group/service-orientated-architecture/message/907?threaded=1"&gt;someone from ZapThink &lt;/a&gt;about the time that "2004: The year of the SOA" piece came out:&lt;/p&gt; &lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt; &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;&lt;em&gt;Looking back on the OO "revolution" of 15 years or so ago, what would one think of a 1990 analyst report that pointed to a window of opportunity that would be closed by 1992 as C++ and CORBA mature and standardize? That's about where the SOA "revolution" is today.&lt;br /&gt;&lt;br /&gt;I would be so nice if just once in my career I see a promising idea NOT go through the hype cycle.&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;I don't remember the early days of the OO/OOP revolution all that well, but I think we saw a lot of the same kinds of things as are happening with SO/SOA today: endless debates over what OO really means, attempts by vendors to conflate tools with the architectural principles they claim to facilitate, and a long slow process of sorting out the practical ideas that actually work from the prescriptions of the theorists.&amp;nbsp; Whether or not it is true in hindsight about OO, it's my foresight about SO.&lt;/p&gt; &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;In a previous life I spent a fair amount of time trying to make sense out of web services architectures and SOA at W3C and promoting the SOA ideas at the Day Job.&amp;nbsp; With some perspective, and from the vantage point of an organization that has no particular dog in any of these fights, it's interesting to re-examine previous posts about service orientation.&amp;nbsp; I haven't found anything I would disavow, and at least &lt;a href="http://groups.yahoo.com/group/service-orientated-architecture/message/1080?threaded=1"&gt;one that I kindof like&lt;/a&gt;.&lt;/p&gt; &lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;The way I see it, XML and web services just provide standard plumbing&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;for information. Plumbing is not sexy and it will not solve your&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;problems, but the *lack* of decent plumbing leads to a rather, uhh,&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;unsanitary situation. *Standardizing* the plumbing just makes it&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;easier to mass produce, create a workforce of people who know how to&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;use it, and generally turn it into a commodity rather than something&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;you have to worry about.&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;Anyone marketing SOA or web services as a Silver Bullet will be dodging&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;ordinary bullets from disgruntled customers. None of this stuff is&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;going to make "data transparently available everywhere in your&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;enterprise", but it *is* cheaper and easier to move the data around&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;and transform it using commodity "plumbing" rather than hand-crafted&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;"plumbing." That's the value proposition, and it appeals to those who&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;have been around long enough to know how much of a typical IT budget&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;has traditionally been spent on the software equivalent of hand-forging&lt;/font&gt;&lt;/em&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: arial; mso-outline-level: 1"&gt;&lt;em&gt;&lt;font face="Times New Roman" size="3"&gt;connectors between odd-sized pipes.&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;In my &lt;a href="http://www.cioupdate.com/trends/article.php/3434691"&gt;very last performance &lt;/a&gt;as an SO evangelist, I took my best shot at explaining what service orientation was all about, taking a broad perspective and trying hard to avoid buzzwords.&amp;nbsp; &lt;/p&gt; &lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt; &lt;p&gt;&lt;em&gt;In the real world, we use services all the time -- getting money from banks, ordering food from a restaurant, getting clothes dry cleaned, and so on. What makes these "services" is that we don't need to know anything about banking, cooking, cleaning, etc. in order to use them, we simply request them.... &lt;/em&gt; &lt;p&gt;&lt;font face="Courier New"&gt;&lt;em&gt;&lt;font face="Times New Roman"&gt;In a nutshell, service orientation is an approach to designing systems in which each component knows only how to request and consume the services provided by other components, and little about their internal algorithms, data structures, stored data formats, query languages, etc.&lt;/font&gt; &lt;/em&gt;&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;IMHO this gets at both the promise of SO and its main drawback:&amp;nbsp; It promises to help us think about distributed software systems in ways that are more in synch with the ways our customers -- real business people and consumers -- think of what they want from us.&amp;nbsp;On the other hand, that takes us away from the nice clean world of formats and protocols and into&amp;nbsp;the messy world of actual customer needs and human foibles that&amp;nbsp;tend to trip up &amp;nbsp;nice neat software engineering theories.&amp;nbsp; In short, I agree with the skeptics who don't think that the "Year of SOA" will come anytime soon, but disagree with those who think there is nothing but hype keeping the idea of service orientation aloft. &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;I hope (i hope i hope i hope) that the "SOAP vs REST" Godzilla-of-permathreads has &lt;a href="http://weblog.infoworld.com/udell/2005/03/18.html#a1197"&gt;returned &lt;/a&gt;to the&amp;nbsp; &lt;a href="http://www.iona.com/blogs/vinoski/archives/000152.html"&gt;ocean &lt;/a&gt;&amp;nbsp;&lt;A href="http://blogs.msdn.com/dareobasanjo/archive/2005/03/17/397437.aspx"&gt;after&lt;/a&gt; &lt;a href="http://www.netcrucible.com/blog/PermaLink.aspx?guid=d9508178-c4e4-4175-bd7f-0e261e1a4739"&gt;stomping &lt;/a&gt;around the Web for a few weeks.&amp;nbsp; The links in the previous sentence point to some&amp;nbsp;wise summaries of where things really stand,&amp;nbsp;which essentially comes down to the fact that both XML over HTTP and the WS-*&amp;nbsp;technologies are &lt;a href="http://www.mcdowall.com/2005/03/rest-and-soap-fitting-them-into-your.html"&gt;useful things to have in one's toolbox&lt;/a&gt;, to be used as the situation demands: Pliers and a monkey wrench (XML over HTTP?) for the&amp;nbsp;cheap and cheerful&amp;nbsp;work, a set of carefully calibrated socket wrenches (XSD and WSDL?) for working with carefully engineered machinery, and maybe a pneumatic nut driver (WS-*?) for the industrial strength jobs.&amp;nbsp; &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;Perhaps it is now time to &lt;a href="http://www-128.ibm.com/developerworks/webservices/library/ws-restvsoap/index.html"&gt;look at the real differences &lt;/a&gt;between thinking of distributed systems as &lt;a href="http://www.xml.com/pub/a/2004/12/01/restful-web.html"&gt;collections of resources &lt;/a&gt;to be manipulated vs thinking of them as services to be requested.&amp;nbsp; That seems to be the essence of the real disagreement here -- it's pretty clear to me that services can be invoked with whatever combination of HTTP, XML, SOAP, WS-*, and&amp;nbsp;[some technology to be designated later] is needed for a particular job. On the other hand, I looked back through the posts above and the highly regarded ones by Carlos Perez, and I don't get a good feel for how one would design a resource-oriented or "&lt;a href="http://buzz.blogger.com/media/minar-etech-2005.ppt"&gt;high REST&lt;/a&gt;" application for anything but &lt;em&gt;information&lt;/em&gt; resources. &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;For example, we all know what a service-oriented automated restaurant would look like -- just like the human-powered&amp;nbsp;service-oriented restaurants that have evolved over that last couple hundred years.&amp;nbsp; What about a resource-oriented restaurant?&amp;nbsp; I can see how that would work for fast food place (GET a menu, POST an order, which&amp;nbsp;returns a URI&amp;nbsp;one can GET the status of the order from ....).&amp;nbsp; How about a real full-&lt;em&gt;service&lt;/em&gt; restaurant, with a &lt;em&gt;server&lt;/em&gt; who handles the details of the complex asynchronous interactions between a table full of people and a busy kitchen?&amp;nbsp; Sure, one could implement those interactions with XML and HTTP, but would a system design that talks about resources and representations really be more sensible than one that talks about services and requests? Any RESTifarians out there want to take on the challenge?&amp;nbsp; &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;More importantly, are there more&amp;nbsp;real world distributed systems that work like libraries full of information resources to be transferred and manipulated, or more that work&amp;nbsp;like restaurants that supply services which we learn how to request and consume? &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;&lt;a href="http://www-128.ibm.com/developerworks/webservices/library/ws-restvsoap/index.html"&gt;&lt;/a&gt;&amp;nbsp; &lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=400961" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mikechampion/archive/tags/Web+Services+and+Service+Architectures/default.aspx">Web Services and Service Architectures</category></item><item><title>"SOAP is Dead" -- if you believe the echo chamber</title><link>http://blogs.msdn.com/mikechampion/archive/2005/02/20/376975.aspx</link><pubDate>Sun, 20 Feb 2005 21:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:376975</guid><dc:creator>mikechampion</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.msdn.com/mikechampion/comments/376975.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mikechampion/commentrss.aspx?PostID=376975</wfw:commentRss><description>&lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;This is something of a followup to my &lt;A href="http://blogs.msdn.com/xmlteam/archive/2005/02/15/372982.aspx"&gt;post on the XML Team weblog&lt;/a&gt; last week, taking into consideration some of the feedback.&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;I'm getting just a wee bit annoyed about the echo chamber repeating "SOAP is dead" to itself around the blogosphere, with nobody adding any actual evidence other than the success of various Web applications built mainly with HTTP.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;There are plenty of people I know and respect, and plenty I don't know but enjoy reading their blogs, making this point.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I'll use &lt;a href="http://www.manageability.org/blog/stuff/soap-is-dead"&gt;Carlos Perez's post &lt;/a&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;[someone I don't know personally] as the whipping boy, just to get back at him for "&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana"&gt;Mike Champion of course is prepared to defend the faith" :-)&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Verdana"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;To jump to the bottom line, I'm not defending the faith, I'm defending agnosticism. There are a range of technologies available to developers: some simple, some complex; some MS-specific, some Java-specific, some platform-neutral; some Web-based, some protocol-neutral; some tightly coupled, some loosely coupled; some favor up-front design, some are more evolutionary. The choice of one over another in a specific application is a business and engineering decision, not something to be determined by "faith-based programming" in accordance to either the SOAP or REST religion.&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Carlos Perez writes:&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; COLOR: black; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;Isn't SOAP the underpinnings of Web Services, the same technology that was billed as the silver bullet to extinguish our collective integration nightmare? &lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Uhh, no it's &lt;span style="FONT-STYLE: italic"&gt;not &lt;/span&gt;billed that way.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I suppose someone can find Steve Ballmer speeches from 2001 that can be construed that way, but let he whose marketing people are without hyperbole light the first flame :-)&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;If you really want to judge the web services technologies by checking how well they realize the coolest visions of their early advocates, then I suppose SOAP has failed... but so has Java, the Web, and just about everything else I can think of, if judged by those criteria.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;&lt;span style="COLOR: black"&gt;The RESTful approach has now born fruit. Applications like &lt;/span&gt;&lt;a href="http://www.oreillynet.com/pub/a/network/2004/09/28/bloglines.html"&gt;&lt;span style="COLOR: blue"&gt;BlogLines&lt;/span&gt;&lt;/a&gt;&lt;span style="COLOR: black"&gt;, Flickr, &lt;/span&gt;&lt;a href="http://mappr.com/"&gt;&lt;span style="COLOR: blue"&gt;Mappr&lt;/span&gt;&lt;/a&gt;&lt;span style="COLOR: black"&gt;, &lt;/span&gt;&lt;a href="http://www.manageability.org/blog/stuff/manageability-new-link-blog/view"&gt;&lt;span style="COLOR: blue"&gt;Del.icio.us&lt;/span&gt;&lt;/a&gt;&lt;span style="COLOR: black"&gt; and 43Things are revealing that proof is in the pudding&lt;/span&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;I'm not sure these are really RESTful in any meaningful way beyond using HTTP to move information around. [see Steve Maine's &lt;a href="http://hyperthink.net/blog/CommentView,guid,0e667e44-0f53-4725-82db-41ca28e4b8f4.aspx"&gt;post and comments thread&lt;/a&gt;]&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;More importantly, it's not at all clear to me how SOAP, WSDL,&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;or WS-* could plausibly be central to these applications even if all the hype had&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;already become reality. There's no client-side software to integrate with other than the browser, and the overwhelmingly obvious way to integrate browser-based applications with services is HTTP.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Furthermore, there's no underlying reliable messaging, transaction processing, end-to-end encryption, etc. etc. technology in a typical user's internet environment that the SOAP headers can trigger. (Remember that all the WS-* specs do is describe a standard way to &lt;span style="FONT-STYLE: italic"&gt;request&amp;nbsp;&lt;/span&gt;such services).&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;Maybe in some future world where Indigo and Avalon are pervasive in the Windows world and XUL and some open source SOAP, etc.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;toolkit are pervasive in the Mac / Linux / Java worlds, one could imagine building this kind of consumer oriented service using WS-*.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;Until then,&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;the web services technologies don't have much &lt;span style="FONT-STYLE: italic"&gt;potential &lt;/span&gt;to address the challenges faced by a designer of such a service, so seems a bit pointless to note that they aren't used for these applications in &lt;span style="FONT-STYLE: italic"&gt;practice&lt;/span&gt;.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;The web services technologies have a place, or at least a great potential, that should not be minimized. People who think that the Web is where almost all the action is might want to spend a little time in the enterprise software world.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;The dominant vendors there, such as IBM and SAP on the back end, and BEA in the middle, have joined with MS in the web services initiatives because they have determined that the&amp;nbsp;raw XML and HTTP technologies do &lt;em&gt;not&lt;/em&gt; do the job by themselves.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;I honestly don't have a lot of first hand knowledge of whether SOAP is really thriving today in that world, but that's where you want to take its pulse, not in the world of consumer-oriented, browser-based Web applications.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/span&gt;Carols Perez takes me to task:&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; COLOR: black; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;What Mike seems to be saying is that REST is the Yugo and if you want the features then you have to buy a Rolls Royce. It's a sales pitch used all too commonly. Unfortunately, if I wanted a Rolls Royce I would have purchased a JMS implementation, not a Web Services implementation with a yet to be defined solution for security.&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;That is exactly the problem: You may have a JMS implementation, but it won't interoperate at the message level with other vendors' JMS implementations, and it won't&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;even be consistent at the API level with all sorts of proprietary message queuing and transaction processing systems that are deeply rooted in enterprises.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;WS-* is about getting these things to interoperate, leveraging XML's inherent platform and application neutrality, and adding a couple layers to request services from the underlying messaging, security, and transaction processing systems. &lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Furthermore, the employees of those enterprises do a lot of their actual work with desktop applications, and these currently exchange information with the enterprise systems only with considerable expense and inefficiency.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;At my &lt;a href="http://www.softwareag.com"&gt;previous job&amp;nbsp;&lt;/a&gt; , a common use case would be to get data back and forth between a legacy&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;a href="http://www1.softwareag.com/Corporate/products/natural/default.asp"&gt;Natural &lt;/a&gt;mainframe application&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;and an Excel spreadsheet or other MS Office application.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;Web services technologies let developers do this kind of thing by running a Natural -&amp;gt; WSDL translation wizard and leveraging the SOAP support built into both Office and various vendors' enterprise middleware.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; Is this &lt;/span&gt;RPC-oriented rather than document-oriented? Tightly coupled?&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;Doing what CORBA tried to do, only with XML underneath?&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/span&gt; Perhaps, but you'll have to explain to the people whose actual jobs today are made easier by web services why this is a Bad Thing.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 8pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 8pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;span style="COLOR: black"&gt;With that little rant out of my system, I'd like to point to reponse by&lt;a href="http://www.dehora.net/journal/2005/02/the_integrators_dilemma.html"&gt; Bill de Hora&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;that I found very thought provoking.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I didn't see much that I disagreed with.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;He confirms my understanding that REST developers don't really want those VisualStudio wizards that MS doesn't offer :-)&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; COLOR: #666666; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;My impression of those who are interested in using REST is that they want to be close to wire and to the data and if anything, want to reduce the number of tools in use. REST is a minimalist approach to systems building - when you're using it you're making a decision to some of the heavy lifting on your own&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Similarly, I agree (and AFAIK the Indigo people do as well) &lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; COLOR: #666666; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;there's not much question that WS-* is in need of rationalizing. Entirely natural in the tech sector, competitive pressures have resulted in duplicated effort and excess choice for technology decision makers, which lessens the value of having standards to begin with.&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; COLOR: black; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;I'm not so sure about&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; COLOR: #666666; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;WS can be positioned primarily for those companies whose requirements are effectively off the bell curve&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;span style="COLOR: black"&gt;He may be seeing a different bell curve than I do.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;If we are talking about consumer applications over the web, sure.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;If we are talking about enterprise scale integration efforts in a world where technologies such as SAP and other ERP systems are pervasive, proprietary message queuing systems are the transport mechanism of choice, COBOL and other mainframe-rooted development languages are remain very important, and millions of terabytes of operational data remain in IMS (a dinosaur-era hierarchical DBMS), then I simply have to disagree.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;One lesson I learned in my previous job&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;is that while this stuff has little geek mindshare anymore, it is pervasive and persistent in big business.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;I don't expect a RESTifarian story for &lt;a href="http://www1.softwareag.com/Corporate/Solutions/ets/default.asp"&gt;mainframe modernization&lt;/a&gt;&amp;nbsp;anytime soon!&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;The bulk of the post is an intriguing discussion of simple technologies and disruptive innovations, drawing heavily on &lt;a href="http://www.businessweek.com/chapter/christensen.htm"&gt;THE INNOVATORS DILEMMA&lt;/a&gt;.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I agree with Bill's point that while WS is generally marketed as if it were a disruptive technology, it is not really. (Well, OK, maybe it disrupts the moribund EAI industry ....)&amp;nbsp; &lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Bill's analysis helped me clarify my pushback against all the "SOAP is comatose, put it out of its misery" posts: WS-* is a collection of &lt;span style="FONT-STYLE: italic"&gt;sustaining &lt;/span&gt;innovations intended to incrementally extend and improve existing enterprise infrastructures and PC desktop applications. It's hard to disagree with the proposition that these will &lt;span style="FONT-STYLE: italic"&gt;eventually &lt;/span&gt;be replaced by a disruptive technology that hits a very different price-performance point, and it's quite possible that XML and HTTP will be at the center of that disruption.&amp;nbsp;&amp;nbsp;I'm not at all confident that "eventually" will come anytime soon, however.&amp;nbsp; Great source of ideas for entrepeneurs and experimenters, sure; proven technologies for enterprises, no.&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Once again, we're talking about a world where&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;SOAP-based specs are being proposed as standard interfaces to existing enterprise-class technologies that have evolved slowly over decades while the internet has gone through a series of disruptive changes.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;Many of us&amp;nbsp;jumped on the chance&amp;nbsp;to play with Bloglines, Flickr, and other disruptive applications that are presented as poster children for REST. I doubt if any of us wants our bank or insurance company to risk disruption (in the usual sense of the word) &amp;nbsp;of its business in the name of disruptive innovation.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;As Bill mentions, CIOs in these industries have been burned so often by unsuccessful projects -- often planned on overly optimistic predictions about the technology fads of yesteryear -- that they are not likely to jump on XML, REST, or agile methods just because they are hot this year (or this decade).&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;IT departments in big organizations which spend a lot of energy fighting spammers and phishing attacks&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;can be forgiven for not wanting to jump on the Next Big Thing that internet technologies such as HTTP and XML offer. They'll migrate when they see their competition getting ahead of them by adopting mature and proven versions of this stuff.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;Until then, WS-* looks like a promising way to integrate&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;business systems and improve business processes without a lot of "disruption".&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;I don't know Bill personally, but I do know / admire his colleague Sean McGrath, and I get the impression that their company &lt;a href="http://www.propylon.com"&gt;Propylon&amp;nbsp; &lt;/a&gt;is one of the relative few who really know how to apply REST principles to the&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;industrial-strength integration challenges that WS-* was designed for.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;They are as likely as anyone to create a situation where &lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; COLOR: #666666; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;...WS specs and tools are being commoditized by disruptive technologies. If so the natural progression for them and the software based on them is to move up the value chain. When the mass market for enterprise technology is either over-served by technology, quality or the price is too high that leaves an opportunity for disruptive technology to take hold at the bottom end of the market. &lt;/p&gt; &lt;p style="FONT-SIZE: 8pt; MARGIN: 0in; COLOR: #666666; FONT-FAMILY: Tahoma; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;It will be very interesting to see if they or anyone else pulls this off. I wouldn't be broken hearted, personally, if plain ol' XML disrupts WS-*&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;--&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;As I said in the team blog post, if the RESTifarians are proven right, it just creates more direct demand for the WebData XML technologies, whereas if the WS people are right, more people will use our stuff via Indigo.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I am personally, and I think MS is collectively,&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;hedging the bet by covering both side, and working to better understand the &lt;span style="FONT-STYLE: italic"&gt;circumstances &lt;/span&gt;in which one or the other will really work best. It's an extremely good bet that there are plenty of niches out there for both.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;MS can and should supply both SOAP-based and Plain O' XML tools; if others want to focus on "REST", go for it.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I for one won't suggest that you drink any SOAPy Kool-Aid, although I would appreciate a bit less rhetoric about how tasty the RESTful Kool-Aid is until there are "reference customers" that use that approach instead of WS-* &lt;em&gt;in a scenario that WS-* is intended to handle&lt;/em&gt;. &lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;Finally, I was very glad to see &lt;a href="http://www.redmonk.com/jgovernor/archives/000495.html"&gt;James Governor's response&lt;/a&gt; to the various commentaries on his article, including mine.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt; &lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;span style="mso-spacerun: yes"&gt;a. niche - my intention was never to say SOAP is dead, merely that is not a necessary condition for web service development. There is a class of applications outside the traditional requirements of high end transactional enterprise development and workflow that just don't require the reinvention of Corba-class integration. &lt;br /&gt;b. the comment there isnt any demand for SOAP refers to &lt;a href="http://yergler.net/blog/archives/2005/02/08/using-java-with-cc-web-services" target="_blank"&gt;&lt;font color="#003366"&gt;comments from the Creative Commons&lt;/font&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;It's clear that we're on the same page here: "its all about niches or not." &lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;a href="http://www.innoq.com/blog/st/2005/02/19/enterprise_service_bus.html"&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=376975" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mikechampion/archive/tags/Web+Services+and+Service+Architectures/default.aspx">Web Services and Service Architectures</category></item></channel></rss>