In-Depth

Simplifying Service-Oriented Apps

Windows Communication Foundation can coexist with, communicate with, or even replace existing Windows communications APIs and technologies, said Microsoft''s Richard Turner in his VSLive! Orlando keynote on Wednesday.

"It's a much more rational and unified story," proclaimed Richard Turner, product manager in Microsoft's Web Services Strategy group, in Wednesday's VSLive! Orlando 2005 keynote. During his address, he highlighted how Windows Communication Foundation (WCF, formerly "Indigo") unifies the capabilities of several Web Services communication technologies that preceded it. He confessed that Microsoft has rewritten WCF six times in the last five years of development to make sure it performs as the company wants it to.

In his well-received presentation, Turner highlighted how WCF supersedes and encompasses the capabilities of preceding technologies, demonstrated how WCF is coded, and discussed industry trends and perspectives around WCF. After two and a half years of using the code name for the technologies, Turner also revealed that the correct pronunciation of "Windows Communication Foundation" is "In-di-go."

WCF can coexist with, communicate with, or even replace existing Windows communications APIs and technologies, including ASMX, ASP.NET Web Services, Web Services Extensions (WSE), enterprise services, System.Messaging, and .NET remoting. "We've heard you ask, 'Which technology and API should I use?'" he explained. WCF, he continued, unifies the APIs and becomes the answer to that question—instead of several technologies.

Those technologies, Turner said, hosted on a single system, would consume a 120 MB footprint on the hard drive. WCF, by contrast, consumes only 6 MB. A smaller footprint, more flexible service hosting options, and increased capabilities make upgrading existing apps a clear option. But, he said, "code upgrade tools rarely work in the way you expect." So instead of a migration tool, Microsoft will offer white papers, technical documentation, and other help for WCF upgrades.

After slaughtering the sacred cow of code migration tools, Turner moved on to attack a popular industry buzzword, used inappropriately by marketing departments: SOA, or service-oriented architecture. "You can't 'be' SOA," he said, and explained that buying a tool won't make you SOA. He challenged anyone in the audience to define "service orientation" for the crowd. "But," he cautioned, "before you leap to your feet, first you have to get someone else in the audience to agree with you."

SOA, he explained, "should be how one thinks about developing a distributed application." SOA, he continued, is an "architectural notion" that should have no connection to a specific communications protocol; it's a way of architecting apps to have fewer dependencies on one another. Service-oriented systems are unique in that they don't assume anything about what's on the other end, unlike past-generation apps that were tightly coupled and platform-specific.

Turner and Payam Shodjai, a fellow product manager on the same team, demonstrated both commercial and personal uses for WCF integrated with Windows Media Center TV streams—to add commerce to existing programming and to provide remote parental controls over viewed programs (from Springer to SpongeBob).

Turner wrapped up his presentation with a technology and release timeline, suggesting that the final release of WCF 1.0 will come in 2006. "After 1.0, we'll be looking to see how we can put Indigo on devices as well," he revealed. In 2006, BizTalk will ship a WCF adapter and SQL Server will release a WCF transport channel. The next version of BizTalk will be built on WCF and Windows Workflow Foundation—and the next version of SQL Server will ship with a WCF service broker built in.

He encouraged the audience to download the currently available Community Technical Preview of WCF (see Resources), and invited them to provide feedback.

comments powered by Disqus

Featured

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

  • What's New for Python, Java in Visual Studio Code

    Microsoft announced March 2024 updates to its Python and Java extensions for Visual Studio Code, the open source-based, cross-platform code editor that has repeatedly been named the No. 1 tool in major development surveys.

Subscribe on YouTube