9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive...

27
9. Dezember 2008 A Method for the User-centered and Model-based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche Aussprache am 9.12.08 Dipl.-Inform. Sebastian Feuerstack 1

Transcript of 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive...

Page 1: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

9. Dezember 2008

A Method for the User-centered and Model-based Development of Interactive Applications

DAI-Labor der Technischen Universität Berlin

Wissenschaftliche Aussprache am 9.12.08

Dipl.-Inform. Sebastian Feuerstack

1

Page 2: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

9. Dezember 2008 Sebastian Feuerstack 2

Agenda

• Einleitung– Motivation– Zielsetzungen der Arbeit– Modellbasierte Entwicklung von Bedienungsschnittstellen

• Die Multi-Access Service Platform (MASP)– Methodik– Laufzeitumgebung

• Zusammenfassung und Ausblick

Page 3: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Motivation – Vernetzte Umgebungen

• Zahlreiche vernetzte Geräte und Sensoren über mehrere Räume verteilt [Weiser, 1993], Internet der Dinge [ITU, 2005]

• Interaktive Anwendungen werden in unterschiedlichen Situationen genutzt [Paterno, 2005]

9. Dezember 2008 Sebastian Feuerstack 3

Page 4: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Motivation – Herausforderungen für Entwickler

• Plattformübergreifende Entwicklung ist aufwändig• Neue Plattformen sind schwer in vorhandene Anwendungen zu

integrieren• Entwicklungsumgebungen und Frameworks mit wiederverwendbaren

Komponenten fehlen• Anwendung sind häufig statisch, d.h. Adaption auf verschiedene

Situationen nicht möglich

Wie lassen sich interaktive Anwendungen plattform-übergreifend und nutzerzentrisch entwickeln und adaptiv in vernetzten Umgebungen betreiben?

9. Dezember 2008 Sebastian Feuerstack 4

Page 5: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Zielsetzungen

• Entwicklungsmethodik zur Erstellung von interaktiven und geräteunabhängigen Anwendungen

• Entwurf und Umsetzung einer modell-basierten Laufzeitumgebung für interaktive Anwendungen

• Erweiterung bestehender und auch neuer Modelle– Ausführbares Aufgabenmodell– Abstraktes UI Modell– Layout Modell

9. Dezember 2008 Sebastian Feuerstack 5

Page 6: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Agenda

• Einleitung– Motivation– Zielsetzungen der Arbeit– Modellbasierte Entwicklung von Bedienungsschnittstellen

• Die Multi-Access Service Platform (MASP)– Methodik– Laufzeitumgebung

• Zusammenfassung und Ausblick

9. Dezember 2008 Sebastian Feuerstack 6

Page 7: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Modellbasierte Entwicklung

• Abstraktion als Mittel zum Entwurf von komplexen, interaktiven Anwendungen [Calvary, 2003] für unterschiedliche:– Plattformen (Geräte)– Modalitäten– Umgebungen– Nutzer

• Ziel der modellbasierten Entwicklung [Vanderdonkt, 2008]:

– Identifikation einer „passenden“ Menge an Abstraktionen und Beziehungen für die Analyse, den Entwurf und die Evaluation

– Spezifikation von Werkzeuggestützten Entwurfsprozessen

9. Dezember 2008 Sebastian Feuerstack 7

Page 8: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Vorteile Modellbasierter Entwicklung

• Methodik– Spezifikationsgetriebene Prozesse, schrittweise Verfeinerung

[Ghezzi, 2002]– Nutzerzentriertheit: Aufgaben, Nutzer und Domänen [Szekely,

1995]– Deklarative Modelle [Byrne, 1994]

• Wiederverwendbarkeit [Puerta,1997]– Effiziente Entwicklung für mehrere Plattformen– Deklarative Darstellung erleichtert Wiederverwendbarkeit

• Konsistenz der entwickelten Anwendung– Über verschiedene Plattformen hinweg– Von Entwurfsmodellen bis zum finalen Produkt

9. Dezember 2008 Sebastian Feuerstack 8

Page 9: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Agenda

• Einleitung– Motivation– Zielsetzungen der Arbeit– Modellbasierte Entwicklung von Bedienungsschnittstellen

• Die Multi-Access Service Platform (MASP)– Methodik – Laufzeitumgebung

• Zusammenfassung und Ausblick

9. Dezember 2008 Sebastian Feuerstack 9

Page 10: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Methodik

• Kontinuierliche Werkzeugunterstützung• Kurze Iterationen durch Generierung von konkreten

Beispielen und Prototypen• Nutzerzentrierter Ansatz

9. Dezember 2008 Sebastian Feuerstack 10

Page 11: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Beispiel: Kochassistent (1/2)

9. Dezember 2008 Sebastian Feuerstack 11

Copyright next generation media 2007

Page 12: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Beispiel: Kochassistent (2/2)

9. Dezember 2008 Sebastian Feuerstack 12

Page 13: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Aufgaben-Analyse

• Szenarien über Nutzer und Aktivitäten [Carroll, 2000]

• Ein Szenario hat ein Ziel• Extraktion

– Aktivitäten: Nutzer vs. System– Unterziele– Identifikation der Objekte

9. Dezember 2008 Sebastian Feuerstack 13

Page 14: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Aufgaben-Entwurf

• Erstellung der Aufgabenhierarchie

• Identifikation von temporalen Beziehungen

• Differenzierung der Aufgabentypen

• Detaillierung der Objekte– Verfeinerung der Daten– Aufbrechen der Objekte

• Zugriff und Reichweiteder Objekte

