1 Michael Müssig Schaffung eines Vergleichers für DIANE Service Descriptions (DSD) Diplomarbeit Michael Müssig Betr. Professor: Prof. Dr.-Ing Dr. h.c.

Slides:



Advertisements
Ähnliche Präsentationen
interaktiver Web Service Workflows
Advertisements

Algorithmentheorie 08 – Dynamische Programmierung (1)
Christian Scheideler SS 2009
Heterogene Informationssysteme
Inhalt Saarbrücken,.
Übung Datenbanksysteme WS 2003/ Übung Datenbanksysteme Entwurf eines Bibliothekssystems
Eingebettete Systeme Qualität und Produktivität
WS 05/06Automatische Akquisition linguistischen Wissens1 Partielles Wissen erweitern 1.Zusammenhang mit bisherigen Algorithmen 2.Vom offensichtlichen zum.
16. Juni 2006 Stefan Ukena Burstein und McDermott: Ontology Translation for Interoperability Among Semantic Web Services Hamburg, 16. Juni 2006.
Christian A. Kopf Institut für Informatik FU Berlin Episode Recognizer Framework - Rahmenwerk zur Episodenerkennung.
DEPARTMENT FÜR INFORMATIK
Pascal Busch, WWI00B – Vergleich CORBA vs. Web Services hinsichtlich der Applikationsintegration Web Services vs CORBA Web Services vs CORBA Ein Vergleich.
Java: Dynamische Datentypen
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
© 2002 Prof. Dr. G. Hellberg 1 XML-Seminar XML-Technologie: XML in Theorie und Praxis Prof. Dr. G. Hellberg XML-Technologie: XML in Theorie und Praxis.
Prof. Dr. T. Kudraß1 Relationenkalkül. Prof. Dr. T. Kudraß2 Relationenkalkül Zwei Ausprägungen: Tupelrelationenkalkül (TRK) und Domänenrelationenkalkül.
Sebastian Grahn Sebastian Kühn
Imperative Programmierung Funktionen und Parameter
Jan Fienhold1 Institut für Informatik Betriebliche Informationssysteme OWL Web Ontology Language.
1 Entwicklung einer Evaluationsmethodik für Semantic Web Services und Anwendung auf die DIANE Service Description Thomas Fischer Diplomarbeit.
Java Server Pages Implementierung eines Web-Service-Clients Pea 13: Maik Opitz, Martin Melle, Philipp Hake.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Algorithmen und Komplexität
Introducing the .NET Framework
Strukturänderungen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld.
Was sind Histogramme? (1)
Semantische Webdienste in OWL-S und WSMO Name : Sinan Sen Betreuer : Dr. Andreas Gerber Datum :
DVG Methoden 1 Methoden. 2 int dezi = Integer.parseInt(args[0]); boolean vz = (dezi>=0); dezi = Math.abs(dezi); String Bin = ""; do { } while.
Web-Anwendungsentwicklung à la MVC. Übersicht Über Georg Heeg Ein industrielles Beispiel Web-Anwendungen aus Smalltalker-Sicht MVC für das Web Programmierdemo.
Forschungszentrum Informatik, Karlsruhe Objektorientierte Systeme unter der Lupe Markus Bauer Oliver Ciupke.
Möglichkeiten der Anfragebearbeitung in mobilen Ad-hoc-Netzwerken
1 Dienstbeschreibung mit DAML Ein graphischer Editor für DAML - Ting Zheng Betreuer: Michael Klein, Philipp Obreiter.
Studienarbeit: "Generierung von Korrektheitstests für den Vergleicher von DIANE Service Descriptions" Mirco Stern Betreuender Mitarbeiter: Michael Klein.
Handlungsplanung und Allgemeines Spiel „Game Description Language (GDL)“ Peter Kissmann.
ODBC (Open Database Connectivity)
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Objektmodellierung Objekte und Klassen Ein Objekt ist ein Exemplar.
Mark Doll – 1/21V3D2 Workshop 2003, Frankfurt/Main 19./ http:// Ansätze für eine Web-basierte Initiierung qualitätsbasierter Kommunikationsdienste.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
Automatic composition of UI mashups Vortrag zum Seminar Webengineering 2011 Michael Reißner.
Webservice Grundlagen
Minh Bui 14. März 2013 Mobile Visualization in SenseDroid Diplomarbeit Minh Bui, # 1 of 16 Aufgabensteller: Prof. Dr. Andreas Butz Betreuer:
Effiziente Algorithmen
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 2 Folie 2 ASP.NET HTTP-Handler (1)
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
CGI (Common Gateway Interface)
Algorithmen und Datenstrukturen Übungsmodul 8
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Persistenz: Objekt-Lebensdauer In RDBMS wird Lebensdauer von Werten durch ihren Typ festgelegt: Instanzen von Relationstypen sind persistent, alle anderen.
Vortrag - Diplomarbeiten (HS I)
Objekte und Literale ODMG-Objektmodell kennt zwei Arten von Datenelementen: Literale: Identität ist ausschließlich durch Wert gegeben. Nur maximal eine.
Omniscient Debugging und Slicing für Java
WILLKOMMEN Daniel Matheis Betreuer: Birgitta König-Ries Michael Klein "Dezentrale Realisierung von Gruppendiensten in Peer-to-Peer-Umgebungen" Studienarbeiter:
"Aktive VISIO-Schablonen zur grafischen Erstellung von DIANE-Dienstbeschreibungen" Thomas Herzog Betreuer: Michael Klein Universität Karlsruhe - 1 -
Diplomarbeit: Konzeption und Realisierung von Dienstkomposition für DIANE Service Descriptions Mirco Stern Betreuender Mitarbeiter: Michael Klein Betreuer:
- Studienarbeit - Entwurf und Umsetzung von kombinierten Anfragen für die Ähnlichkeitssuche auf digitalen Bilder auf der Basis von Regionen und Features.
Web Services Spezielle Methoden der SWT Liste V – WS 2008/2009 Christian Boryczewski.
1 Igor Vaynerman Personalisierung der Netzdienste zur Benutzerunterstützung Igor Vaynerman FSU Jena 20. Mai 2005.
Funktionen. Aufgabe : Eingabe zweier Zahlen ---> Minimum bestimmen Dann nochmals Eingabe zweier Zahlen ---> Minimum bestimmen.
Anbindung eines Ontologie- basiertes Risikomanagement- systems an eine XML-Datenbank Datenbankseminar am Lehrstuhl für Praktische Informatik III Vortrag.
Dr. Wolfram Amme, Semantik funktionaler Programme, Informatik II, FSU Jena, SS Semantik funktionaler Programme.
1 Suchprofile erstellen und verwalten. 2 Suchprofile bei Registrierung Hier können Sie bis zu drei Suchprofile einrichten. Diese finden Sie später unter.
Institut für Informatik Betriebliche Informationssysteme S.Dietzold, T.Riechert, J.Lehmann, A.Aslam, M.Herrmann1 Semantic Web Services and Interfaces Sebastian.
Spärliche Kodierung von Videos natürlicher Szenen Vortragender: Christian Fischer.
Rechen- und Kommunikationszentrum (RZ) Selektionsstrategien auf Graphstrukturen Sven Porsche Seminarvorträge Aachen.
1 Lutz Ullrich SOA – serviceorientierte Architektur SOA – Was ist das?
 Präsentation transkript:

