Download presentation
Presentation is loading. Please wait.
1
1 WS Technologies I Roberto Bruni Dipartimento di Informatica Università di Pisa Models and Languages for Coordination and Orchestration IMT- Institutions Markets Technologies - Alti Studi Lucca
2
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 2 Models and Languages for Coordination and Orchestration Contents Web Services, informally SOAP: a protocol for WS UDDI registries
3
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 3 Models and Languages for Coordination and Orchestration Contents Web Services, informally SOAP: a protocol for WS UDDI registries
4
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 4 Models and Languages for Coordination and Orchestration What is a WS? The answer is simple and complex at the same time ask it to 15 experts 15 different answers ask it to 50 experts 49 different answers why do they disagree? because WS are so dynamic that involve many different areas and interests of companies
5
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 5 Models and Languages for Coordination and Orchestration A Definition of WS Web services are a new breed of Web application. They are self-contained, self-describing, modular applications that can be published, located, discovered, and invoked across the Web.
6
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 6 Models and Languages for Coordination and Orchestration A "Desiderata" Definition of WS 1. a web service has a name 2. a WS should have a goal reference 3. like goals, WS descriptions contain pre conditions and post conditions 4. a WS description describes the structure of its input data and output data 5. error data can be returned through error ports 6. a WS in turn may invoke other WSs via a invoked web service proxy 7. each connection between a complex service’s input port and a invoked web service proxy’s input port is a data flow 8. a control flow sequence should be introduced between invoked web services 9. web services may require exception handling 10. a service need to implement a strategy of compensation for a failed invoked web service 11. web services need description related to the message exchange protocol. Networks can be reliable as well as unreliable 12....
7
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 7 Models and Languages for Coordination and Orchestration W3C Definition of WS W3C says: WS define/give an interoperability standard for heterogeneous software applications (indipendently developed, using different languages, designed by different programmers and analysts) to be executed under a variety of operative systems and platforms (in practice, the fact that WS standard are promoted and supported by companies like Microsoft, Sun, IBM makes it the standard) Informally: WS are the “HTML” of software applications
8
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 8 Models and Languages for Coordination and Orchestration Nothing new under the sun WS are often advertised as the new informatic trend many companies believed that this field was strategic for their future they invested a lot of resources, efforts and technologies in it IBM, Sun and Microsoft have developed and distributed many platforms and instruments based on WS The idea is certainly not original IIOP OMG, CORBA, EDI (are still alive and kicking) WS have certainly some advantages like extensibility, effective interoperability, automatic description of (meta)data, namespaces updating/upgrading costs and time are reduced WS favour the integration of different “vocabularies”
9
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 9 Models and Languages for Coordination and Orchestration Why WS? I 1. Business-to-Business (B2B) Logic ATMs communicate with banks cash registers communicate with credit services and data recording services storage management systems can collect information about new products in general there is an Application-to-Application (A2A) information flow proprietary solutions on private networks or LAN
10
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 10 Models and Languages for Coordination and Orchestration Why WS? II 2. Publish public information on the web companies have (static and dynamic) pages their updating has a cost designed to be accessed by human beings FTP to download/install data files screen scraping techniques for extracting information in an automatic way and feed software applications with them complications with innovation and productivity high-skill expertise and active collaboration between development teams is required (ex. problem of integrating systems when a company buy another one)
11
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 11 Models and Languages for Coordination and Orchestration Why WS? III 1 + 2 = standard for exchanging information via HTTP inspired from the Metcalf law: the value of a network is proportional to the square of the number of connected devices independence from programming languages Java, Visual Basic, C/C++, Smalltalk, Cobol, … the production of data for the web site seen as a service drive the modular development of applications in essence: a perspective of Internet suitable to CEO (Chief Executive Officer) wide visibility, usability and direct connection with customers, goods and service providers, partners and logistic dealers
12
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 12 Models and Languages for Coordination and Orchestration Why saying WS? I Web marketing reason the term WS was coined during the dot-com expansion web was “trendy” for companies HTTP supported not necessarily the best possible protocol but it is well-known compatibility with proxies and firewalls
13
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 13 Models and Languages for Coordination and Orchestration Why saying WS? II Services analogy with ASP (Application Service Provider) offered products need not to be installed A revised definition for Web Services WS are a solution that exploits the communication on the internet to make heterogeneous applications interact with each other
14
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 14 Models and Languages for Coordination and Orchestration A Scenario Anna can provide precise meteo info for every location in the past, Anna was selling the service through authenticated users from her web site Beppe, an important sellers of seeds wants to join Anna to resell the meteo forecast to his customers (farmers) as an added service in the past, Beppe should have developed the code for connecting to Anna’s site, providing his password and the location data of the farmer, then parsing the HTML document obtained in reply and extracting the relevant info to be sent to the farmer or as an alternative, Anna and Beppe would have agreed on some proprietary solution for data transfer
15
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 15 Models and Languages for Coordination and Orchestration When WS Come to Play The traditional solution for Anna and Beppe is tight- coupling Web services is a technology that allows applications to communicate with each other in a platform- and programming language-indpendent manner WS provide software interfaces that describes a collection of operations that can be accessed over the network through standardized XML messaging The primary issues that WS tries to tackle are the issues of data and application integration and that of transforming technical functions into business-oriented computing tasks
16
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 16 Models and Languages for Coordination and Orchestration What are the WS Technologies? XML (eXtensible Markup Language) SOAP (Simple Object Access Protocol) UDDI (Universal Description, Discovery, Integration) WSDL (Web Service Description Language) … and many other support tools (parsers, Java APIs, integrated platforms, …) WSFL (Web Service Flow Language) BPEL4WS (Business Process Execution Language)
17
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 17 Models and Languages for Coordination and Orchestration Anna, Beppe and WS Anna registers her service on a UDDI server via SOAP Beppe accesses to the UDDI server via SOAP executes a query about meteo info providers finds the service offered by Anna receives a document that describes the data (and their format) required to interact with Anna’s service (the location info of the farmer) the same document also describes the format of the query result the document is written accordingly to a standard XML Schema called WSDL Beppe generates skeleton Java classes based on the WSDL document that he has received automatic generation (with methods like setLoc() and getTemp() ) easy to integrate in JSP / servlets running on Tomcat
18
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 18 Models and Languages for Coordination and Orchestration Another Scenario A bed&breakfast owner can offer on her site the possibility of reserving flight tickets renting a car booking guided tour … easy, when tour operator and travel agencies offer suitable web services
19
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 19 Models and Languages for Coordination and Orchestration Something About XML Syntax for (semi)structured (meta)data open standard can store any kind of information documents can be validated not ambiguous human readable (at least everybody says so) easy to parse A family of technologies for document formatting and data filtering A data manipulation philosophy
20
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 20 Models and Languages for Coordination and Orchestration XML Terminology Document Repository of XML information composed by elements (even from different namespaces) empty elements nestable elements (hierarchical structure) every element can have suitable attributes Well-formed document general syntax rules Valid document with respect to a DTD (Document Type Definition) with respect to a XML Schema (yet XML meta-documents!)
21
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 21 Models and Languages for Coordination and Orchestration Something About SOAP High-Level Transmission Protocol based on lower level protocols HTTP (based on TCP/IP) also implementable on top of SMTP facilitate interoperability XML-like coding of messages accepted by the W3C consortium under the name “XML-protocol” Often transparent to WS developers
22
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 22 Models and Languages for Coordination and Orchestration Something About UDDI Analogous to yellow pages applications (users) looking for other applications (providers) instead of people (customers) looking for other people (sellers) Universality UDDI registers can contain the description of every kind of service hosted by any platform Helps full automation
23
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 23 Models and Languages for Coordination and Orchestration Something About WSDL Language for the definition of Web Services provides the schema for describing, publishing and finding WS XML-dialect can be analysed and validated suitable for SOAP metadata represent processes, objects, operations and their relationships a “service descriptor” can be generated in an automatic way starting from Java classes or COM objects … and vice versa!
24
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 24 Models and Languages for Coordination and Orchestration Cooperation Coupling the aim is making it possible for different systems to interact Decoupling the interaction should not be too tight, otherwise internal changes to single applications would become more difficult Just-in-time integration dynamic cooperation, initiated at the same time when the service is discovered
25
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 25 Models and Languages for Coordination and Orchestration Roles Service Requestor searching for a service on the broker Broker keeps a collection of service descriptors WSDL documents indexed so to facilitate searches collects UDDI requests is responsible for the requestor/provider matching Provider responsible for the description, publication and implementation of the service
26
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 26 Models and Languages for Coordination and Orchestration Roles Scheme Broker Provider publication Requestor search binding Provider
27
Roberto Bruni @ IMT Lucca 9 March 2005 Institutions Markets Technologies IMT 27 Models and Languages for Coordination and Orchestration Maximum Interoperability publication search binding penguin or butterfly it doesn’t matter
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.