120 likes | 220 Views
Automatic composition of UI mashups. Vortrag zum Seminar Webengineering 2011 Michael Reißner. UI mashups. Ziel: Erstellung von Anwendungen ohne Notwendigkeit eigenen Codes Problem: Erkennen geeigneter Komponenten Große Unterschiede in GUI der Komponenten (SWT, Swing, JFace , …)
E N D
Automaticcompositionof UI mashups Vortrag zum Seminar Webengineering 2011 Michael Reißner
UI mashups • Ziel: Erstellung von Anwendungen ohne Notwendigkeit eigenen Codes • Problem: • Erkennen geeigneter Komponenten • Große Unterschiede in GUI der Komponenten (SWT, Swing, JFace, …) • Laufzeitumgebung z.B.: • Lotus Expeditor Middleware
Semantische Beschreibung von Komponenten • Beschreibung von Input und Output der Komponenten • SAWSDL (Semantic Annotation Web Service Description Language) • Definiert Methode zur Semantischen Beschreibung aber nicht die verwendete Beschreibungsform • OWL (Web Ontology Language) • Ontologische Beschreibung • Formale Beschreibung von Begriffen und Beziehungen
namespaces für semantische Beschreibung Semantische Beschreibung Definition der Ausgabe Operation Verbindung zw. Ausgabeoperation und Ausgabe Anne H.H. Ngu, Michael P. Carlson, Quan Z. Sheng andHye-young Paik, Semantic-BasedMashup of Composite Applications, p 7, Fig. 3 WSDL with semantic markup for CityStatePicker component
Kommunikation zwischen Komponenten • Komponenten wissen zur Design-Zeit nichts voneinander • Modellierung eines Datenflusses durch die Komponenten • Wiring: Output (Komponente1) wird Input (Komponente2) • Bsp.: Lotus Expeditor • Laufzeitumgebung: Property Broker
Erkennen geeigneter Komponenten • Erkennen geeigneter Komponenten: Matching • Vorschlag von Ngu, Carlson, Sheng und Paik • Idee: max{ domainindependent score, domaindependent score} • Domain independentmatching • Ignoriert semantische Information • Domain dependentmatching • Nutzt semantische Information
Domain-independentmatching • Vorbereitung der wsdl-Eingabe: • Token aus Wörtern generieren • Expansion von Abkürzungen • Suche nach Synonymen • Berechnung: • m bzw. n Anzahl valider Token in A bzw. B • Match(A, B) Anzahl „matchender“ Token
Domain-dependentmatching • Angepasster Algorithmus aus SNOBASE (Semantic Network Ontology Base) • ni – Anzahl von semantisch beschriebenen Attributen in Si • hi – Anzahl der semantisch beschriebenen Attribute von Si die in Sq „gematcht“ werden konnten • dist(i,j) – Distanzwert zwischen j-temTerm in Si und dem entsprechenden zu prüfenden Term Ontologische Distanz wird in die Berechung mit einbezogen Anne H.H. Ngu, Michael P. Carlson, Quan Z. Sheng andHye-young Paik, Semantic-BasedMashup of Composite Applications, p 8, table 1 a simple distancescoringscheme
Effektivität des Verfahrens • Verfahren auch ohne semantische Anmerkungen nützlich • Geringe Scores falls keine semantischen Anmerkungen vorhanden • Angabe einer Startkomponente ist nötig, danach zeigen die höchsten scores an welche Komponenten noch hinzugefügt werden müssen.
Strategien zur Zusammenstellung von Komponenten • Process-based Web-Service composition • Output (Komponente1) wird Input (Komponente2) • Dynamic semantic Web servicecomposition • input und output der gesuchten Komponente bekannt
Verwendete Quellen • Anne H.H. Ngu, Michael P. Carlson, Quan Z. Sheng andHye-young Paik, Semantic-BasedMashupof Composite Applications, 2010