Devon M. Simmonds Computer Science Department 1 Introduction to Web Services Devon M. Simmonds Computer Science Department University of North Carolina,

Slides:



Advertisements
Similar presentations
18 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Introduction to Web Services.
Advertisements

Web Service Architecture
CERN IDS. CERN – European Organization for Nuclear Research Administrative Support - Internet Development Services Implementing Soap & Web Services By.
Siebel Web Services Siebel Web Services March, From
Overview of Web Services
31242/32549 Advanced Internet Programming Advanced Java Programming
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
General introduction to Web services and an implementation example
Web Services Darshan R. Kapadia Gregor von Laszewski 1http://grid.rit.edu.
Web Services Nasrullah. Motivation about web service There are number of programms over the internet that need to communicate with other programms over.
Presentation 7 part 1: Web Services Introduced. Ingeniørhøjskolen i Århus Slide 2 Outline Definition Overview of Web Services Examples Next Time: SOAP.
Presentation 7: Part 1: Web Services Introduced. Outline Definition Overview of Web Services Examples Next Time: SOAP & WSDL.
Technical Track Session Service-Oriented Architecture Terry Woods.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
1 Introduction to SOA. 2 The Service-Oriented Enterprise eXtensible Markup Language (XML) Web services XML-based technologies for messaging, service description,
Distributed components
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
CSC-8530: Distributed Systems Christopher Salembier 28-Oct-2009.
6/11/2015Page 1 Web Services-based Distributed System B. Ramamurthy.
A New Computing Paradigm. Overview of Web Services Over 66 percent of respondents to a 2001 InfoWorld magazine poll agreed that "Web services are likely.
2006 IEEE International Conference on Web Services ICWS 2006 Overview.
ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ Web Services Overview Mary Grammatikou 9/06/2009.
Web Service What exactly are Web Services? To put it quite simply, they are yet another distributed computing technology (like CORBA, RMI, EJB, etc.).
Web Services Michael Smith Alex Feldman. What is a Web Service? A Web service is a message-oriented software system designed to support inter-operable.
Secure Systems Research Group - FAU Web Services Standards Presented by Keiko Hashizume.
Processing of structured documents Spring 2003, Part 6 Helena Ahonen-Myka.
Web Services Mohamed Fahmy Dr. Sherif Aly Hussein.
1 Web Services Distributed Systems. 2 Service Oriented Architecture Service-Oriented Architecture (SOA) expresses a software architectural concept that.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Web Services Architecture1 - Deepti Agarwal. Web Services Architecture2 The Definition.. A Web service is a software system identified by a URI, whose.
1 Core Web Services Standards. 2 (Simplified) Web Service Architecture Registry 1. Service Registers PUBLISH 3. Client calls Service BIND 2. Client Request.
What is Service Oriented Architecture ? CS409 Application Services Even Semester 2007.
James Holladay, Mario Sweeney, Vu Tran. Web Services Presentation Web Services Theory James Holladay Tools – Visual Studio Vu Tran Tools – Net Beans Mario.
WSDL Tutorial Ching-Long Yeh 葉慶隆 Department of Computer Science and Engineering Tatung University
Architecting Web Services Unit – II – PART - III.
Web Services Kanda Runapongsa Dept. of Computer Engineering Khon Kaen University.
Web Services based e-Commerce System Sandy Liu Jodrey School of Computer Science Acadia University July, 2002.
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
Web Services. Abstract  Web Services is a technology applicable for computationally distributed problems, including access to large databases What other.
Introduction to Server-Side Web Development Introduction to Server-Side Web Development using JSP and Web Services JSP and Web Services 18 th March 2005.
Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks.
Service Oriented Architecture CCT355H5 Professor Michael Jones Suezan Makkar.
WebService. Outline Overview of Web Services SOAP (messaging) WSDL (service description) UDDI (registry)
1 Web Services Web and Database Management System.
Enterprise Computing: Web Services
XML and Web Services (II/2546)
S imple O bject A ccess P rotocol Karthikeyan Chandrasekaran & Nandakumar Padmanabhan.
Kemal Baykal Rasim Ismayilov
An Introduction to Web Services Web Services using Java / Session 1 / 2 of 21 Objectives Discuss distributed computing Explain web services and their.
1 G52IWS: Web Services Chris Greenhalgh. 2 Contents The World Wide Web Web Services example scenario Motivations Basic Operational Model Supporting standards.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
Web Technologies Lecture 10 Web services. From W3C – A software system designed to support interoperable machine-to-machine interaction over a network.
1 Service Oriented Architecture SOA. 2 Service Oriented Architecture (SOA) Definition  SOA is an architecture paradigm that is gaining recently a significant.
INFSO-RI Enabling Grids for E-sciencE Web Services Mike Mineter National e-Science Centre, Edinburgh.
Lecture VI: SOAP-based Web Service CS 4593 Cloud-Oriented Big Data and Software Engineering.
EGEE is a project funded by the European Union under contract IST Introduction to Web Services 3 – 4 June
Topics on Web Services COMP6017 Dr Nicholas Gibbins –
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Sabri Kızanlık Ural Emekçi
A Web Services Journey on the .NET Bus
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Introduction to Web Services and SOA
Inventory of Distributed Computing Concepts and Web services
Introduction to Web Services
Distributed System using Web Services
Introduction to Web Services and SOA
Distributed System using Web Services
Presentation transcript:

Devon M. Simmonds Computer Science Department 1 Introduction to Web Services Devon M. Simmonds Computer Science Department University of North Carolina, Wilmington Web Services & SOAP Slides from various sources: Dr. Ghosh, CSU; CERN link; Sun’s tutorial link ; slides from this link; link this

Devon M. Simmonds Computer Science Department 2 What is a Web service? 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. Source: Web Services Glossary

Devon M. Simmonds Computer Science Department 3 What is a Web service (2)? 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 WSDL machine-processable format. Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages Web service is conveyed using HTTP – Identified by a URI Web service uses XML serialization Web-related standards. (Internet Protocols) Can be discovered by other systems Source: Web Services Glossary

Devon M. Simmonds Computer Science Department 4 Web Service Examples A stock quote service. – An application requires the current value of a stock, the web service returns it. A route finder for delivery of goods. – Given an initial and a final location, find the most cost- effective delivery route. A weather service, a map service, a web search service… – any composition of Web services.

Devon M. Simmonds Computer Science Department 5 Why Web Services? “The Web can grow significantly in power and scope if it is extended to support communication between applications, from one program to another.” - From the W3C XML Protocol Working Group Charter

Devon M. Simmonds Computer Science Department 6  Sun RPC (1985)  CORBA (1992)  DCE / RPC (1993)  Microsoft COM (1993)  Microsoft DCOM (1996)  Java RMI (1996) Hype Check: Is this new?

Devon M. Simmonds Computer Science Department 7 What are Web Services? XML Application 2Application 1 Two applications communicating over the internet using an agreed message format – encoded as XML.

Devon M. Simmonds Computer Science Department 8 Plateau of productivity Slope of enlightenment Trough of disillusionment Peak of inflated expectations Technology trigger Gartner’s ‘Hype’ Curve Key: Time to “plateau” Less than two years Two to five years Five to 10 years Beyond 10 years Biometrics Grid Computing Web Services Nanocomputing Personal fuel cells Text-to- speech Wireless LANs/ Virtual private networks Visibility Maturity Source: Gartner Group June 2002 Natural-language search Identity services Personal digital assistant phones E-tags Speech recognition in call centers Voice over IP Bluetooth Public key infrastructure Speech recognition on desktops Location sensing WAP/ Wireless Web Peer-to-peer computing

Devon M. Simmonds Computer Science Department 9 Gartner’s Hype Curve g_search&id= &subref=simplesearch

Devon M. Simmonds Computer Science Department 10 Gartner’s Hype Curve 2012 From This SourceThis Source

Devon M. Simmonds Computer Science Department 11 How are Web services Different? Platform neutral Open Standards – Interoperable Based on ubiquitous software – XML Parsers – HTTP Server