1 Michael Müssig Schaffung eines Vergleichers für DIANE Service Descriptions (DSD) Diplomarbeit Michael Müssig Betr. Professor: Prof. Dr.-Ing Dr. h.c. P.C. Lockemann Betr. Mitarbeiter: Michael Klein

2 Michael Müssig Szenario „Buche einen aktuellen Action-Film, der um 20:00 Uhr in einem Karlsruher Kino beginnt!“  Kinokarten-Buchdienst MOVIE getInfo… reserveSeat… buyDVD… downloadSoundtrack… chatWithMainActor… MORE…

3 Michael Müssig Nutzung eines passenden Dienstes Mobile Anwendung Dienst- Anfrage Dienst- Geber Dienst- Geber Dienst- Geber Dienst- Geber Dienst- Geber Dienst- Angebot Dienst- Angebot Dienst- Angebot Dienst- Angebot Dienst- Angebot ? Welcher Dienstgeber ist geeignet? (Vergleich) Wie rufe ich den Dienst auf? (Konfiguration)

4 Michael Müssig Ablauf dienstorientierter Anwendungen Repository (evtl. verteilt) Dienstnehmer (Client) Dienstgeber (Server) 1. Angebot beschreiben 3. Anfrage beschreiben 4. suchen 5. vergleichen 6. auswählen 7. konfigurieren 8. aufrufen 9. ausführen 10. Ergebnis übermitteln 2. veröffentlichen

