Questions Assuming that youre a venture capitalist: Would you fund a company that proposes to build xyzBooks.com and compete directly with the Amazon.coms of the world? Assuming that youre a IT168/177 student: Would you be able to write an app that gather user addresses and plot a map that shows the route from ISU to the closest address?
E-Commerce Scenarios Objective: Capitalize on the success of e-commerce and build a web site to sell books, CDs, and others Scenario1 Build BillyBooks.com and compete directly with the Amazon.coms of the world Any chance of success here?
What are Web Services? W3C 2003: A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards.
Why Web Services? Observations I couldnt make DCOM work. I tried and failed, again and again. But I can make a Web service in a heartbeat. -- Jim Gray, Microsoft Distinguished Engineer (Turing Award (~= Nobel Price for computing) Winner)
Explosive Growth of API Calls / WS Reference: http://www.slideshare.net/jmusser/open-apis-state-of-the- market-2011 http://www.slideshare.net/jmusser/open-apis-state-of-the- market-2011
Why Web Services? Observations Projected Revenues 380 millions in 2001 vs. 15.5 billions in 2005 (Source: ZapThink, Inc. 02) IDC estimate: 1.6 billions in 2004 vs. 34 billions in 2007 (Source: South China Morning Post, May 28, 02)
Why Web Services? Observations When do you expect your company to develop a Web Services strategy? Source: InfoWorld Web Services Survey, July 01
Why Web Services? Observations The industry is aligned … Broad industry initiative for Web services Over 150 industry leaders Interoperability across platforms, applications, and languages www.ws-i.org
Why Web Services? Interoperable Easy to use Reusable Ubiquitous
OS Services Browsers Servers Data, Hosts UI Logic Biz Logic 1st Generation Web Applications Source: Gusmano 02
OS Services Biz Logic Tier Rich Client UI Logic Servers Data, Hosts Richer Browsers 2nd Generation Web Applications Source: Gusmano 02
Standard Browsers Smarter Clients Smarter Devices Open Internet Communications Protocols (HTTP, SMTP, XML, SOAP) Applications Become Programmable Web Services OS Services Biz Tier Logic Biz Logic & Web Service OS Services Public Web Services Foundation Services Internal Web Services XML Servers Data, Hosts XML Other Services XML HTML Next Generation Web Applications Source: Gusmano 02
Web Services: Life Cycle Service Provider (e.g., Brokerage House) Service Registry (e.g., IBM UDDI service) Service Requester (e.g., XYZ Financial Software) bind to service find service publish service (e.g., stock quote) Life Cycle of a Web Service Execution (Registry, Lookup, and Consumption)
An Overview of SOAP Simple Object Access Protocol Lightweight XML-based messaging format Builds on W3C XML standards IETF HTTP standard Works with: Any operating system Any programming language Any platform
SOAP Message SOAP Envelope SOAP Header SOAP Body Message Name & Data Headers Protocol Headers XML Encoded SOAP Message Name and Data contains SOAP Message Name and Data Individual headers encloses headers encloses payload Standard Protocol (HTTP, SMTP, etc.) and SOAP Headers The complete SOAP Message What is a SOAP Message?
Web services: Some possibilities Financial information (e.g., stock quotes) Sports information Weather information News Delivery status Tax and shipping calculations Any data that is relevant to the client How useful are Web Services?
Web Services: Who? Who is doing this? Vendors Microsoft, IBM, Sun, Oracle, HP, BEA, etc..NET passport, Calendar, Alerts, Amazon Web Services, etc. Users/Consumers Nordstrom, General Motors, etc. List of public Web Services http://www.xmethods.net/http://www.xmethods.net/ Who should pay attention to this? All of us!
Web Services will enter most organizations in three distinct phases: [Source: IDC] 2002 (within the firewall) Simplified app integration Increased developer productivity 2004 (contained external users) Simplified business-partner connectivity Richer app functionality Subscription-based services 2006 to 2008 (fully dynamic search and use) Casual / ad-hoc use of services New business models possible Commoditization of software Pervasive use in nontraditional devices
Web Services: The Not? Challenges/Issues Reliability / Consistency Security Authentication Privacy Billing Reuse Performance Incompatible implementations of standards
References Clarke, N.,.Net & the J2EE: Web Services - Can we live together?, JavaOne 2002. Gosling, J., Next-Generation Web Services Conference, Keynote address, Jan, 2002. Gusmano, M., Build Web Services with VB.NET, Microsoft Internet Developer Group, April 2001.