Devon M. Simmonds Computer Science Department 12 General rules for services Messages are descriptive, not instructive Messages are written in a format, structure, and vocabulary that is understood by all parties Extensibility – otherwise you lock the parties into a version of the service – Tradeoff: extensibility vs understandability Discover a service under a specific context and not in a centralized fashion 12

Devon M. Simmonds Computer Science Department 13 Other constraints Why? – To improve scalability, performance and, reliability How? – Stateless service – Stateful service – Idempotent request 13

Devon M. Simmonds Computer Science Department 14 Stateless service Message must contain all necessary information for the provider to process it – Service provider more scalable; no need to store state information between requests. – Monitoring software can inspect one single request and figure out its intention – More reliable: No intermediate states to worry about, so recovery from partial failure is also relatively easy 14

Devon M. Simmonds Computer Science Department 15 Stateful service Need to maintain sessions for efficiency or customized service Reduces overall scalability; need to remember shared context for consumer More coupling between provider and consumer; harder to switch providers 15

Devon M. Simmonds Computer Science Department 16 Idempotent request Duplicate requests have the same effect as one request Helps in increasing fault tolerance; resend request if fault occurs 16

Devon M. Simmonds Computer Science Department 17 What is Software Architecture

Devon M. Simmonds Computer Science Department 18 What is Architecture Formal Definition IEEE – Software architecture is the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution IEEE

Devon M. Simmonds Computer Science Department 19 Architecture is Early Architecture represents the set of earliest design decisions – Hardest to change – Most critical to get right Architecture is the first design artifact where a system’s quality attributes are addressed

Devon M. Simmonds Computer Science Department 20 Why Architecture? Architecture serves as the blueprint for the system but also the project: – Team structure – Documentation organization – Work breakdown structure – Scheduling, planning, budgeting – Unit testing, integration Architecture establishes the communication and coordination mechanisms among components

Devon M. Simmonds Computer Science Department 21 Quality Attributes

Devon M. Simmonds Computer Science Department 22 How Architecture Architecture Quality Attributes Technology Patterns & Anti-patterns Principles Community experience Community experience Stakeholders Architect people A “deliverable” Produce Key Is an input Constraints

Devon M. Simmonds Computer Science Department What is a Service? A service is a reusable component that can be used as a building block to form larger, more complex business-application functionality. A service may be as simple as “get me some person data,” or as complex as “process a disbursement.”

Devon M. Simmonds Computer Science Department What is a Service? A service provides a discrete business function that operates on data. Its job is to ensure that the business functionality is applied consistently, returns predictable results, and operates within the quality of service required.

Devon M. Simmonds Computer Science Department What is a Service? How the service is implemented, and how a user of the service accesses it, are limited only by the SOA infrastructure choices of the enterprise. From a theory point of view, it really doesn’t matter how a service is implemented.

Devon M. Simmonds Computer Science Department Characteristics of a Service Supports open standards for integration: Although proprietary integration mechanisms may be offered by the SOA infrastructure, SOA’s should be based on open standards. Open standards ensure the broadest integration compatibility opportunities.

Devon M. Simmonds Computer Science Department Characteristics of a Service Loose coupling: The consumer of the service is required to provide only the stated data on the interface definition, and to expect only the specified results on the interface definition. The service is capable of handling all processing (including exception processing).

Devon M. Simmonds Computer Science Department Characteristics of a Service Stateless: The service does not maintain state between invocations. It takes the parameters provided, performs the defined function, and returns the expected result. If a transaction is involved, the transaction is committed and the data is saved to the database.

Devon M. Simmonds Computer Science Department Characteristics of a Service Location agnostic: Users of the service do not need to worry about the implementation details for accessing the service. The SOA infrastructure will provide standardized access mechanisms with service-level agreements.

Devon M. Simmonds Computer Science Department 30 A Service edge is a natural boundary Warning: Remoting and other RPCs trick us into thinking that there is no substantial difference between a local and a remote object. In fact, they hide the presence of the network.

Devon M. Simmonds Computer Science Department 31 Fallacies of distributed Computing The Network is reliable Latency is zero Bandwidth is infinite The Network is Secure Topology doesn’t change There is one administrator Transport cost is zero The Network is homogenous

