WS Technologies I - PowerPoint PPT Presentation

About This Presentation
Title:

WS Technologies I

Description:

Models and Languages for Coordination and Orchestration ... the possibility of reserving flight tickets. renting a car. booking guided tour ... – PowerPoint PPT presentation

Number of Views:208
Avg rating:3.0/5.0
Slides: 28
Provided by: RB2
Category:

less

Transcript and Presenter's Notes

Title: WS Technologies I


1
WS Technologies I
Models and Languages for Coordination and
Orchestration IMT- Institutions Markets
Technologies - Alti Studi Lucca
Roberto Bruni Dipartimento di Informatica
Università di Pisa
2
Contents
  • Web Services, informally
  • SOAP a protocol for WS
  • UDDI registries

3
Contents
  • Web Services, informally
  • SOAP a protocol for WS
  • UDDI registries

4
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
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
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 services input
    port and a invoked web service proxys 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
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
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
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
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
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
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
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
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 Annas 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
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
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
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 Annas
    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
Another Scenario
  • A bedbreakfast 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
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
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
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
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
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
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
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
Roles Scheme
Broker
27
Maximum Interoperability
binding
publication
search
Write a Comment
User Comments (0)
About PowerShow.com