9. Dezember 2008 Sebastian Feuerstack 14

Page 15: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Aufgaben-Simulation

• Konsistenz zu Szenarien• Menge der Interaktionsaufgaben

begrenzen• Alle relevanten Informationen

verfügbar?– Ausgabe-Aufgaben– Objekte

9. Dezember 2008 Sebastian Feuerstack 15

Page 16: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Domänen-Design

• Modellierung aller identifizierten Objekte auf Basis der Aufgaben

• Generierung von Beispielobjekten auf Basis der Szenarien

• Werkzeugwahl nach der eingesetzten Technologie

9. Dezember 2008 Sebastian Feuerstack 16

Page 17: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Entwurf der Abstrakten Schnittstelle (AUI)

• Selektion relevanter Daten aus dem Domänenmodell

• Anreicherung der Daten um:– Kontext– Typtransformation– Präsentationsstruktur

• Anwendung und vordefinierter Transformationen für unterschiedliche Plattformen (WML/HTML/Thinlets/VoiceXML)

9. Dezember 2008 Sebastian Feuerstack 17

Page 18: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Layout-Modellierung

• Generierung aus anderen Modellen

• Eigenschaften:– Komposition– Reihenfolge– Orientierung– Größe

• Schrittweise Detaillierung– Anwendung– Bildschirmmasken– Kontext (Plattform, Nutzer,

Umgebung)

9. Dezember 2008 Sebastian Feuerstack 18

Page 19: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Konkrete Schnittstelle (CUI) - Implementierung

• Automatische Generierung von AUI-CUI Transformationen für jede Zielplattform mittels generischer Transformationen (XSL)

• Ausprogrammierung der generierten, spezifischen Transformationen (Design)

9. Dezember 2008 Sebastian Feuerstack 19

Page 20: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Wartung und Manipulation zur Laufzeit

• Die deklarativen Design-Modelle werden direkt in einer Laufzeitumgebung ausgeführt

• Inspektion und Manipulation der Modelle mittels eines „Debuggers“

• Automatische Synchronisation• Laufzeitumgebung kann mit

Werkzeugen verbunden werden.

9. Dezember 2008 Sebastian Feuerstack 20

Page 21: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Agenda

• Einleitung– Motivation– Zielsetzungen der Arbeit– Modellbasierte Entwicklung von Bedienungsschnittstellen

• Die Multi-Access Service Platform (MASP)– Methodik– Laufzeitumgebung

• Zusammenfassung und Ausblick

9. Dezember 2008 Sebastian Feuerstack 21

Page 22: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Modellbasiertes Laufzeitsystem

• Übersichtlichkeit „Kompletter Blick auf die Anwendung“

• Kein Bruch zwischen Design und Laufzeit

• Niedrige Lernkurve• Abstraction = Model• Control = Modelintepreter• Instance = Tuple Space• Kommunikation = Events

9. Dezember 2008 Sebastian Feuerstack 22

Page 23: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

MASP Modell-Agenten

• Flexible Zusammenstellung je nach Domäne

– Konfigurationsdatei

• Lose Kopplung der Agenten – (subscribe / notify)– Asynchrone Kommunikation

• Aufruf der Dienste (1a,1b)• Speicherung der Ergebnisse

(1c)• Berechnung des PTS (2)• Berechnung des Layouts

nach Kontextsituation (3)• CUIs-Transformation auf

Basis des Layouts (4)• Übermittelung von

Änderungen des Domänenmodells (5)

• Auslieferung der CUIs als FUIs, über Channels (6)

• Neuberechnung des PTS nach vom Nutzer abgearbeiteten Aufgaben (7)

9. Dezember 2008 Sebastian Feuerstack 23

Page 24: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Agenda

• Einleitung– Motivation– Zielsetzungen der Arbeit– Modellbasierte Entwicklung von Bedienungsschnittstellen

• Die Multi-Access Service Platform (MASP)– Methodik– Laufzeitumgebung

• Zusammenfassung und Ausblick

9. Dezember 2008 Sebastian Feuerstack 24

Page 25: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Zusammenfassung

• Durchgängig werkzeuggestützte Methodik– Ableitung von Beispielen, Simulationen, Prototypen

• Modellbasiertes Laufzeitsystem– Überbrückung der Lücke zwischen Design und Laufzeit

• Ergänzung vorhandener Modelle– Erweiterung eines Aufgaben-Modells für Laufzeitinterpretation– Ableitung des AUI-Modells aus dem Domänenmodell– Entwicklung eines Layout-Modells

9. Dezember 2008 Sebastian Feuerstack 25

Page 26: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Ausblick

• Vision „End-User Development“– Prototyping und Manipulation von interaktiven Anwendungen direkt

in der vernetzten Umgebung – Flexible, technische Basis für Usabilitytests

• Reasoning über Modelle– als „maschinelle Design-Kritik“ z.B. mittels Nutzersimulation – als „intelligente“ Bedienungsunterstützung („Hilfsfunktion“)

9. Dezember 2008 Sebastian Feuerstack 26

Page 27: 9. Dezember 2008 A Method for the User-centered and Model- based Development of Interactive Applications DAI-Labor der Technischen Universität Berlin Wissenschaftliche.

Vielen Dank für Ihre Aufmerksamkeit!

Copyright next generation media 2007

Weitere Informationen inkl. Publikationen, Videos und Software online unter http://masp.dai-labor.de

Sebastian Feuerstack

Researcher, DAI-Labor +49 (0) 30 / 314 – 74 060+49 (0) 30 / 314 – 74 003

[email protected]