1 Michael Klein Verlesung Informationssysteme: Neuere Konzepte Web Services.

Slides:



Advertisements
Ähnliche Präsentationen
Cadastre for the 21st Century – The German Way
Advertisements

Service Oriented Architectures for Remote Instrumentation
PRESENTATION HEADLINE
Vernetzung von Repositorien : DRIVER Guidelines Dr Dale Peters, SUB Goettingen 4. Helmholtz Open Access Workshop Potsdam, 17 Juni 2008.
PSI and Competition The General Framework
Finding the Pattern You Need: The Design Pattern Intent Ontology
E-Solutions mySchoeller.com for Felix Schoeller Imaging
Service Discovery in Home Environments
H - A - M - L - E - IC T Teachers Acting Patterns while Teaching with New Media in the Subjects German, Mathematics and Computer Science Prof. S. Blömeke,
DNS-Resolver-Mechanismus
Managing the Transition from School-to-Work Empirical Findings from a Mentoring Programme in Germany Prof. i.V. Dr. Martin Lang.
R. Zankl – Ch. Oelschlegel – M. Schüler – M. Karg – H. Obermayer R. Gottanka – F. Rösch – P. Keidler – A. Spangler th Expert Meeting Business.
Herzlich Willkommen zum Informations-Forum: SAP Interoperabilität
Dr. M. Schlottke Common Description of Web Services Source: P. Gerbert, 2002 Web Services allow to establish B2B e-commerce on the fly Web Services allow.
Fakultät für informatik informatik 12 technische universität dortmund Specifications Peter Marwedel TU Dortmund, Informatik 12 Graphics: © Alexandra Nolte,
Peter Marwedel TU Dortmund, Informatik 12
Institut für Verkehrsführung und Fahrzeugsteuerung > Technologien aus Luft- und Raumfahrt für Straße und Schiene Automatic Maneuver Recognition in the.
1 Geistes-, Natur-, Sozial- und Technikwissenschaften – gemeinsam unter einem Dach The Academic Information Domain DGI Top-Tech-Trends Panel 2010 Dr. Wolfram.
Three minutes presentation I ArbeitsschritteW Seminar I-Prax: Inhaltserschließung visueller Medien, Spree WS 2010/2011 Giving directions.
Munz – IT/TG - Lörrach. Goals of this intensive lecture To learn: To learn: –What does it means programming in Java ? –What is JAVA good/bad for ? –Which.
CCNA Exploration Network Fundamentals
Introduction to the topic. Goals: Improving the students essay style in general Finding special words and expressions that can be used in essay writing.
Fachabteilung 16A Überörtliche Raumplanung Cross border co-operation from the view of a public administration unit.
Deutsche Gesellschaft für Technische Zusammenarbeit GmbH Integrated Experts as interface between technical cooperation and the private sector – An Example.
Adjektive Endungen von Frau Templeton.
5 Jahre Semantic Network Service (SNS) Aktueller Stand und Ausblick Maria Rüther, Thomas Bandholtz,
Laurie Clarcq The purpose of language, used in communication, is to create a picture in the mind and/or the heart of another.
Institut AIFB, Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Towards Automatic Composition of Processes based on Semantic.
Sanjay Patil Standards Architect – SAP AG April 2008
| DC-IAP/SVC3 | © Bosch Rexroth Pneumatics GmbH This document, as well as the data, specifications and other information set forth in.
Eigenbetrieb IT- und Organisationsdienstleistungen Dresden EU Service Directive updated work plan and basics of the final document.
Centre for Public Administration Research E-Government for European Cities Thomas Prorok
BAS5SE | Fachhochschule Hagenberg | Daniel Khan | S SPR5 MVC Plugin Development SPR6P.
3rd Review, Vienna, 16th of April 1999 SIT-MOON ESPRIT Project Nr Siemens AG Österreich Robotiker Technische Universität Wien Politecnico di Milano.
Z Corp Customer Examples
The free XML Editor for Windows COOKTOP Semistrukturierte Daten 1 Vortrag Semistrukturierte Daten 1 COOKTOP The free XML-Editor for Windows
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Quelle: Standish Group, 2006 Fourth Quarter Research Report, CHAOS Research Results.
You need to use your mouse to see this presentation © Heidi Behrens.
Department of Computer Science Homepage HTML Preprocessor Perl Database Revision Control System © 1998, Leonhard Jaschke, Institut für Wissenschaftliches.
Web Services Semistrukturierte Daten 1 – Gruppe 6.
INTAKT- Interkulturelle Berufsfelderkundungen als ausbildungsbezogene Lerneinheiten in berufsqualifizierenden Auslandspraktika DE/10/LLP-LdV/TOI/
XML IV: Cocoon 2.
DEUTSCHLAND UND DIE MEDIEN
DEUTSCHLAND UND DIE MEDIEN
Verben Wiederholung Deutsch III Notizen.
Tage der Woche German Early Level Montag Dienstag Mittwoch Donnerstag
Berner Fachhochschule Hochschule für Agrar-, Forst- und Lebensmittelwissenschaften HAFL Recent activities on ammonia emissions: Emission inventory Rindvieh.
Ein Projekt des Technischen Jugendfreizeit- und Bildungsvereins (tjfbv) e.V. kommunizieren.de Blended Learning for people with disabilities.
Digital Dashboard Toolkit 2001 SharePoint Portal Server released targeting portal market SharePoint Team Services (STS) released as free add-
Design Patterns Ein Muster (pattern) ist eine Idee, die sich in einem praktischen Kontext als nützlich erwiesen hat und dies auch in anderen sein wird.
ESSnet Workshop Conclusions.
German Early Level The Weather.
Adjectiv Endungen Lite: Adjective following articles and pre-ceeding nouns. Colors and Clothes.
HRM A – G. Grote ETHZ, WS 06/07 HRM A: Work process design Overview.
KIT – die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH) Vorlesung Knowledge Discovery - Institut AIFB Tempus fugit Towards.
German Word Order explained!
Ambient Intelligence WS 10/11
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Young Lions 2012 MEDIA Competition Dominik Neumaier, Katharina Zweng Verloren im Gründungsdschungel? weist den Weg Gründ Tarzan.
Launch ON Global.vi System ID object name classname Services to suscribe Observer Control Ref vi-path Service name Step 1 : Objects register to the Global.vi´s,
1 Stevens Direct Scaling Methods and the Uniqueness Problem: Empirical Evaluation of an Axiom fundamental to Interval Scale Level.
Selectivity in the German Mobility Panel Tobias Kuhnimhof Institute for Transport Studies, University of Karlsruhe Paris, May 20th, 2005.
Technische Universität München 1 CADUI' June FUNDP Namur G B I The FUSE-System: an Integrated User Interface Design Environment Frank Lonczewski.
TUM in CrossGrid Role and Contribution Fakultät für Informatik der Technischen Universität München Informatik X: Rechnertechnik und Rechnerorganisation.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Modalverben.
Numbers Greetings and Good-byes All about Me Verbs and Pronouns
Welcome to Web Services & Grid Computing Jens Mache
LLP DE-COMENIUS-CMP Dieses Projekt wurde mit Unterstützung der Europäischen Kommission finanziert. Die Verantwortung für den Inhalt dieser.
Computer Services Business challenge
 Präsentation transkript:

1 Michael Klein Verlesung Informationssysteme: Neuere Konzepte Web Services

2 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 2 Übungsblätter Zunächst: Besprechung der 3 Übungsblätter

3 Michael Klein Verlesung Informationssysteme: Neuere Konzepte Web Services (Folien teilweise auf englisch)

4 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 4 Szenario (1) Telefon- anschluss? Telefongesellschaft Auftrag

5 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 5 Szenario (2) Telefongesellschaft Auftrag Reservierung der Nummer Eintrag Telefonbuch Einkauf EndgeräteVersand Endgeräte Eintrag? Einzug Anschlussgebühren Anschluss verfügbar? ja nein ja ok Entschuldigungs- schreiben Prob Geschäftsprozess

6 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 6 Dienstorientierte Architektur Geschäftsprozess Funktionalität A Dienst- geber 1 Funktionalität A Dienst- geber 2 Funktionalität A Dienst- geber 3 Funktionalität A Dienst- geber 5 Funktionalität B Nutzung von Funktionalität externer Entitäten über Dienste Funktionalität kann evtl. kostengünstig ausgelagert werden.

7 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 7 Service Oriented Computing Network not as collection of documents but as a collection of functionality Applications and business processes use functionality of other entities especially interesting: in mobile networks with limited capabilities in the internet: large companies, many services outsourcing Integration of distributed functionality across organizational and network boundaries

8 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 8 Characteristics of SOC Characteristics Functionality is hidden behind an interface Offered functionality is publicly described Service = public functionality that can be published, discovered, and executed across the network (client-server paradigm)

9 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 9 General Process: the Service Triangle Repository Requestor (Client) Provider (Server) 1. describe offer 2. publish 3. describe request 4. search For 5. match 6. select 7. configure 8. invoke 9. execute 10. transfer results

10 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 10 Service Description Language Service Requests Service Requests Service Provider Service Provider Service Provider Service Provider Service Provider Service Desc Service Desc Service Desc Service Desc Service Desc ? Which provider is appropriate? (matching) How to invoke it? (binding, configuration)

11 Web Services WSDL, SOAP, UDDI

