<?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>All About Interop : SOA</title><link>http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx</link><description>Tags: SOA</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Microsoft launches new SOA Website </title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/10/30/microsoft-launches-new-soa-website.aspx</link><pubDate>Tue, 30 Oct 2007 19:38:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:5783113</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/5783113.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=5783113</wfw:commentRss><description>&lt;P&gt;The new Microsoft SOA &amp;amp; Business Process website is up! And I am really pleased to see it. &lt;/P&gt;
&lt;P style="TEXT-ALIGN: center"&gt;&lt;IMG alt="" src="http://blogs.msdn.com/blogfiles/dotnetinterop/103007_1638_Microsoftla1.jpg" mce_src="http://blogs.msdn.com/blogfiles/dotnetinterop/103007_1638_Microsoftla1.jpg"&gt; &lt;/P&gt;
&lt;P&gt;Mea culpa time: For a long time, we (Microsoft) have not effectively communicated with customers and partners about Service Oriented Architecture. That's why I'm so pleased to see this new website. &lt;/P&gt;
&lt;P&gt;By the way, the new website is up on this, the first day of the 2007 SOA &amp;amp; Business Process conference, happening on Microsoft's campus right now. I'm sitting in the keynote address as I type this. The event is sold out! There are 1000 people here to learn about the Real-World approach to SOA that is enabled by the Microsoft application platform. &lt;/P&gt;
&lt;P&gt;Why were we so bad at communicating? Have a look back. As SOA became a theme that captured the imagination of people, Microsoft got leery. Other companies started slapping SOA badges on their existing products: "New! Now SOA enabled!" Some companies started producing new products targeted to SOA. Companies built SOA centers of excellence, SOA Swat teams. The attention around SOA grew and grew. SOA became the solution for everything. SOA was the solution to world hunger! &lt;/P&gt;
&lt;P style="MARGIN-LEFT: 36pt"&gt;Side note: Later came the &lt;A href="http://search.msn.com/results.aspx?q=%22SOA+is+not+a+product%22&amp;amp;form=QBRE" mce_href="http://search.msn.com/results.aspx?q=%22SOA+is+not+a+product%22&amp;amp;form=QBRE"&gt;backlash&lt;/A&gt;. People started realizing, hey, maybe we're over-doing this SOA thing. People want to get more pragmatic on SOA, they want less pie-in-the-sky promise and more practical results. That's a natural, and maybe a necessary, part of the cycle I guess. &lt;/P&gt;
&lt;P&gt;Microsoft, for its part, conceived SOA in a technical context, and the way we talked about SOA showed this. We articulated the &lt;A href="http://search.msn.com/results.aspx?q=%22four+tenets+of+SOA%22&amp;amp;form=QBRE" mce_href="http://search.msn.com/results.aspx?q=%22four+tenets+of+SOA%22&amp;amp;form=QBRE"&gt;four tenets of SOA&lt;/A&gt;: Boundaries are explicit, services are autonomous, Services share schema and contract, and Service compatibility is negotiated and based on policy (&lt;A href="http://msdn.microsoft.com/msdnmag/issues/04/01/Indigo/default.aspx" mce_href="http://msdn.microsoft.com/msdnmag/issues/04/01/Indigo/default.aspx"&gt;link&lt;/A&gt;). Yikes! This is SOA for bit-heads. This is not actually SOA at all! It is how to build web services. &lt;/P&gt;
&lt;P&gt;This tech-heavy focus was our error. Certainly we wanted to educate people on how to build services. But that wasn't the only issue around Service Orientation, and maybe wasn't even the most important issue around Service Orientation. Really, SOA was interesting to businesses because of flexibility and agility. SOA had the potential to bring flexibility to a business, and that meant better competitive positioning. We were talking about service contracts and WSDLs, while customers were talking about getting their work done more quickly, or being more responsive to market shifts. We whiffed on this. &lt;/P&gt;
&lt;P&gt;But we've seen the error of our ways! SOA remains an important theme for the industry, a key opportunity for customers. And We, Microsoft, have slowly but steadily evolved and matured and broadened our thinking on SOA, and that's a Good Thing. &lt;A href="http://www.microsoft.com/soa" mce_href="http://www.microsoft.com/soa"&gt;The new SOA website&lt;/A&gt; is good evidence of this. It's meant to provide a single point of access for our customers into our SOA thinking, a single place where we talk about the capabilities across the entire Microsoft application platform product set - across Visual Studio, System Center, the .NET Framework, SharePoint Server, BizTalk Server, and more - and how those pieces fit into a SOA strategy. It also provides a place for Microsoft to communicate about SOA-related events, partner activities and offerings, and other content related to SOA that is available throughout the Microsoft.com web. &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=5783113" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Services/default.aspx">Services</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item><item><title>Guerrilla SOA = Real World SOA?</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/09/19/guerrilla-soa-real-world-soa.aspx</link><pubDate>Wed, 19 Sep 2007 21:53:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4961140</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/4961140.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=4961140</wfw:commentRss><description>&lt;P&gt;A&amp;nbsp;couple weeks back, in a post entitled "The time may be ripe for ‘Guerrilla SOA’", Joe McKendrick &lt;A class="" href="http://blogs.zdnet.com/service-oriented/?p=948"&gt;wrote&lt;/A&gt; about a meme that &lt;A class="" href="http://jim.webber.name/2007/09/13/56db5919-3195-4008-92e1-5268078f586e.aspx" mce_href="http://jim.webber.name/2007/09/13/56db5919-3195-4008-92e1-5268078f586e.aspx"&gt;Jim Webber&lt;/A&gt; of Thoughtworks initially &lt;A class="" href="http://www.infoq.com/news/2007/08/jim-webber-interview" mce_href="http://www.infoq.com/news/2007/08/jim-webber-interview"&gt;introduced&lt;/A&gt; in an interview with Infoq.com. The idea is that if SOA adoption for a company requires a massive mobilization of resources and people, it's often a non-starter. It's impractical to justify&amp;nbsp;the initial investment, and it's impractical to realize actual benefits from that approach.&amp;nbsp; A more reasonable approach may be to adopt a practical, pragmatic approach to employing SOA, with a very incremental, iterative approach.&amp;nbsp; Use SOA in an initial project, and evaluate your results.&amp;nbsp; Then apply the lessons learned and broaden the use.&amp;nbsp; And so on.&amp;nbsp; This is something that I had independently described, although not using the Guerilla metaphor,&amp;nbsp;as a common practice among Microsoft customers in a &lt;A class="" href="http://www.infoq.com/articles/idc-study" mce_href="http://www.infoq.com/articles/idc-study"&gt;separate interview on infoq.com&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;Are we reaching a &lt;A class="" href="http://en.wikipedia.org/wiki/Tipping_point" mce_href="http://en.wikipedia.org/wiki/Tipping_point"&gt;tipping point&lt;/A&gt; on the real world&amp;nbsp;approach to employing SOA?&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4961140" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item><item><title>on SOA, open standards, open source, and other nonsense</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/09/19/on-soa-open-standards-open-source-and-other-nonsense.aspx</link><pubDate>Wed, 19 Sep 2007 17:49:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4888033</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/4888033.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=4888033</wfw:commentRss><description>&lt;FONT size=3 face-calibri&gt;
&lt;P&gt;I read a &lt;A href="http://www.itbusinessedge.com/blogs/mia/?p=214" mce_href="http://www.itbusinessedge.com/blogs/mia/?p=214"&gt;blog post&lt;/A&gt; by Loraine Lawson that she titled "Biz Talk Server R2 Offers Peek at Microsoft's SOA Strategy". I found a bunch of things in that post disconcerting. Thought I'd respond a little here, not directly to the blog in detail, but more generally about SOA. &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;SOA does not "demand open source" as the blog post asserts. Many pundits in the industry, whether purposefully or not, equate or conflate "open source" with "open standards". At the risk of stating the obvious, they are not the same. We at Microsoft believe that one key driver of success for SOA is a set of open communications standards - ranging from IP, to HTTP, XML, SOAP, WS-*, RSS, JSON, ATOM and so on. Effective SOA means interconnecting disparate systems, and that does require communications protocol standards. It does not require open source. Can a .NET system interconnect with a appplication running on IBM WebSphere Application Server? Yes. Any open source there? Nope. Can a .NET system interconnect with a PHP app via RSS? Yes! Any open source there? Yes. But, the fact that open source is used, is irrelevant.&amp;nbsp; As I have said many times before, &lt;A class="" href="http://blogs.msdn.com/dotnetinterop/archive/2007/09/17/sca-is-an-endorsement-of-wcf.aspx" mce_href="http://blogs.msdn.com/dotnetinterop/archive/2007/09/17/sca-is-an-endorsement-of-wcf.aspx"&gt;It's the protocols, silly&lt;/A&gt;! &lt;/LI&gt;
&lt;LI&gt;Open standards of course are not enough. Also required is a set of infrastructure that can harness the potential of those standards, so that developers can interconnect disparate applications using those standards, so that IT can manage, provision, and govern systems that employ those standards and so on.What’s required is commercial-grade infrastructure in the form of tools, process servers, management suites, development frameworks, registries, and user interface technologies. User interface in a SOA? Absolutely. After all, in the end we want a person to actually see and act on the information that is swirling around within a SOA. We believe as many analysts do (see IDC and Dataquest) that there will be a broad expansion in the market for SOA infrastructure. Some of that infrastructure will be provided in open-source form. For our part, Microsoft is delivering, and will continue to deliver tools, servers, and other infrastructure that enables companies to exploit the advantages available within SOA approaches, as well as architectural guidance and training for how to effectively apply SOA in customer environments. &lt;/LI&gt;
&lt;LI&gt;Some uninformed critics say Microsoft’s SOA infrastructure works only in a "Windows only" or "Windows everywhere" approach. This view doesn’t hold water. As I have said &lt;A class="" href="http://blogs.msdn.com/dotnetinterop/archive/2007/08/09/fact-check-ibm-s-steve-mills-claims-on-ms-and-soa.aspx" mce_href="http://blogs.msdn.com/dotnetinterop/archive/2007/08/09/fact-check-ibm-s-steve-mills-claims-on-ms-and-soa.aspx"&gt;previously&lt;/A&gt;, if the claim is that the Microsoft SOA software, like BizTalk Server, Host Integration Server, Visual Studio, SQL Server and so on - runs only on Windows, then this is TRUE. This is not a particularly novel, interesting or relevant observation. Customers don’t demand that their SOA infrastructure run on a particular operating system; They demand that their SOA infrastructure connects readily, and delivers good value. If these people want to imply, that because BizTalk Server (as one example) runs only on Windows, then it can connect only to other Windows-based systems or applications, &lt;EM&gt;they are either mis-informed or they are attempting to mislead you&lt;/EM&gt;.&amp;nbsp;Ninety-two percent of the over 7,000 BizTalk Server customers use the technology to connect with assets on UNIX, Linux and mainframe based systems. Many Microsoft customers connect to SQL Server - running on Windows mind you! - from applications running on iSeries, Linux or Unix. Microsoft has long offered a technology that does nothing but integrate with IBM's iSeries and zSeries technologies. (it accomplishes this via IBM's proprietary protocols, which Microsoft must license).&amp;nbsp; Windows Communication Foundation implements more WS-* standards than any other commercially-available framework, at this time, as far as I am aware.&amp;nbsp; This means WCF connects to disparate heterogeneous systems via standard protocols. "Windows only" is blind ignorance or spin, and either way it is just wrong. &lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;-Dino&lt;/P&gt;&lt;/FONT&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4888033" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item><item><title>Commentary: OASIS is on the wrong path with the SCA standardization effort</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/09/18/commentary-oasis-is-on-the-wrong-path-withthe-sca-standardization-effort.aspx</link><pubDate>Tue, 18 Sep 2007 19:05:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4960935</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/4960935.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=4960935</wfw:commentRss><description>&lt;P&gt;I am sort of on an SCA kick here.&amp;nbsp; I just saw &lt;A href="http://www.formtek.com/blog/?p=382" mce_href="http://www.formtek.com/blog/?p=382"&gt;this post&lt;/A&gt; from Dick Weisinger of &lt;A href="http://blogs.msdn.com/ControlPanel/Blogs/www.formtek.com" mce_href="www.formtek.com"&gt;Formtek&lt;/A&gt;. In it he questions the approach OASIS is taking with the SCA family of specifications.&amp;nbsp; Dick implies that SOA is already too complex for most people, and creating six new standards isn't going to simplify anything. I would take that one further and question the very structure of SCA itself.&amp;nbsp; It seems that there are a couple of loosely-related technology areas covered in the SCA specs, why are they all smashed together?&lt;/P&gt;
&lt;P&gt;Why isn't the portable communications API for Java being specified in the JCP, where such things are "supposed to' be specified?&lt;/P&gt;
&lt;P&gt;Why is that portable API combined in a single spec with a description language for composite artifacts (SCDL)?&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4960935" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item><item><title>Zorro as SOA architect?</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/09/18/zorro-as-soa-architect.aspx</link><pubDate>Tue, 18 Sep 2007 17:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4960321</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/4960321.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=4960321</wfw:commentRss><description>The &lt;A class="" href="http://zorroisb.spaces.live.com/blog/cns!7694A4518D13549E!119.entry" mce_href="http://zorroisb.spaces.live.com/blog/cns!7694A4518D13549E!119.entry"&gt;latest from Zorro&lt;/A&gt; cracked me up.&amp;nbsp;&amp;nbsp;Where is he&amp;nbsp;going with this?&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4960321" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item><item><title>SCA is an endorsement of WCF?</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/09/17/sca-is-an-endorsement-of-wcf.aspx</link><pubDate>Mon, 17 Sep 2007 19:53:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4959994</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/4959994.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=4959994</wfw:commentRss><description>&lt;P&gt;huh?&lt;/P&gt;
&lt;P&gt;&lt;A href="http://oasis-opencsa.org/sca"&gt;SCA&lt;/A&gt; is an endorsement of &lt;A href="http://msdn2.microsoft.com/netframework/aa663324.aspx"&gt;WCF&lt;/A&gt;? Seriously? &lt;/P&gt;
&lt;P&gt;I &lt;A href="http://blogs.msdn.com/dotnetinterop/archive/2007/06/28/comparing-sca-to-microsoft-platform-technologies.aspx"&gt;posted earlier in the summer about SCA&lt;/A&gt; and made a statement to that effect.&amp;nbsp; That post just got a comment questioning my sanity or intelligence or both (the comment asked if I was in marketing.&amp;nbsp; &lt;EM&gt;Can you believe that?&lt;/EM&gt; The nerve of some people!) &lt;/P&gt;
&lt;P&gt;Talking about SCA is difficult.&amp;nbsp; People don't agree.&amp;nbsp; Sometimes they vehemently disagree on stuff that seems like it ought to be very agreeable.&amp;nbsp; &amp;nbsp;Why?&amp;nbsp;&amp;nbsp;I've thought about this, and concluded that the current difficulty in the dialog about SCA, is due to the fact that SCA not well understood, or the understandings people hold about SCA are&amp;nbsp;fairly different.&amp;nbsp; I was in a series of meetings a while back where the topic was SCA, and we had a couple of experts who had entirely opposed views of the content of SCA.&amp;nbsp; These were smart, well-informed people, one of them had actually written parts of the SCA specifications.&amp;nbsp; And yet the disagreement was very stark.&amp;nbsp; How can this be?&amp;nbsp; The only way I can figure it - SCA is still new, the implementations that are out there are fairly new, and there's not a broad, common understanding of concretely, just what it is and what it offers.&lt;/P&gt;
&lt;P&gt;The commenter I mentioned wrote this: &lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;FONT color=maroon&gt;
&lt;P&gt;First, you said "Microsoft views this part of SCA as a big endorsement of the approach we have taken in Windows Communication Foundation". Then, you say "the primary difference between WCF and SCA is that WCF is about wire-level interop and SCA is about a portable programming model". So can you explain how it's an endorsement &amp;nbsp;of your approach when they aren't about the same thing? &lt;/P&gt;
&lt;P&gt;You set up the strawman that "SCA is oriented toward consolidating the disparate communications models and APIs within Java", then you knock it down with WCF.&lt;/P&gt;
&lt;P&gt;You then agree isn't what SCA is about communications.[sic] &amp;nbsp; Are you in marketing?&lt;/P&gt;&lt;/FONT&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;When I used the phrase "big endorsement" I was referring to the part of SCA that unifies the programming model regardless whether you are doing web services, angle brackets, transactions, asynchronous comms, and so on.&amp;nbsp; This is what WCF has already done for .NET.&amp;nbsp; and &lt;STRONG&gt;&lt;EM&gt;part of SCA &lt;/EM&gt;&lt;/STRONG&gt;is dedicated to doing this now, specifically for Java.&amp;nbsp; A key observation here is, SCA's programming model is intended to be portable across implementations.&amp;nbsp; The WCF programming model is not.&amp;nbsp; There's only one implementation of WCF, and that is the one in .NET 3.0 (and above).&amp;nbsp; From the perspective of a systems architect hooking stuff together (aka HST) in a heterogeneous system, the programming model used by WCF programmers is irrelevant!&amp;nbsp; Wait, let me extend that - from the systems architect perspective, the programming model used by &lt;EM&gt;any &lt;/EM&gt;programmer of the individual pieces in the system, whether they use VB, Java, C#, or somethign else, ought to be irrelevant.&amp;nbsp; The &lt;EM&gt;only thing &lt;/EM&gt;that should be relevant, from the HST perspective, are the &lt;STRONG&gt;on-the-wire protocols&lt;/STRONG&gt;.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I don't grok the rest of the comment, so I'll leave it at that. &lt;/P&gt;
&lt;P&gt;Back to my point about people not really agreeing on just what SCA is - there was a &lt;A class="" href="http://fastforwardblog.com/2007/06/20/microsoft-absent-from-open-standards-movement-around-soa/" mce_href="http://fastforwardblog.com/2007/06/20/microsoft-absent-from-open-standards-movement-around-soa/"&gt;previous post from Dana Gardner about Microsoft and SCA&lt;/A&gt;.&amp;nbsp; Dana wrote, in part:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;FONT color=maroon&gt;
&lt;P&gt;The SCA/SDO backers invited Microsoft to join their efforts, they said, to adopt a &lt;STRONG&gt;programming-level of SOA standardization&lt;/STRONG&gt; [&lt;EM&gt;my emphasis&lt;/EM&gt;], rather than a Web services level of interoperability. But the members voiced little hope that Microsoft would have a sufficient motivation to move .NET to a programmatic open standards level. SCA/SDO is nonetheless expected to make interoperability between .NET- and non-.NET-based services a natural and rudimentary aspect of SOAs, but at a higher cost — a tax, if you will — due to Microsoft’s separation from the pack. &lt;/P&gt;&lt;/FONT&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;"programming-level of SOA standardization"? This, to me, is seriously wrongheaded thinking. We've been down this path before. Many times. Common programming model does not mean interop. Come on, people, look at the facts: &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;J2EE&lt;/STRONG&gt; - standardized APIs, but interop between EJBs? Fahgedaboutit. It was always, in theory, a potential benefit of standardizing the APIs. But it never really happened. J2EE people will have to content themselves with the benefit of "sort of portability" - keeping in mind that portability remains partial among implementations, and at this point, is anyone paying attention any more? &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;CORBA&lt;/STRONG&gt; - standardized APIs, but interop was sorely lacking. Even with the advent of the IOR, there was still difficulty getting an Object running within Orbix to intercommunicate with an object running in Visibroker. (Ahh, a blast from the past). &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;DCE&lt;/STRONG&gt; - ahh, going back in time now. Anyone remember DCE? DCE had a set of standardized APIs, C-based, not object oriented. Something like CORBA but for the C programmer, and not the C++ programmer. This was hot stuff before the advent of Java in 1995. Because DCE had a standardized API, programs were portable (mostly) across implementations. One aspect of DCE was the DCE RPC, or Remote Procedure Call API set. This was the commuications layer of DCE. There was an IDL (before CORBA's IDL) and a compiler of the IDL that produced server-side stubs and client-side proxies. Hmm, this sounds vaguely similar to something I've heard of more recently (can anyone say wsdl.exe?). &lt;BR&gt;&lt;BR&gt;But once again, interop wasn't magically guaranteed by the consistency of the API across implementations. Interop was guaranteed in DCE by the network data representation, or NDR. In other words, the network data &lt;STRONG&gt;protocol&lt;/STRONG&gt;. And trust me on this, there was a ton of work put into the NDR. We had big-endian vs little-endian issues, other encoding issues. All the same issues we have today, but NDR was binary, which meant, for practical purposes, it was opaque to humans. I remember seeing the rpctrace tool for the first time; built on tcptrace, rpctrace was endowed with an understanding of the NDR and so it could show you in real time what it thought the on-the-wire data packets were. Something like &lt;A href="http://www.fiddlertool.com/"&gt;Fiddler&lt;/A&gt; for HTTP/SOAP traffic today. Even with rpctrace, diagnosing interop issues between, let's say, HP's DCE v1.0 and Transarc's DCE v1.1 on Solaris, was a ... &lt;EM&gt;challenge&lt;/EM&gt;. And as soon as we rolled in encryption (yes, kerberos-based message security based on MD5 hashes and DES encryption (back when DES was good stuff) was integrated with the RPC layer), rpctrace was useless. &lt;/LI&gt;&lt;/UL&gt;
&lt;H2&gt;Have we learned nothing from the past!??!?!?!?&lt;/H2&gt;
&lt;P&gt;To me, the promise of web services was that in pursuit of interoperability, we are no longer &lt;A class="" href="http://en.wikipedia.org/wiki/Don_Quixote" mce_href="http://en.wikipedia.org/wiki/Don_Quixote"&gt;tilting at windmills&lt;/A&gt; trying to produce a single, stable, standardized programming model for all programmers, all devices, all nodes, all languages, and so on. The WS-* work the industry has pursued since 1999 shows that we (vendors, customers, developers, pretty much everybody) recognized that protocols were the &lt;A class="" href="http://encarta.msn.com/dictionary_/sine%20qua%20non.html" mce_href="http://encarta.msn.com/dictionary_/sine%20qua%20non.html"&gt;sine-qua-non&lt;/A&gt; for interop. PROTOCOLS people, not programming models. Protocols, Protocols, Protocols, Protocols, Protocols, Protocols! I say.&lt;/P&gt;
&lt;P&gt;And let 1000 flowers bloom! Given a standard protocol, the world can support a myriad of programming models, and they can look like anything they want. As long as each implementation produces the same on-the-wire protocol, they can all intercommunicate. Glory be! &lt;/P&gt;
&lt;P&gt;In the post I cited earlier, Mr Gardner asked:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;FONT color=maroon&gt;
&lt;P&gt;why is standardized interoperability at a programmatic level, embedded within widely accepted SOA open standards, any less beneficial? &lt;/P&gt;&lt;/FONT&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;That is to say, &lt;EM&gt;any less beneficial than a standardized wire protocol&lt;/EM&gt;.&amp;nbsp; I'll tell you why: Standardizing on a programming model as a way to to boost interoperability has proven to be a failure, repeatedly.&amp;nbsp;&amp;nbsp; &lt;FONT color=red&gt;[added 1 October 2007: It's a very nifty rhetorical device to coin a phrase such as "standardized interoperability at a programmatic level" but in my view that concept is imaginary.&amp;nbsp; It is a complete fabrication.&amp;nbsp; You cannot "standardize interoperability at a programmatic level."&amp;nbsp; It is not possible. By definition!]&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;By the way, I wonder sometimes if I am the crazy one, but if so, there are &lt;A class="" href="http://itblagger.wordpress.com/2007/09/15/sca-scary-component-architecture/" mce_href="http://itblagger.wordpress.com/2007/09/15/sca-scary-component-architecture/"&gt;others out there&lt;/A&gt; who are &lt;A class="" href="http://www.davidchappell.com/blog/2007/07/introducing-sca.html" mce_href="http://www.davidchappell.com/blog/2007/07/introducing-sca.html"&gt;similarly demented&lt;/A&gt;.&lt;/P&gt;
&lt;H2&gt;Let's be Clear Here&lt;/H2&gt;
&lt;P&gt;Look, I am not arguing against the merits of standardized programming models in general. I see what J2EE did for the consortium of Java vendors that drove it - it produced a common programming model, which meant, a single set of skills could be portable across vendor implementations. Yes, I said skills portability, not app portability, because while J2EE promised app portability, it never really happened in practice. As we all know, APIs are not the only thing in an app. An app has lots of metadata, and J2EE did not standardize all of that. An app has administrative interfaces (programmatic and user interfaces) and J2EE did not standardize all of that. As a result, J2EE apps&amp;nbsp;could be&amp;nbsp;"mostly" portable, but never truly portable.&amp;nbsp; &lt;FONT color=red&gt;[added 1 October 2007:&amp;nbsp; &lt;EM&gt;Yes, yes, I know, you can write a JSP app that runs on a bunch of different servlet engines.&lt;/EM&gt;&amp;nbsp; I am totally clear on that.&amp;nbsp; That to me is interesting, but it is not proof of real world portability of J2EE in general.&amp;nbsp;]&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;But &lt;STRONG&gt;skills&lt;/STRONG&gt; were mostly portable. That is to say, once a programmer learned the J2EE &lt;EM&gt;metaphor&lt;/EM&gt;, once that person understood MVC and what a session bean was and how a remote EJB method worked, then that knowledge applied across multiple vendor implementations of the J2EE spec. That was valuable, both to the vendors themselves, because they could create a critical mass of devs that could be productive on their product, as well as to the developers, who had more options. &lt;/P&gt;
&lt;P&gt;So I see the benefits of a common programming model. But I also see very clearly that a common programming model does not in any way guarantee interoperability. Am I the only one who sees this? &lt;/P&gt;
&lt;P&gt;Keep in mind that the SCA spec itself, says that you cannot create cross-domain composites. The composite is a collection of components that are stitched together. According to the SCA spec, those components must run, all in the same SCA container. There is no cross-domain interop provided by SCA, even with its common programming model. &lt;/P&gt;
&lt;P&gt;Does this surprise you? It shouldn't!&lt;/P&gt;
&lt;P&gt;This begs the question, if a common programming model is beneficial, why shouldn't Microsoft throw in with SCA in pursuit of that? That's a worthwhile question and one I will leave for another post. 
&lt;P&gt;Bottom line: &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;SCA is primarily about programming model consistency among a consortium of vendors. The cast of characters in SCA looks quite similar to the same people who just left the J2EE party, after Sun began exercising the control it had guaranteed itself in writing up the charter of the JCP. &lt;/LI&gt;
&lt;LI&gt;Microsoft does not believe that investing in a common programming model boosts interop, nor do we believe, given dynamic languages, structured languages, and the other advances in programming languages that are occurring today and will continue to occur in the foreseeable future, that it is even practical to enforce a common API. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;ps: Yes, I am in marketing. Can you not tell, from the length of this post?&lt;/P&gt;
&lt;P&gt;Till next time, &lt;BR&gt;&lt;BR&gt;-Dino &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4959994" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/REST/default.aspx">REST</category></item><item><title>IBM WebSphere Registry/Repository and Interop with .NET, part 3</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/08/29/ibm-websphere-registry-repository-and-interop-with-net-part-3.aspx</link><pubDate>Thu, 30 Aug 2007 08:04:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4640064</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/4640064.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=4640064</wfw:commentRss><description>&lt;P&gt;Back in May, IBM had posted &lt;A class="" href="http://www.ibm.com/developerworks/websphere/library/techarticles/0705_colgrave/0705_colgrave.html" mce_href="http://www.ibm.com/developerworks/websphere/library/techarticles/0705_colgrave/0705_colgrave.html"&gt;an article&lt;/A&gt; describing how to connect to its WebSphere Service Registry and Repository (WSRR) from .NET applications. A surprise to me.&amp;nbsp; Not long ago I was &lt;A class="" href="http://blogs.msdn.com/dotnetinterop/archive/2007/02/22/ibm-websphere-registry-repository-and-interop-with-net.aspx" mce_href="http://blogs.msdn.com/dotnetinterop/archive/2007/02/22/ibm-websphere-registry-repository-and-interop-with-net.aspx"&gt;huffing about lack interop&lt;/A&gt;&amp;nbsp;on WSRR.&amp;nbsp; I later amended my comments in a &lt;A class="" href="http://blogs.msdn.com/dotnetinterop/archive/2007/07/23/ibm-websphere-registry-repository-and-interop-with-net-part-2.aspx" mce_href="http://blogs.msdn.com/dotnetinterop/archive/2007/07/23/ibm-websphere-registry-repository-and-interop-with-net-part-2.aspx"&gt;followup post&lt;/A&gt;, saying that IBM had documented a SOAP interface to WSRR.&amp;nbsp; &amp;nbsp;But apparently back in May IBM had addressed the question more directly&amp;nbsp;with a nice developer article! &lt;/P&gt;
&lt;P&gt;Basic Interop is not the only issue of course.&amp;nbsp; As Anne Thomas Manes pointed out in a comment to the original post, there is a difference between basic interop and integration.&amp;nbsp; WSRR defines its own data model for the artifacts stored in the registry, so basic connection is not good enough.&amp;nbsp; The connecting application needs to have some understanding of the data model, the semantics of what is retrieved from the registry.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Is UDDI sufficient for this?&amp;nbsp; Apparently IBM thinks not.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4640064" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Websphere/default.aspx">Websphere</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Java/default.aspx">Java</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item><item><title>Talking about SOA to the Business Owners</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/08/28/talking-about-soa-to-the-business-owners.aspx</link><pubDate>Tue, 28 Aug 2007 22:17:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4616936</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/4616936.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=4616936</wfw:commentRss><description>&lt;P&gt;Not really interop, but&lt;/P&gt;
&lt;P&gt;&lt;A class="" href="http://www.itbusinessedge.com/blogs/mia/?p=194" mce_href="http://www.itbusinessedge.com/blogs/mia/?p=194"&gt;here's a discussion&lt;/A&gt; of how to talk about SOA to business owners.&amp;nbsp; The view here is that &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;Business value (agility, quicker deployments, less cost for development) is definitely the place to begin. But be prepared to discuss [the technical aspects of] services and explain why SOA is better than EAI or standard development practices. &lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4616936" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Not+Really+Interop/default.aspx">Not Really Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item><item><title>Web 2.0 versus WS-* ?</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/08/23/web-2-0-versus-ws.aspx</link><pubDate>Fri, 24 Aug 2007 00:33:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4531543</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/4531543.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=4531543</wfw:commentRss><description>Zorro weighs in?&amp;nbsp; &lt;FONT face=Arial size=2&gt;&lt;A href="http://zorroisb.spaces.live.com/"&gt;http://zorroisb.spaces.live.com/&lt;/A&gt;&lt;/FONT&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4531543" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Interop/default.aspx">Interop</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item><item><title>Architect's Webcast series on SOA</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/08/13/architect-s-webcast-series-on-soa.aspx</link><pubDate>Tue, 14 Aug 2007 02:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4374083</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/4374083.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=4374083</wfw:commentRss><description>&lt;SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN-US; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-language: AR-SA; mso-fareast-language: EN-US"&gt;The SOA Webcast Series for Architects&amp;nbsp;is now&amp;nbsp;live on &lt;A href="http://www.microsoft.com/biztalk/solutions/soa/webcasts.mspx"&gt;microsoft.com&lt;/A&gt;.&lt;/SPAN&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4374083" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/Webcast/default.aspx">Webcast</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item><item><title>Comparing SCA to Microsoft platform technologies</title><link>http://blogs.msdn.com/dotnetinterop/archive/2007/06/28/comparing-sca-to-microsoft-platform-technologies.aspx</link><pubDate>Thu, 28 Jun 2007 20:29:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3556817</guid><dc:creator>DotNetInterop</dc:creator><slash:comments>8</slash:comments><comments>http://blogs.msdn.com/dotnetinterop/comments/3556817.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dotnetinterop/commentrss.aspx?PostID=3556817</wfw:commentRss><description>&lt;FONT face=Calibri size=3&gt;
&lt;P&gt;I posted about &lt;A href="http://oasis-opencsa.org/sca" mce_href="http://oasis-opencsa.org/sca"&gt;SCA&lt;/A&gt; previously. My take on it is, &lt;EM&gt;SCA isn't really about interop.&lt;/EM&gt; But many people think it is, so I post about it here, on the interop blog. &lt;/P&gt;
&lt;P&gt;Sometimes people ask me to compare SCA with what Microsoft offers. Here's my take. &lt;/P&gt;
&lt;P&gt;A large part of SCA is oriented toward consolidating the disparate communications models and APIs within Java. Java does remoting with RMI and RMI/IIOP; web-services via JAX-RPC or JAX-WS; asynchronous invocation with JMS; JCA for packaged apps, and so on. Lots of communication models. SCA proposes to unify them. Within the SCA family, the spec covering Java annotations and APIs, and the spec covering Java component implementation specifically deal with this. &lt;/P&gt;
&lt;P&gt;Microsoft views this part of SCA as a big endorsement of the approach we have taken in &lt;A href="http://msdn2.microsoft.com/en-us/library/ms735119.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/ms735119.aspx"&gt;Windows Communication Foundation&lt;/A&gt;, part of the &lt;A href="http://msdn2.microsoft.com/en-us/netframework/default.aspx" mce_href="http://msdn2.microsoft.com/en-us/netframework/default.aspx"&gt;.NET Framework v3.0&lt;/A&gt; that shipped in December 2006. WCF consolidates various disparate communications models in .NET into one generalized programming model, with support for interop protocols (WS-* or web-oriented services), binary optimizations, reliable or asynchronous messaging, pub/sub, and others. Because of the clear value for customers in simplifying communications, WCF is the leading model in the industry for communications frameworks. Unlike SCA, WCF is not a spec; WCF is available now (a free download), and is currently being used in production applications. and, &lt;A href="http://msdn.microsoft.com/stocktrader" mce_href="http://msdn.microsoft.com/stocktrader"&gt;the performance of WCF apps, &lt;EM&gt;rocks&lt;/EM&gt;!&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Some of SCA goes beyond the basic communication plumbing, and attempts to address the larger and more complex issues surrounding the description, modeling, assembly and management of distributed systems. These are hard problems; Microsoft has been working in this area for many years, and steadily delivering infrastructure to address customer needs. For example, &lt;A href="http://msdn2.microsoft.com/en-us/netframework/aa663328.aspx" mce_href="http://msdn2.microsoft.com/en-us/netframework/aa663328.aspx" a Foundation&lt; Workflow Windows&gt;is shipping technology. In the &lt;A href="http://msdn2.microsoft.com/en-us/vstudio/aa700831.aspx" mce_href="http://msdn2.microsoft.com/en-us/vstudio/aa700831.aspx"&gt;.NET Framework 3.5&lt;/A&gt;, we'll deliver integration between WCF and WF, and the version of Visual Studio mated to .NET 3.5, &lt;A href="http://msdn2.microsoft.com/en-us/vstudio/aa700830.aspx" mce_href="http://msdn2.microsoft.com/en-us/vstudio/aa700830.aspx"&gt;Visual Studio 2008&lt;/A&gt;, will provide modeling tools to truly democratize the construction and deployment of conversational service-oriented applications. &lt;A href="http://www.microsoft.com/systemcenter" mce_href="http://www.microsoft.com/systemcenter"&gt;System Center 2007&lt;/A&gt;, currently shipping, enables management of distributed applications. We expect to continue to steadily deliver evolutionary innovations in these areas over time. &lt;/P&gt;&lt;/FONT&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3556817" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/dotnetinterop/archive/tags/SOA/default.aspx">SOA</category></item></channel></rss>