geräteunabhängige dienste projektgruppe location-based services for wireless devices ws 2004/05...
TRANSCRIPT
Geräteunabhängige Dienste
Projektgruppe Location-based Services for Wireless DevicesWS 2004/05Christine Haertl
AG Kao
Betriebssysteme und Verteilte SystemeInstitut für InformatikUniversität Paderborn
PG LBS: Geräteunabhängige Dienste 228.10.2003
Inhalt
• Motivation• Lösungsansätze
UIML IML ISL DDL
• Vergleich der Ansätze• Ausgewählter Ansatz für die Projektgruppe
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 328.10.2003
Motivation
Haus
Kuh
Auto
PC PDA
Haus
Kuh
Auto
Haus
Kuh
Auto
Handy
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 428.10.2003
Motivation
Kartendienst
Browser
Dienste
E-mailHTMLE-mailWML
E-mailtinyHTML
HTML
tinyHTML
WML
?
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 528.10.2003
Motivation
HTML
tinyHTML
WML
StrukturInhalt StrukturStruktur
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 628.10.2003
XML-XSL
XML
XSL
HTMLHTMLHTML
• XMLXSL-Dienst verbindet geräteunabhängige XML-Datei mit geräteabhängiger XSL-Datei
• XSL-Datei spezifiziert welche Teile aus XML benutzt werden
• Aufgabe des Erzeugers der XSL-Datei: gültige Typen (Button, Textfeld) auf graphische Komponenten der Geräte abbilden
DienstXMLXSL
XMLXSL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 728.10.2003
Ansätze
ISL
IML DDL
UIMLXMLXSL
User Interface Markup Language
Interaction Markup Language
Dialog Description Language
Interaction Specification Language
Extensible Markup Language
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 828.10.2003
Anforderungen
Trennung von Inhalt, Struktur und Logik
Vorteile von gerätespezifischen Fähigkeiten nutzen
Darstellung durch Dienstentwickler beeinflussbar
Validation gültiger Benutzereingaben
Erweiterbarkeit
Wiederverwendbarkeit von Code durch Vererbung
Keine Komplexität
Automatisierte Anpassung an Displaygröße
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 928.10.2003
UIMLUIML
interface peers
uiml
head template
<uiml xmlns='http://uiml.org/dtds/UIML2_0e.dtd'> <head> ... </head> <interface> ... </interface> <peers> ... </peers> <template> ... </template></uiml>
<interface> <structure> <part name="TopHello" class="Container"> <part name="HelloStr" class="String"/> </part> </structure> <style> <property part-name="TopHello“ name="content">Hello</property> <property part-name="HelloStr" name="content">Hello World!</property> </style></interface>
<peers> <presentation name="VoiceXML"> <component name="Container" maps-to="vxml:form"/> <component name="String" maps-to="vxml:block"> <attribute name="content" maps-to="PCDATA"/> </component> </presentation></peers>
<vxml> <form> <block>Hello World!</block> </form></vxml>
<peers> <presentation name="WML"> <component name="Container" maps-to="wml:card"> <attribute name="content" maps-to="wml:card.title"/> </component> <component name="String" maps-to="wml:p"> <attribute name="content" maps-to="PCDATA"/> </component> </presentation></peers>
<wml> <card title="Hello"> <p>Hello World!</p> </card></wml>
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 1028.10.2003
Einschränkung durch UIML
HTML
tinyHTML
WML
UIML
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 1128.10.2003
UIML - IML
Semantics Implementation
UIML rendered to WML
UIML rendered to HTML
IML
Render Engine WML
Render Engine HTML
Render Engine Java
DOC Interface
User Interface
UIML IML
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 1228.10.2003
IMLIML
Sprachdefinition von IML:
Gibt es nicht!
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 1328.10.2003
UML – IML Erfüllung von Anforderungen
Trennung von Inhalt, Struktur und Logik Vorteile von gerätespezifischen Fähigkeiten nutzen
Darstellung durch Dienstentwickler beeinflussbar
Validation gültiger Benutzereingaben Erweiterbarkeit Wiederverwendbarkeit von Code durch Vererbung
Keine Komplexität Automatisierte Anpassung an Displaygröße
IMLUIML
UIML IML
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 1428.10.2003
ISL - Interaction Specification Language
Geräte - abhängigDienst - unabhängig
Geräte - abhängigDienst - abhängig
Interaction Engine Customization
Form
User InterfaceInteractio
n Acts
Geräte - unabhängig
• input
• output
• selection
• modification
• create
• destroy
• start
• stop
Interaction acts
Dienst
Interpretiert ISL Generiert UI
Codierung in ISLInterpretiert
Benutzeraktion
Benutzer-Schnittstelle
ISL
ISL
UI Spez. (HTML)
Benutzer-aktion
Dienst
Interaction Engine
CustomizationformCustomization Form
• beinhaltet geräte- und dienstspezifische Informationen
• Dienstanbieter können Präsentation ihres Dienstes kontollieren
• kein Customization Form vorhanden Standardeinstellungen
ISL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 1528.10.2003
ISL - Interaction Specification Language
<isl> <out> <name>select_dest_O</name> <string>Please specify destination!</string> <meta>null</meta> </out> <select> <name>select_dest_S</name> <alt> <string>Stockholm</string> <retval>ARN</retval> </alt> <alt> <string>London</string> <retval>LHR</retval> </alt> <alt> <string>New York</string> <retval>JFK</retval> </alt> </select></isl>
<isl> <data> <name>select_dest_S</name> <value>LHR</value> </data></isl>
ISL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 1628.10.2003
ISL – Resultat eines Customization Forms
ISL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
Beispiel-Implementierung:
Kalender
PG LBS: Geräteunabhängige Dienste 1728.10.2003
ISL - Erfüllung von Anforderungen
Trennung von Inhalt, Struktur und Logik Vorteile von gerätespezifischen Fähigkeiten nutzen
Darstellung durch Dienstentwickler beeinflussbar
Validation gültiger Benutzereingaben Erweiterbarkeit Wiederverwendbarkeit von Code durch Vererbung
Keine Komplexität ()
Automatisierte Anpassung an Displaygröße
ISL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
ISL
PG LBS: Geräteunabhängige Dienste 1828.10.2003
DDL – Dialog Description Language
ddl
include head DataTypeDef
Data-instance
dialog class content
part property constant
reference #PCDATA
DDL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 1928.10.2003
DDL – Dialog Description Language
dialog
frameset container label image source form
select submit textinput checkbox
option
<part> <property name=“type“>label</property> <property name=“content“> TU-Dresden </property> <property name=“link“> http://www.tu-dresden.de </property></part>
DDL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 2028.10.2003
DDL – Dialog Description Language
container
container
container
atomatom
container
part part part part part part part part part
DDL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 2128.10.2003
Ausgabe auf Displays verschiedener Geräte
DDL
WAP Handy
PC - Standardbildschirm
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 2228.10.2003
DDL - Erfüllung von Anforderungen
Trennung von Inhalt, Struktur und Logik Vorteile von gerätespezifischen Fähigkeiten nutzen
Darstellung durch Dienstentwickler beeinflussbar
Validation gültiger Benutzereingaben Erweiterbarkeit Wiederverwendbarkeit von Code durch Vererbung
Keine Komplexität Automatisierte Anpassung an verschiedene Geräte
DDL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
DDL
PG LBS: Geräteunabhängige Dienste 2328.10.2003
Zusammenfassung der Ansätze
ISL
IML DDL
UIML
gibt viel des Layouts durch abstrakte Dialogelemente vor
Versucht Layout komplett zu generieren
passt Informationsgehalt der Bildschirmgrösse an
verwendet wie UIML abstrakte Dialogelemente
überlässt nur die Layoutgenerierung dem Computer
Layoutinformationen durch Customization Forms
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 2428.10.2003
Vergleich der Ansätze
Trennung von Inhalt, Struktur und Logik Vorteile von gerätespezifischen Fähigkeiten nutzen Darstellung durch Dienstentwickler beeinflussbar
Validation gültiger Benutzereingaben Erweiterbarkeit Wiederverwendbarkeit von Code durch Vererbung
Keine Komplexität
Automatisierte Anpassung an Displaygröße
DDLISLUIML IML
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 2528.10.2003
Möglicher Ansatz für die Projektgruppe
Dienst
Interaction
Acts (ISL)
DDLFragment-
ierung
VoiceXML
HTML
WML
tinyHTML
Interaction Engine
Customization Form
Interaction Engine
Customization Form
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 2628.10.2003
Interessenkonflikt
FlexibilitätAnpassung
einfachkompakt
DDLISL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 2728.10.2003
Wichtigste Anforderungen für die Projektgruppe
Trennung von Inhalt, Struktur und Logik Vorteile von gerätespezifischen Fähigkeiten nutzen Darstellung durch Dienstentwickler beeinflussbar
Validation gültiger Benutzereingaben Erweiterbarkeit Wiederverwendbarkeit von Code durch Vererbung
Keine Komplexität
Automatisierte Anpassung an Displaygröße
DDLISLUIML IML
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 2828.10.2003
Möglicher Ansatz für die Projektgruppe
ISL
Geräte - abhängigDienst - unabhängig
Geräte - abhängigDienst - abhängig
Interaction Engine Customization
Form
User InterfaceInteraction
Acts
Geräte - unabhängig
Dienst
Validation von Benutzereingaben
Geräte-bibliotheken XSL-
Stylesheet
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
PG LBS: Geräteunabhängige Dienste 2928.10.2003
Möglicher Ansatz für die Projektgruppe
ISL
Motivation Lösungsansätze Vergleich der Ansätze Ansatz für die PG
HTMLXSL A1
XML A
XML B
WML
XSL A2
XSL B1
XSL B2
• eine XSL-Datei pro Dienst und pro Gerät
HTMLXML A
XML B WML
• eine Engine pro
Gerät
• ein CF pro Dienst
E 1
E 2
CF A1
CF B1
CF B2
CF A2
PG LBS: Geräteunabhängige Dienste 3028.10.2003
Vielen Dankfür die Aufmerksamkeit!
PG LBS: Geräteunabhängige Dienste 3128.10.2003
Backup
Motivation Lösungsansätze Vergleich der Ansätze Ausgewählter Ansatz Zusammenfassung
Kartendienst
Browser
Dienste
E-mailHTMLE-mailWMLE-mail
tinyHTML
HTML
tinyHTML
WML
PG LBS: Geräteunabhängige Dienste 3228.10.2003
Backup
Motivation Lösungsansätze Vergleich der Ansätze Ausgewählter Ansatz Zusammenfassung
HTML
tinyHTML
WML
InhaltStrukturStrukturStruktur
PG LBS: Geräteunabhängige Dienste 3328.10.2003
Backup
Motivation Lösungsansätze Vergleich der Ansätze Ausgewählter Ansatz Zusammenfassung
HTML
tinyHTML
WML ?
Inhalts-beschreibungssprache