Devon M. Simmonds Computer Science Department 32 Services are Autonomous

Devon M. Simmonds Computer Science Department 33 Service describes End Point Exposes Messages Sends/Receives Contracts Binds to Service Consumer implements Policy governed by Sends/Receives Adheres to Component Relation Key Understands Serves

Devon M. Simmonds Computer Science Department 34 © attachmate 2004 SOA Service Requestor Service Provider Service Registry Uses open standards to integrate software assets as services Standardizes interactions of services Services become building blocks that form business flows Services can be reused by other applications Find Bind Publish

Devon M. Simmonds Computer Science Department 35 © attachmate 2004 Shift To A Service-Oriented Architecture Function oriented Build to last Prolonged development cycles FromTo Coordination oriented Build to change Incrementally built and deployed Application silos Tightly coupled Object oriented Known implementation Enterprise solutions Loosely coupled Message oriented Abstraction Source: Microsoft (Modified)

Devon M. Simmonds Computer Science Department 36 Benefits of SOA Services can be provided locally or outsourced to external providers Services are language-independent Investment in legacy systems can be preserved Inter-organisational computing is facilitated through simplified information exchange

Devon M. Simmonds Computer Science Department 37 SOA & Web Services: The Components  To discover where you can get web services and what businesses have to offer – UDDI  To describe a web service and how to interact with it – WSDL  To package your interaction with the Web Service – SOAP  To carry the data envelope across the internet – HTTP Post  To fragment and deliver the http post request to the end point – TCP/IP

Devon M. Simmonds Computer Science Department 38 Web Services Interoperability Stack NetworkTransportHTTP, HTTPS, SMTP,…Packaging/MessagingXML, SOAP, WS-AddressingDescription WSDL, WS-Policy, WS- ResourceProperties… DiscoveryUDDI, WS-Inspection, …Quality of Experience WS-Security, WS-Transactions, WS-ReliableMessaging, … CompositionalBPEL4WS, WS-Notification, …

Devon M. Simmonds Computer Science Department 39 Transport HTTP POST is most common But other protocols such as – FTP – SMTP – HTTP GET And other exotic ones: – Jabber – BEEP

Devon M. Simmonds Computer Science Department 40 Packaging – Soap Used to mean – Simple – Object – Access – Protocol From SOAP 1.2 > SOAP is no longer an acronym Two Types of SOAP

Devon M. Simmonds Computer Science Department 41 Types of SOAP Web services SOAP-RPC web services – Encodes remote procedure calls in messages – Prescribes both system behaviors and application semantics – Generally not interoperable – Breaks constraint of SOA (thus, not SOA) Document-oriented web services 41

Devon M. Simmonds Computer Science Department 42 Packaging – Soap SOAP RPC: – encode and bind data structures into xml. – encode an RPC call

Devon M. Simmonds Computer Science Department 43 Serialization class PurchaseOrder { String item = “socks”; int amount = 1; } socks 1 Serializer

Devon M. Simmonds Computer Science Department 44 Packaging - SOAP SOAP ‘document style’ – packages xml in an envelope

Devon M. Simmonds Computer Science Department 45 Packaging – Soap HTTP Post SOAP Envelope SOAP Body SOAP Head

Devon M. Simmonds Computer Science Department 46 Packaging – Soap 1234

Devon M. Simmonds Computer Science Department 47 Packaging – Soap socks 1

Devon M. Simmonds Computer Science Department 48 Description – WSDL Web Services Description Language – “Web Services Description Language (WSDL) provides a model and an XML format for describing Web services.” w3c.org WSDL is written in XML WSDL is an XML document WSDL is used to describe Web services – What operations does the service expose? WSDL is also used to locate Web services – Where is the web service located?

Devon M. Simmonds Computer Science Department 49 WSDL Major Elements ElementDefines <portType> The operations performed by the web service <message> The messages used by the web service <types> The data types used by the web service <binding> The communication protocols used by the web service

Devon M. Simmonds Computer Science Department 50 WSDL Structure definition of types... definition of a message. definition of a port... definition of a binding

