Poor Ignorant Soul: I’ve been hearing a lot about “Dot-Net” services coming to the Web. What is “Dot-Net” and why does Microsoft need another Web Development platform?
Ignoramus: Dot’s a good question that your trusty Ignoramus is only too happy to answer.
The release of the .NET development platform marks the first major change in Microsoft’s development platform in nearly ten years. The development platform consists of a new software infrastructure (the .NET Framework and ASP.NET) for loading and running applications, a new developer environment (Visual Studio .NET), and programming languages to support that infrastructure.
Unlike Win32, which offered more powerful APIs than Win16 but did not dramatically change tools or techniques, the .NET development platform makes fundamental changes in the tools and techniques that developers use to create applications.
The .NET development platform makes it easier for developers to create Web applications that run on the Internet Information Server (IIS) Web server. It also makes it easier to create stable, reliable, and secure desktop applications for Windows. The .NET development platform consists of the following:
* The .NET Framework, which includes the Common Language Runtime (CLR), a software component for running and loading applications; and new class libraries, hierarchically organized collections of code that developers can use in their applications to present graphical user interfaces, access databases and files, and communicate over the Web.
* The .NET developer tools, including the Visual Studio .NET Integrated Development Environment (IDE) for developing and testing applications, and the .NET programming languages (such as Visual Basic .NET and the new Visual C#) for creating applications that run under the CLR and use the class libraries.
* ASP.NET, a specialized class library that replaces the previous Active Server Pages (ASP), for creating both dynamic Web content and Web server applications that use Internet protocols and data formats such as HTML, XML, and the Simple Object Access Protocol (SOAP).
Microsoft hopes that the .NET development platform will maintain its enormous base of Windows developers, who might otherwise drift to other platforms, attracted by Java’s promise of developer independence from hardware and operating systems (OSs). Developers per se do not generate much revenue for Microsoft (or any other company for that matter). However, Windows developers are important advocates of Microsoft products (such as Windows itself) inside companies, and commercial software developers form an important channel for delivering Microsoft products to customers. If Microsoft can get developers to write new applications on the .NET development platform, then more companies will buy Windows servers and the .NET Enterprise Servers, including SQL Server, Exchange, SharePoint, Commerce Server, and BizTalk.
Microsoft particularly promotes the .NET development platform for a new class of applications: Web services, or server applications that exchange XML-formatted data with other applications over the Web. Microsoft sees Web services (for which the company has trademarked the name “XML Web Services”) as a cost-effective way for companies to integrate existing, standalone applications into larger business (and business-to-business) systems. It hopes that Web services will be the new “must-have” application type that draws developers to build on its new platform and products, just as desktop applications with graphical user interfaces drew developers to build on early versions of Windows. Microsoft itself plans to use the platform to develop its own public Web services (called .NET My Services), which provide data storage and other functions to consumers over the Internet.
Poor Ignorant Soul: Okay, but what makes a Web service?
Ignoramus: A Web service is a software component that communicates with other applications by encoding messages in XML and sending the messages over standard Internet protocols such as the Hypertext Transfer Protocol (HTTP). Intuitively, a Web service is like a Web site without a user interface, serving applications instead of people. Instead of getting requests from browsers and returning Web pages in response, a Web service receives a request message formatted in XML from an application, performs a task, and returns an XML-formatted response message to that application.
Both IBM and Microsoft are promoting SOAP as a message standard for Web services. Much like a letter, a SOAP message consists of an XML-based envelope that contains a header with the address of the message recipient and a variety of delivery options (such as encryption information), and a body with the data of the message.
(Microsoft likes to call this programming model “XML Web Services”—tacking on the “XML” to emphasize its openness—but the model, based on a set of World Wide Web Consortium (W3C) protocol standards, is generally known throughout the industry as simply “Web services.”)
Microsoft and other vendors such as IBM promote Web services as a programming model for interapplication communication via the Internet. These companies believe that connecting applications across the Internet will enhance the ability of businesses to work together with their partners, suppliers, and customers. By creating a Web service layer on top of an existing corporate application, organizations can allow external systems to invoke the application’s functions over the Internet (or a corporate intranet) without having to modify the application itself. For example, several companies are creating Web services that act as front ends to order entry applications hosted internally on a mainframe, allowing customers’ purchasing systems to submit orders over the Internet. Layering Web services on top of existing applications might prove even more important within companies as a way to integrate applications independently developed by departments and to reduce IT integration costs associated with mergers and acquisitions.
Microsoft also hopes to use Web services to enter the service provider arena, delivering essential services to paying customers over the Internet. Chief among the planned services are the .NET My Services, a set of data storage Web services hosted by Microsoft and containing personal information entered by individual users, such as credit card numbers and calendar appointments. Desktop and Web server applications, if granted permission by the user, will retrieve information from these databases over the Internet via Web service protocols.
This healthy dose of enlightenment has been graciously provided by Directions on Microsoft, a Redmond-based consulting and publishing firm that combines the expertise of eight veteran Microsoft analysts, each an authority in a different part of the Microsoft technology and business matrix. Directions on Microsoft publishes a regular Update of news and analysis that makes it practical to stay up-to-date on the full breadth of Microsoft activities—operating systems, server apps, development tools, appliances, online services, licensing, marketing initiatives, and much more. Another product is the Microsoft OrgChart which diagrams the reporting relations of Microsoft’s top 800+ executives, including their titles and responsibilities. Special edition Research Reports drill down into new Microsoft technologies—such as .NET and SQL Server 2000—to explain what they are, how they work, and why they’re important. Learn more at http://www.DirectionsonMicrosoft.com