Hosted by
XML Web Services
What .NET and Web Services Mean to
Businesses
Written by Paul Kimmel.
Copyright © 2003. All Rights Reserved.
pkimmel@softconcepts.com
Hosted by
What is an XML Web Service?
 Tools and technologies for moving data over a
network, especially the Internet
 Based on Open Standards
 Object Oriented
 The only limitations are imagination
Hosted by
What Problems do Web Services Solve?
 Application Integration
 Simple Services
 Workflow Solutions
 And, more…
Hosted by
Simple Services
 Offer services that solve problems for
your customers
 Connect business to business services
• How much to ship a package?
• What is the cost of an airline ticket?
• When does my plane depart?
• Tickets to see the “Three Tenors”
Hosted by
Example 1: US Geological Survey
Hosted by
Close Up!
Hosted by
Workflow Solutions
 Business-to-business solutions
• Customer Orders PC from Dell
•
Dell automatically verifies inventory (orders from supplier if
needed)
•
Dell assembles with supplier provided parts, keeping
inventory costs low
•
Coordinates receipt of payment with Dell Financial Services
or Credit Card vendor
•
Negotiates shipment with USPS, UPS, Airborne Express,
DHL or FedEx
•
•
Shipper notifies Dell of Delivery
•
Tracks service requests and upgrades
Notifies customer service provider (perhaps outsourcing
technical support)
Hosted by
Application Integration
 Integrate legacy software with new
technology
 Expose existing capabilities as Web
Services and build from there
 Doesn’t require a complete rewrite
Hosted by
Example 2: Bring Present Technology
to Legacy Software
Hosted by
With XML Web Services
Hosted by
Microsoft and the .NET Framework
 We already know about…
 The good and the bad
 Big war chest
 Commitment to the customer
 And , the warts and dimples
 But, what we need to know…
Hosted by
Web Services and Microsoft
 Does using .NET lock me into a Microsoft
solution?
 And the answer is…
Hosted by
Not Locked in to Microsoft
 Having the .NET framework on workstations
is no different than…
• Borland’s VCL
• Sun’s JRE
• Many machines already have these frameworks and more
• In a very real sense the .NET Framework is comprised of
DLLs; every computer has thousands already
Hosted by
No Bogeyman
 There is no Microsoft bogeyman to fear,
because…
• XML Web Services are based on open standards, like
XML, SOAP, HTTP, TCP/IP
•
•
•
Any supplier can consume or produce XML and SOAP
Over TCP/IP networks
Results in a heterogeneous or homogeneous
solution; the call is yours
Hosted by
Why you want to choose .NET
 Now let’s look at what Microsoft’s .NET
really is
 And, what it can do for your business
Hosted by
.NET Framework
 MS’ best technological product to date
• Based on standards like XML and SOAP
•
•
•
•
•
•
•
•
•
•
Visual Studio
UDDI, or Universal Description and Discovery
WSDL, or, Web Services Discovery Language
Language Agnostic
Attributes
CodeDOM
XML Serialization
Synchronous and Asynchronous Invocation
Works with ADO.NET
Security
Hosted by
Open Standards and Protocols
 TCP/IP
 HTTP and HTTPS
 XML, markup language like HTML
 SOAP, protocol for describing data
Hosted by
Visual Studio
 Tremendous productivity achieved with
• Multiple object oriented languages
• Integrated database development
• Source repository integration
• UML modeling integration
• Extensibility model and macros for automating tasks
• Extensive integrated help
Hosted by
Language Agnostic
 Program in any or every .NET language
 C#
 C++
 J# .NET
 VB .NET
 And dozens more by third parties, all based
on the Common Language Specification
(CLS)
Hosted by
Universal Description and Discovery
 Several Web Service registries (IBM,
Microsoft) (e.g. uddi.microsoft.com)
Hosted by
Web Services Discovery Language
 Makes Web Services easy to find and
consume
 Imports Web Service
 Generates proxy class for very simple
consumption
 Proxy classes support synchronous and
asynchronous invocation
Hosted by
Attributes
 A technology that helps eliminate old
COM related problems
 Helps with Web Services, Security, and
much more
Hosted by
CodeDOM
 Code Document Object Model
 A powerful tool/namespace in the framework
 Can be and is used to write code generators
 Generated proxy classes make MS’ Web Services
very easy to author and consume
Hosted by
XML Serialization
 XML is a markup language like HTML or WML
 Serialization is process of converting objectoriented data into text streams
 Text is easily transmitted over the Internet (or
any TCP/IP network)
 Serialization occurs on both ends, automatically
Hosted by
Synchronous and Asynchronous
Invocation
 Synchronous equals call and wait
 Asynchronous equals call and forget for
optimal performance
• Developers get this capability automatically
• Because asynchronous, or multithreaded behavior,
is built into the framework
•
Even for VB .NET
Hosted by
.NET Technological Advantage
 All of these things add up to…
• Faster development times
• More advanced implementations
• More robust solutions and fewer bugs
• Tremendously scalable software
• Significant competitive advantage
• Greater revenue at lower cost
Hosted by
And there is much more
 Remoting
 COM Interop
 Security Model
 Reflection
 Emitting
 Multithreading
 ASP.NET
 ADO.NET
Hosted by
And still more
 Tremendous third party support
 Excellent training opportunities (e.g.
Developmentor and Compass Computing
Group)
 More trade magazines, books, and articles
than any product in history (e.g. AddisonWesley, Sams, Wiley, Apres, codeguru.com,
InformIT, Windows Developer Magazine)
Hosted by
Summary
 XML Web Services are big part of a much larger
picture
•
•
•
Open Standards; No lock in strategy for Microsoft
•
•
•
Web Services work with ADO.NET very well
•
Excellent support and training
Tremendous scalability
.NET Framework makes Web Services easy to build and
use with Microsoft tools
Asynchronous process for excellent performance
Commitments and participation from many industry
leaders
Hosted by
References
 Kimmel, Paul. .NET Mobile Application
Development. Wiley: 2003.
 Kimmel, Paul. Visual Basic .NET Power
Coding. Addison-Wesley: 2003.
 Kimmel, Paul. Advanced C# Programming.
Osborne: 2002
 Kimmel, Paul. Asynchronous Programming
in VB.NET. Windows Developer, April, 2002
pp. 53-57.
 Kimmel, Paul. Asynchronous Programming
with Thread Pools. (www.codeguru.com)
VB Tech Notes, August, 2001
 Kimmel, Paul. Sams Visual Basic .NET
Unleashed. Sams: 2001.