Devon M. Simmonds Computer Science Department 51 WSDL Sample Fragment

Devon M. Simmonds Computer Science Department 52 WSDL Ports The element is the most important WSDL element. It defines a web service, the operations that can be performed, and the messages that are involved. The element can be compared to a function library (or a module, or a class) in a traditional programming language.

Devon M. Simmonds Computer Science Department 53 WSDL Messages The element defines the data elements of an operation. Each messages can consist of one or more parts. The parts can be compared to the parameters of a function call in a traditional programming language.

Devon M. Simmonds Computer Science Department 54 Messages

Devon M. Simmonds Computer Science Department 55 WSDL Types The element defines the data type that are used by the web service. For maximum platform neutrality, WSDL uses XML Schema syntax to define data types.

Devon M. Simmonds Computer Science Department 56 Types <schema targetNamespace=" IMessageService.xsd" xmlns="…/XMLSchema" xmlns:SOAPENC="…/soap/encoding/"/>

Devon M. Simmonds Computer Science Department 57 WSDL Bindings The element defines the message format and protocol details for each port.

Devon M. Simmonds Computer Science Department 58 WSDL Operation Types TypeDefinition One-way The operation can receive a message but will not return a response Request-response The operation can receive a request and will return a response Solicit-response The operation can send a request and will wait for a response Notification The operation can send a message but will not wait for a response

Devon M. Simmonds Computer Science Department 59 Operations

Devon M. Simmonds Computer Science Department 60 WSDL Sample Binding <soap:binding style="document“ transport= " />

Devon M. Simmonds Computer Science Department 61 Java APIs for XML JAXP -- Java API for XML Processing – processes XML documents using various parsers JAX-RPC -- Java API for XML-based RPC – sends SOAP method calls to remote parties over the Internet and receives the results JAXM -- Java API for XML Messaging – sends SOAP messages over the Internet JAXR -- Java API for XML Registries – provides a standard way to access business registries and share information

Devon M. Simmonds Computer Science Department 62 JAX-RPC and SOAP JAX-RPC -- Java API for XML-based RPC. SOAP – Simple Object Access Protocol In JAX-RPC, a remote procedure call is represented by an XML- based protocol such as SOAP. The SOAP specification defines envelope structure, encoding rules, and a convention for representing remote procedure calls and responses. These calls and responses are transmitted as SOAP messages over HTTP.

Devon M. Simmonds Computer Science Department 63 JAX-RPC -- SOAP JAX-RPC hides this complexity from the application developer. On the server side, the developer specifies the remote procedures by defining methods in an interface. The developer also codes one or more classes that implement those methods. Client programs create a proxy, a local object representing the service, and then simply invokes methods on the proxy.

Devon M. Simmonds Computer Science Department 64 JAX-RPC -- Java API for XML-based RPC A JAX-RPC client can access a Web service that is not running on the Java platform and vice versa. This flexibility is possible because JAX-RPC uses technologies defined by the World Wide Web Consortium (W3C): HTTP, SOAP, and WSDL.

Devon M. Simmonds Computer Science Department 65 Description – WSDL Messages Types Operations Encoding Endpoint

Devon M. Simmonds Computer Science Department 66 Encoding

Devon M. Simmonds Computer Science Department 67 Endpoint

Devon M. Simmonds Computer Science Department 68 Discovery – UDDI Universal Description, Discovery and Integration A UDDI Server acts as a registry for Web Services and makes them searchable.

Devon M. Simmonds Computer Science Department 69 Examples (Java Server) A Web service Server is simple: – New class with method Then: – Register class with soap router – Or – Place the source code in a jws file

Devon M. Simmonds Computer Science Department 70 Examples (VB Client) High Level API (After adding a Web Service Reference) Dim serv As clsws_MessageService Set serv = New clsws_MessageService serv.wsm_setMessage txtName.Text, txtColor.Text