5 Michael Müssig Aufgaben und Ziele  Schaffung eines Vergleichers für DSD  Hauptkriterium: Vollautomatische Dienstnutzung  Aufgaben des Vergleichers / Matcher 1.Übereinstimmung von Angeboten zu Anfrage Vergleichswert innerhalb [0,0.. 1,0]  präferenzbasiertes Vergleichen 2.Konfiguration der Dienste  parametrisierbares Angebot  Informationen nach Dienstnutzung (Anfrage)

6 Michael Müssig Gliederung  Verwandte Ansätze  Funktionsweise des Vergleichers  Live-Demo  Ergebnisse und Ausblick

7 Michael Müssig  WSDL = Web Service Description Language  einfach, weit verbreitet  standardisiert durch W3C  Dienstbeschreibung  Mangel an Semantik  Funktionalität erraten aus Nachrichtenfluss  strikte Nachrichtenkompatibiliät  evtl. semantisch passender Dienst nicht nutzbar  einfacher Vergleicher  Eingabe liefert mehr  Ausgabe verlangt weniger Verwandte Ansätze - WSDL

8 Michael Müssig Verwandte Ansätze – OWL-S  ehemals DAML-S  ontologiebasiert  beschreibt nicht nur Nachrichtenfluss  Probleme des Vergleicher  Zusammenhang Nachrichten/Zustandsübergang fehlt  Verwendung von allgemeinen Heuristiken  keine Präferenzen integrierbar

9 Michael Müssig Verwandte Ansätze - WSMO  WSMO = Web Service Modelling Ontology  Heterogenität erlaubt  Auflösung durch Mediatoren  nicht vollständig automatisierbar  Unterschied Angebot/Anfrage  ABER: Präferenzen schwer einstellbar  unvollständiger Vergleicher  Mediator nicht integriert

10 Michael Müssig Vergleicher in DSD  reine Zustandsorientierung  kombinierte Betrachtung des Nachrichtenflusses und der Beschreibung  Vergleich auf Instanzebene  Beschreibung von Instanzen  „Buche Harry Potter“ vs. „Suche Kinokartenbuchdienst“

11 Michael Müssig Vergleicher in DSD (2)  Unterscheidung Angebot/Anfrage  Funktionalität gesucht, nicht spezieller Dienst  mehrere Dienste können Funktion erfüllen  vollständige Präferenzintegration in Anfragen  individueller Vergleicher, keine allgemeine Heuristik

12 Michael Müssig Übersicht der Variablen Angebot Anfrage EingabeAusgabe OffIN wird beim Vergleich gefüllt Dienstparameter OffOUT ist nach Dienstnutzung durch Anbieter gefüllt ReqIN wird vor Vergleich gefüllt wiederverwendbar ReqOUT ist nach Dienstnutzung durch Vergleicher gefüllt

13 Michael Müssig Beispiel - Offer Angebot 13

14 Michael Müssig Beispiel - Request Anfrage 14

15 Michael Müssig Der Vergleichs-Algorithmus  Vergleich und Konfiguration des Angebots  Garantierter Vergleichswert (worst case)  Graph-Vergleich  anfragegetrieben  rekursiver Abstieg innerhalb des Graphs  Unterscheidung bzgl. Element-Typ  Teilmengeneigenschaft  2 Modi  minimizing: Vergleicher bestimmt schlechtesten Wert  maximizing: Vergleicher bestimmt besten Wert

16 Michael Müssig Beispiel - Request Anfrage Primitiver Datentyp 16

17 Michael Müssig Vergleich – Primitive Datentypen x4 0.5 Vergleichswert 8 0,375

18 Michael Müssig Beispiel - Request Anfrage Wertbasierte Klasse

19 Michael Müssig Vergleich – Wertbasierte Klassen  Isolierter Vergleich  orthogonale Attribute  rekursiver Abstieg  amount  Vergleichswert =  currency  Vergleichswert = 1.0  Price  Verbindungsstrategie: AND  * 1.0  Vergleichswert =

20 Michael Müssig Beispiel - Request Anfrage Öffentliche Entitätsklasse

21 Michael Müssig Vergleich – Öffentliche Entitätsklassen

22 Michael Müssig Beispiel - Request Anfrage Teilöffentliche Entitätsklasse Spiderman 2 : 1.0 Terminator 3:

23 Michael Müssig Vergleich – Teilöffentliche Entitätsklassen  Vergleicher fehlt vollständiges Wissen  Attribute nicht orthogonal  Ausführung bei offIN-Belegung mit Vergleichswert >0 nicht garantiert  spezieller Vergleich mit erweitertem Bewertungskriterium unabdingbar

24 Michael Müssig Ausführungswahrscheinlichkeit  Vergleicher berechnet Ausführungswahrscheinlichkeit  Abschätzung  möglicher Variablenbelegungen  möglicher Instanzen

25 Michael Müssig OffIN-Kombinationen AnfrageAngebot  10 mögliche OffIN-Kombinationen :00 action:Genre

26 Michael Müssig Verbesserung durch deklaratives Binden  Ausführungswahrscheinlichkeit oft recht niedrig  Deklaratives Binden von Variablen  Anbieter muss dies explizit erlauben  Deklarative Bindung

27 Michael Müssig Beispiel - Request Anfrage Ausgabevariable binden 27

28 Michael Müssig Beispiel - Offer Angebot 28

29 Michael Müssig Binden von ReqOUT-Variablen  Angebot ist Menge  falls erlaubt, deklarative Bindung  einelementig, Füllwert gegeben  mehrelementig, Angebot passt nicht zu Anfrage  Angebot ist OffOUT  Referenz auf OUT-Variable  Angebot ist Instanz/OffIN  direkter Füllwert

30 Michael Müssig Beispiel - Request Anfrage Ausgabevariable binden 30

31 Michael Müssig Beispiel - Offer Angebot 31

32 Michael Müssig Binden von ReqOUT-Variablen  Angebot ist Menge  falls erlaubt, deklarative Bindung  einelementig, Füllwert gegeben  mehrelementig, Angebot passt nicht zu Anfrage  Angebot ist OffOUT  Referenz auf OUT-Variable  Angebot ist Instanz/OffIN  direkter Füllwert

33 Michael Müssig Binden von ReqOUT-Variablen  Angebot ist Menge  falls erlaubt, deklarative Bindung  einelementig, Füllwert gegeben  mehrelementig, Angebot passt nicht zu Anfrage  Angebot ist OffOUT  Referenz auf OUT-Variable  Angebot ist Instanz/OffIN  direkter Füllwert

34 Michael Müssig Übersichtstabelle Vergleicher

35 Michael Müssig LIVE - Demo VERGLEICHER

36 Michael Müssig Ergebnisse und Ausblick  Vergleicher erfüllt Anforderungen automatischer Dienstnutzung  Berechnung des Vergleichwertes  individueller Matcher (Präferenzen)  Bindung der Variablen  Erkenntnis: Teilöffentliche Klassen  effektiv, aber nicht effizient (Ausführungswahrscheinlichkeit)  deklarative Bindung  TODO: Erweiterte Evaluation  Ausblick: Erweiterung des Vergleichers  Definition von Abhängigkeiten zwischen Attributen  lokale Optimierung (Pruning)

37 Michael Müssig Danke für Ihre Aufmerksamkeit! DIANE Project

38 Michael Müssig DSD - Mengen  deklarative Mengen  Beschreibungselemente  Type Check Strategy  Direct Conditions  Property Conditions  Missing Strategy  Connecting Strategy direct conditions connection strategy tcs Set prop. condition ms

39 Michael Müssig DSD - Mengen (2)  Primitive Mengen  Wertbasierte Mengen  Entitäts-Mengen (öffentlich/teilöffentlich) Integer < 100 Price V amount Double <= 8.00 Movie PE year Integer > 2000

40 Michael Müssig DSD - Variablen  Variable als besondere Menge  spätere Bindung  IN-Variable  ReqIN – bereits gebunden  OffIN – Bindung während Matching  OUT-Variable  OffOUT – evtl. Referenzierung  ReqOUT – Bindung nach Matching Integer IN < 100

41 Michael Müssig Matching – Öffentliche Entitätsklassen  komplettes Wissen über Instanzen  alle Instanzen veröffentlicht  Stoppe rekursives Graphmatching  Iteration über Instanzen 1.Ist Instanz im Offer enthalten? 2.Matche Instanz mit Request 3.Bilde Cluster  gleiche OffIN-Variablenbelegung  Minimum innerhalb des Clusters 4.Maximum zwischen den Clustern

42 Michael Müssig Einelementige Menge  Menge deklarativ einelementig  Menge durch Variable einelementig  Element kann nach Dienstausführung bestimmt werden