12 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 12 What is a Web Service? Web Service Web Service = service that Accessible through the internet consumes and produces xml documents is uniquely identified by an uri Based on three main technologies WSDL: Web Service Description Language SOAP: Simple Object Access Protocoll UDDI: Universal Description, Discovery and Integration xml

13 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 13 Task of the Technologies Repository Requestor (Client) Provider (Server) 1. describe offer 2. publish 3. describe request 4. search For 5. match 6. select 7. configure 8. invoke 9. execute 10. transfer results WSDL UDDI SOAP automatic prematching based on categories manual matching and selecting static binding

14 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 14 WSDL, SOAP, and UDDI WSDL to describe the functionality of a service helps to find an appropriate service helps to invoke a found service correctly UDDI directory service is itself a service helps to get an overview of the services in the repository only helpful in case of very many services SOAP communication protocol between service requestor and provider helps to transfer simple (atomic) and complex (composite) data All based on XML

15 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 15 Web Service Stack CommunicationDescriptionDiscovery TCP/IP HTTP XML SOAP XML WSDL WSDL Extensions UDDI Semantics Task: provide a standard, flexible communications channel Task: provide a standard, flexible way to describe what and how a Web service does what it does. Task: provide a standard, flexible way to discover where a Web service is located. XML

16 WSDL Building Blocks

17 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 17 History of WSDL NASSL SDL/SCL … 2000: Microsoft, IBM and Ariba jointly issue WSDL : A dozen companies submit WSDL 1.1 as W3C Note 2002: W3C publishes WSDL 1.2 as Working Draft 2003: WSDL is separated into three parts: core, messages, bindings 2004: WSDL 2.0 (mainly renamings)

18 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 18 WSDL 1.2 Components as UML Diagram service = publicly callable functionality operation = function that processes an input message and returns an output message message = collection of information that can be exchanged via network CONCRETE ABSTRACT

19 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 19 Types defines important datatypes primitive types from XML schema complex types buildable via -Tag <schema targetNamespace=" xmlns="

20 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 20 Messages combines types to abstract messages smallest interchangeable units unidirectional built up from parts

21 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 21 Operation and PortType Operation is abstract functionality that receives an input messages processes it send set an output and fault messages PortType groups operations to interfaces

22 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 22 Operation Types One-way operations input only Request-Response input, then output (default) Solicit-Response output, then input Notification output only clientserver clientserver clientserver clientserver

23 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 23 Binding Connects abstract PortTypes with concrete Ports Defines concrete message syntax Defines concrete communication protocol details Most important protocol: SOAP Simpler protocols like HTTP GET/POST possible <soap:binding style= "document" transport= "

24 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 24 Port and Service Port specifies a concrete address of a binding Service is a collection of such ports

25 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 25 Components of WSDL 1.2 – Summary CONCRETE ABSTRACT

26 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 26 Renamings in WSDL 2.0 Port PortType Message Part WSDL 1.2 WSDL 2.0 Endpoint Interface no special tag. Directly defined by xs:element and xs:complexType no special tag. Directly defined by xs:sequence and xs:element

27 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 27 Example for Changes in WSDL 2.0 <xs:schema xmlns:xs=" targetNamespace=" Message Part

28 WSDL Discovery

29 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 29 Matching Task: Given a service description for a requested service r and a service description of an offered service o. Question: Is o suitable to fulfill rs needs? To what degree? Idea: Matcher compares o and r and calculates matching value in [0,1] 0.0: o is not suitable at all 1.0: o is perfectly suitable intermediate values: o is suitable to the given degree

30 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 30 Matching WSDL Descriptions – Approaches (1) Keyword based Search Request r is set of keywords. Matching value is only a hint Manual postprocessing and selection necessary (2) Type based Matchers Check whether input message of request provides more information than input message of offer Check whether output message of request wants less information than output message of offer wants less each type in the request has to appear in the offer types of the offer have to be a subtype of the desired types in the request

31 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 31 Type based Matcher Service ir_1 … ir_n or_1 … or_m Service io_1 … io_k oo_1 … oo_l Request r Offer o For each or_i in r: Is there a oo_j in o with oo_j subtypeof or_i For each io_i in o: Is there a ir_j in r with ir_j subtypeof io_i

32 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 32 Problems with WSDL Matching Service incoming messages outgoing messages Message oriented service description Problems Not really new. Already in CORBA, DCOM, EJB, ebXML, … No advantage to pure interface description Semantics not clear Functionality has to be guessed from flow of information What does a service, that requests a String and outputs an Integer? automatic selection difficult Strict message compatibility If messages between provider and requestor do not match, the service cannot be used

33 WSDL Tools and Extensions