Devon M. Simmonds Computer Science Department 71 Examples (VB Client) Serializer.Init Connector.InputStream Serializer.startEnvelope, ENC Serializer.SoapNamespace "xsi", XSI Serializer.SoapNamespace "SOAP-ENC", ENC Serializer.SoapNamespace "xsd", XSD Serializer.startBody Serializer.startElement Method, URI,, "method" Serializer.startElement “parameter“ Serializer.SoapAttribute "type",, "xsd:string", "xsi" Serializer.writeString username Serializer.endElement Serializer.endBody Serializer.endEnvelope Connector.EndMessage

Devon M. Simmonds Computer Science Department 72 Examples (VB Client) Name Colour

Devon M. Simmonds Computer Science Department 73 Examples (C# Client) Add a Web References to a project Localhost.MessageService serv = new Localhost.MessageService(); serv.setMessage(x, y);

Devon M. Simmonds Computer Science Department 74 Examples (C# Server) public class Demo : System.Web.Services.WebService { public Demo() { InitializeComponent(); } [Web Method] public string HelloWorld() { return “Hello World”; }

Devon M. Simmonds Computer Science Department 75 Let’s Compare

Devon M. Simmonds Computer Science Department 76 Service-orientation vs object-orientation [1] – (Ref: Thomas Erl’s book) Service reusability, object reusability Service contract (WSDL first), object contract (interfaces) Service loose coupling, OO high coupling (inheritance, other OO mechanisms) Service abstraction, OO encapsulation 76

Devon M. Simmonds Computer Science Department 77 Service-orientation vs object-orientation [2] Service composability, aggregation & composition Service statelessness, objects stateful Service discoverability 77

Devon M. Simmonds Computer Science Department 78 Service-orientation/web services vs distributed object systems  (Refs: Vogels’ viewpoint, CDK text )  Remote object references and URIs may seem to be similar, but aren’t  Rem obj refs cannot be returned or passed as arguments in web services  Remote object instances cannot be created in web services  No constructors or main methods in web services  No garbage collection of “remote objects”; there is only one 78

Devon M. Simmonds Computer Science Department 79 Web Services Future

Devon M. Simmonds Computer Science Department 80 Security WS do not define how to do security, they rely on other mechanisms layered on top. Very common to use SSL – Good for simple cases Weak when multi-tier Forces encryption of all data – sometimes not needed

Devon M. Simmonds Computer Science Department 81 Security Bookstore Client Application

Devon M. Simmonds Computer Science Department 82 Security Client Application Bookstore Bank Warehouse

Devon M. Simmonds Computer Science Department 83 WS Security Standardisation  W3C - XML Encryption XML Digital Signatures  WS-I - WS Security Profile  OASIS - WS-Security SAML - Security Assertion Markup Language XACML - Extensible Access Control Markup Language XKMS - XML Key Management Specification

Devon M. Simmonds Computer Science Department 84 Fire Wall Security – Fire Walls Bookstore Client Application

Devon M. Simmonds Computer Science Department 85 Security Firewall ‘transparency’ Double-edged sword – Simplifies deployment – Opens up potential holes in enterprise security Similar to CGI, etc.

Devon M. Simmonds Computer Science Department 86 WS-I Web Services Interoperability Organization R1017A RECEIVER MUST NOT mandate the use of the xsi:type attribute in messages except as required in order to indicate a derived type WS-I Basic Profile Version 1.0

Devon M. Simmonds Computer Science Department 87 Missing Pieces Security – Single Sign-on, credentials Transactions Quality of service – Timeliness guarantees Asynchronous operations – Co-ordination, workflow

Devon M. Simmonds Computer Science Department 88 Real Examples Amazon Web Services API Google Web API HP & IBM online stores

Devon M. Simmonds Computer Science Department 89 Plateau of productivity Slope of enlightenment Trough of disillusionment Peak of inflated expectations Technology trigger Gartner’s ‘Hype’ Curve Key: Time to “plateau” Less than two years Two to five years Five to 10 years Beyond 10 years Web Services Visibility Maturity Source: Gartner Group June 2002

Devon M. Simmonds Computer Science Department 90 Tutorials Demo source code, etc.: – –

Devon M. Simmonds Computer Science Department 91 Q u e s t i o n s ? TheEnd Devon M. Simmonds, Computer Science Department, University of North Carolina Wilmington