34 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 34 Tools for WSDL Integration in Programming Languages Microsoft.NET Sun: Java Web Service Development Pack XML Processing, SOAP Binding, XML Registry… Web Services Toolkit (WSTK) von IBM Plugins for Eclipse (WSDL Viewer, WSDL Validator, …) SOAP for Perl NuSOAP – SOAP Toolkit for PHP … Tools / Server Components for WSDL Axis (SOAP Server) IBMs Websphere Graphical WSDL editors like CapeClear WSDL generators (right-click on method) WSDL validators …

35 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 35 WSDL in Practice – Early Adopters amazon.com Amazon E-Commerce Service Everything but really buy: ItemLookup, ItemSearch, SimilarityLookup CartAdd, CartClear, CartCreate, CartGet, CartModify Service requestors need to registers first Intended usage: including Amazon in own web sites ebay.com eBay SOAP API Offer Items, Place Bids, Search for articles… google.com

36 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 36 WS-*: Language Extension for WSDL WS-Policy For including non-functional requirements/assertions in WSDL descriptions WS-Resource Framework (WSRF) For describing resources and states on the service provider. WS-Security (WSS) For securing the usage of web services WS-Coordination For enhancing WSDL descriptions by protocols to coordinate the actions of several participants. Example: WS- AtomicTransaction

37 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 37 Web Service Composition – BPEL4WS service requestor service provider subprovider 1 subprovider 2 subprovider 3 WSDL BPEL4WS BPEL4WS = Business Process Execution Language for Web Services Specification of the Orchestration, i.e. the coordination between main service and its subservice providers. Developed by Microsoft (XLANG) and IBM (WSFL)

38 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 38 Evaluation of WSDL Advantages Easy to understand Widely accepted Rich tool support good integration in programming languages many extensions important early adopters upcoming standard for description Disadvantages Low semantics primitive matchers not usable for automatic service selection designed for static service binding

39 Ausblick: Semantic Web Services

40 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 40 Dienstorientierte Architektur Geschäftsprozess Funktionalität A Dienst- geber 1 Funktionalität A Dienst- geber 2 Funktionalität A Dienst- geber 3 Funktionalität A Dienst- geber 5 Funktionalität B Nutzung von Funktionalität externer Entitäten über Dienste Dynamische Dienstbindung

41 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 41 Dynamic Service Binding Advantages robust context-aware network independent Most important task: automation Complete process should be automatic Important: Semantic Service Description Language

42 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 42 Ansätze ALLGEMEIN: Von syntaktischer zu semantischer Dienstbeschreibung Einigung auf ein gemeinsames Vokabular Ontologie Nicht mehr Drucker/Printer/prt/lpt1, sondern PRINTER Zusätzlich Beschreibung der Zustandsänderung durch den Dienst Welcher Zustand muss vor Dienstausführung gelten? Welcher Zustand gilt nach erfolgreicher Dienstausführung? Getrennte Anfrage- und Angebotsbeschreibungen Anfrager kann Präferenzen in die Anfrage integrieren Was muss, was soll, was darf, was könnte etc.

43 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 43 Gemeinsames Vokabular Grundsätzlicher Ansatz: Rechnerverständlichkeit benötigt gemeinsames Vokabular Einsatz von Ontologien Location RoomBuilding within room2.14:Roomroom335:Roomgeb50.34:Building within Schema Instanzen

44 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 44 Typen von Dienstbeschreibungen Dienst eingehende Nachrichten abgehende Nachrichten 1. Rein nachrichtenbasierte Dienstbeschreibung (z.B. WSDL) Dienst Zustände vor Dienstausführung Zustände nach Dienstausführung 2. Getrennt Nachrichten-/ Zustandsbasierte Dienstbeschreibung (z.B. OWL-S) Dienst 3. Rein Zustandsorientierte Dienstbeschreibung (z.B. DSD) konfigurierbare Zustände vor Dienstausführung konfigurierbare Zustände nach Dienstausführung Zustand Information

45 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 45 Vorteile Vorteile eines gemeinsamen Vokabulars: Keine unterschiedliche Benennung des gleichen Sachverhalts Beschreibung ist eindeutig Computer kann Vergleich selbstständig durchführen Allerdings auch Einigungsaufwand Vorteile von rein zustandsorientierten Beschreibungen: Keine explizite Beschreibung von Nachrichten Einfluss der ausgetauschten Information auf Zustände klar definiert Dienst können passen, obwohl Informationsfluss unterschiedlich

46 ZUSAMMENFASSUNG

47 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 47 Zusammenfassung Dienstorientierte Architektur WSDL SOAP UDDI Semantische Dienstbeschreibung Dynamische Dienstbindung Dienstverzeichnis Web Service abstrakte vs. konkrete Dienstbeschreibung Vergleich von WSDL-Beschreibungen rein zustandsorientierte Dienstbeschreibung BPEL4WS message-operation-port-service

48 Vorlesung Informationssysteme: Neuere Konzepte, Teil I, Michael Klein 48 Thank you for your attention!