iRoom - ein interaktiver Konferenzraum
  
  LMU München
  Institut für Informatik
  Hauptseminar "Disappearing Computer"
  Referent: Sebastian Lechenbauer
  Sommersemester 2003 
  03.07.2003
  
  Fox et al. "Integrating 
  Information Appliances into an Interactive Workspace"
  IEEE Computer Graphics and Applications. May/June 2000 (Vol. 20, No. 3) pp. 
  54-65 
  und
  Johanson et al. "The 
  Interactive Workspaces Project: Experiences with Ubiquitous Computing Rooms"
  IEEE Pervasive Computing, 1(2), April-June 2002 
  
  
Überblick
  -  Das "Interactive Workspaces Project" der Stanford University untersucht neue Möglichkeiten 
    für Menschen in technologiereichen Räumen zusammen zu arbeiten
-  Konzentration auf Aufwertung von Konferenzräumen mit großen 
    Displays, kabellosen oder multimodalen Geräten und der nahtlosen Integration 
    von tragbaren Geräten
Forschungsschwerpunkte
  - Wie bildet man einen physikalischen Ort auf eine zugrunde liegende Systeminfrastruktur 
    und ein entsprechendes Interaktionsmodel ab?
-  Verstärkter Einsatz von großen interaktiven Displays, teilweise 
    Touchscreens
- Zusammenarbeit mit anderen Forschungsgruppen innerhalb und außerhalb 
    der Computer-wissenschaften, um "non-toy" Anwendungen zu produzieren.
 Das Projekt bezieht Studenten und Fakultäten aus dem Bereich Grafik, 
    Human-Computer-Interaction, Netzwerke, Ubiquitous Computing und Datenbanken 
    ein und baut auf die Forschungsarbeit in diesen Bereichen auf.
Aktuelle Hardware-Ausstattung
  - Drei berührungsempfindliche White-Board-Displays an der Seitenwand 
  
-  großer Wandbildschirm "interactive mural"
- Tisch mit eingebautem Bildschirm
- Kameras, Mikrofone, WLAN-Support, kabellose Buttons und andere Interaktionsgeräte
  
  
Zeitliche Entwicklung
  - Bau im Sommer 1999, nutzbar ab Ende September
- Anfangs Standardprojektor, ab Sommer 2000 "interactive mural" 
    an der Frontseite
- Sorgfältiger Plan der Kabelrouten und –längen in zweiter 
    Version des iRooms
- Entwicklerlabor inklusive Anmeldebereich mit mobilen Geräten und einem 
    Apparat für die Raumkontrolle
Anwendungsgebiete
  - Gruppe von 2-15 Leute arbeitet an der Umsetzung einer Aufgabe
- Erweiterung von bestehender Software (wie z.B. Powerpoint 
    oder Internetbrowser) mit Funktionen zur Zusammenarbeit zwischen den 
    verschiedenen Nutzern und der Fähigkeit, auf unterschiedlichste Dateneingaben 
    zu reagieren 
- PDAs als Fernbedienung für logische und physische Einheiten im iRoom
Beispiel: Smart Powerpoint
  - Verschiedene Displays als Anzeigemöglichkeit für die Präsentation
- Zuhörer kann mit Laptops,PDAs,etc. durch die Folien browsen, Kommentare 
    setzen und mit restlichen Teilnehmern oder Sprecher kommunizieren
- Übersicht der Folien für Zuhörer mit Vor- und Rückschaufolien, 
    Möglichkeit des Speicherns von Zusatzinformationen, etc.
- Authoring-Werkzeug um gewünschtes Verhalten festzulegen, 
    zum Beispiel, auf welchem Bildschirm welche Folie angezeigt wird
Drei Aufgabenbereiche
  - Moving Data: Verschieben von Daten zwischen den einzelnen Bildschirmen und 
    zwischen mitgebrachten Geräten
- Moving Control: Kontrolle aller Geräte und Anwendungen von beliebiger 
    Position im Raum
- Dynamic Application Coordination: Zahlreiche verwendete Programme sollten 
    - wo angebracht - zusammen arbeiten können
  
Anforderungen
  - Die verschiedenen Anwendungen auf den Geräten sollten wechselseitig 
    über eine Standardschnittstelle aufeinander zugreifen können
- Schnittstelle sollte an unterschiedliche Bildschirme und Ein-/Ausgabearten 
    (z.B. auch Sprache und Stimme) angepasst sein
- Minimum an Administrationsaufwand --> Fehler sollten nicht als Ausnahme, 
    sondern als üblich betrachtet werden. Das System 
    sollte sich entweder automatisch wieder herstellen können oder mit wenigen 
    einfachen Benutzerschritten wieder funktionieren - es ist unrealistisch einen 
    Vollzeit-Systemadministrator voraus zusetzen, der einen Konferenzraum am laufen 
    hält...
Richtlinien
  - Nutzung des iRooms und der Software auch für eigene Projektmeeting
- Ausnützen der Vorteile des gemeinsam genützen physischen Raums 
    zur Orientierung und Interaktion
- iRaum reagiert nicht auf Nutzer, vielmehr stellen sich diese den Raum so 
    ein, wie gewünscht und für die Arbeit erforderlich
- Versuch Interface und Softwareentwicklungsbereich so einfach wie möglich 
    zu halten
Metaziele
  - Möglichkeit des Einsatzes von diverser Hard- und Software. 
    Konzept bzgl. der Portabilität von Anwendungen: Anwendungen sollten zwischen 
    Geräten mit gleichem Nutzungsmodell portierbar sein. Zum Beispiel sind 
    Windows CE-Computer und Palm Pilots gleiche Gerätetypen, weil die Art 
    der Verwendung die gleiche ist.
- Unterstützung von herkömmlicher unmodifizierter Software
- Erleichterung der bisher unbequemen und schwierigen PDA - Programmierung 
    (z.B. wegen der Resourcenbeschränkung)
- Reduzierung der benötigten Programmierfachkentnisse um 
    simple Verhalten zu implementieren, aber ausreichende Flexibilität 
    für fortgeschrittene Programmierer um zum Beispiel 
    komplexe PDA-User Interfaces zu designen. 
 Erreicht wurde das durch die Verwendung von plattformunabhängigen Sprachen 
    und Programmierumgebungen wie Java anstatt C++, außerdem der Verwendung 
    von weitverbreiteten Protokollen und Infrastrukturen wie zum Beispiel einem 
    Webinterface, statt einer speziellen Client-Server-Anwendung.
Metaziele
  - Nutzer des iRooms sollte kein Experte in der Organisation der Software-Infrastruktur 
    sein müssen
- Softwareentwickler sollte für simple Anwendungen nicht die ganze Infrastruktur 
    verstehen müssen
- Software sollte sich so weit wie möglich selbst verwalten und reparieren 
    können
- Vielseitige Anwendbarkeit als Ziel 
Infrastrukturzentriertes Verfahren
  - Annahme, dass der Raum, den der Nutzer betritt schon mit einer drahtlosen 
    Basisstation und zentralisierten Softwarekomponenten für Kommunikation 
    und Datenaustausch ausgestattet ist
  
--> Mindert die Anforderungen an die individuellen Geräte, 
  weil zum Beispiel ein PDA beim Datenaustausch nicht selbstständig andere 
  Geräte erkennen und ein Netzwerk aufbauen können muß.
  
  Gründe für diese Annahme:
  - Fester Spezialraum mit zentraler Verwaltung, wo 
    man Netzwerke, Server, usw. problemlos dauerhaft zur Verfügung stellen 
    kann
- iRoom-Benutzer gehören üblicherweise einer Gemeinschaft an, 
    zum Beispiel zu einer Firma oder einer Universität. Besucher müssen 
    eine minimale Softwareinstallation auf ihrem Gerät durchführen, 
    um auch mehrere Dienstleistungen nutzen zu können.
- Große Anzahl existierender Forschungsarbeiten über 
    die Einbindung von PDAs in infrastrukturzentrierte Räume, auf die man 
    aufbauen kann. (z.B. auch PDA-Browser ProxiWeb)
Dieser infrastrukturzentrierte Ansatz bezieht sich 
  vor allem auf die Software, weniger auf die Hardware!
iROS
  - Meta-OS mit 3 Untersystemen:
  
  - Event Heap (Dynamic Application Coordination)
- Data Heap (Moving Data)
- iCrafter (Moving Control)
1. Event Heap
  - Grundlegende Softwareabstraktion, Kommunikationsmechnismus für alle 
    Anwendungen
- Entkoppelt Anwendungen voneinander --> Stabilisierung des Systems, 
    weil die Anwendungen nur noch indirekt miteinander kommunizieren
- Event: Sammlung von Name-Typ-Wert-Feldern, selbsterklärend und erweiterbar
- Speichert und leitet Events weiter, Events verfallen nach bestimmter Zeit
    und werden entfernt
1. Event Heap
  - Anwendungen können selektiv mittels Pattern Matching auf Events zugreifen
- Anfragen an den Event Heap bzgl. der Abwesenheit von Events stellen
- Sich für eine Benachrichtigung eintragen, wenn 
    ein bestimmtes Event eintrifft 
- Zentrales Repositorium zum Posten von Events
- Ermöglicht Gruppenkommunikation
Kommunikation mit dem Event Heap
  - Direkt über Java oder C-Bibliotheksaufrufe zum TSpace-Server, 
    auf welchem der Event Heap läuft
- Indirekt über Gateway mit Protokollumwandlung:
  - Webinterface für http-Clients
- Waba (Subset von Java) erlaubt über RMILite TSpace-Aufrufe
Verfahren 1: Webinterface
  - usher wandelt http-get und –post-Anfragen in Events gegen den Event 
    Heap um
- Eventfelder und -werte werden in eine "fat URL" einer http-Formularanfrage 
    eingebaut
- usher parst die Formularanfrage und postet das passende Event zum Event 
    Heap
- usher kann über jeden Linkaufruf (Button, Link, http-redirect,usw.) 
    aufgerufen werden
- Rückgabeseite kann in "fat URL" codiert werden
- PDAs benötigen zur Interaktion mit dem Event Heap nur einen Standard 
    Webbrowser (ProxiWeb)
Beispiele
Bsp: Multibrowsing
  - Webseiten mit verlinkten Seiten, die auf beliebigen Bildschirmen des iRooms 
    geöffnet werden können
- Bildschirme müssen "multibrowsed" laufen, 
    das bedeutet, sie müssen einen Hintergrundprozess laufen lassen, welcher 
    sich beim Event Heap für bestimmte Events einträgt und den Browser, 
    der auf dem Bildschirm läuft, die URLs aufrufen läßt, die 
    in den ankommenden Events codiert sind
Bsp: Projektorkontrolle
  - Projektoren werden mittels URLs ein- und ausgeschaltet
Vor- und Nachteile des Webinterfaces
  - - Man kann keine Browserfenster schließen oder Anwendungen beenden, 
    nur Webseiten öffnen und Anwendungen starten
- - Man kann an PDAs keine asynchronen Events schicken (nur 
    periodische mittels einer "fat URL" innerhalb eines http-refresh). 
    Das bedeutet, man kann zum Beispiel keine Anwendung schreiben, die bei einer 
    Statusänderung sofort eine Statusänderung bei allen PDAs im iRoom 
    auslöst) 
- + Simpler Mechanismus bei Erstellung der Webseite und deren Bedienung
- + Keine Kompilierung oder Installation notwendig
- + Webseite mit Links muß nicht in iRoom-Infrastruktur integriert werden, 
    sondern kann auf einem beliebigen Internetserver liegen
2. Data Heap
Erleichtert Datenverschiebung:
  - Anwendungen können Daten in Speicher ablegen, Zugriff mittels Attributen. 
    Das hat den Vorteil, dass Anwendungen sich nicht darum kümmern müssen, 
    welches Dateisystem die Daten speichert.
- Zusätzlich Speicherung von Formatinformationen, 
    damit man Datentransformationen in das geeignetste Format für die Zielanwendung 
    und das Zielgerät durchführen kann: zum Beispiel werden Powerpointfolien 
    automatisch in Jpegs umgewandelt, wenn das Zielgerät nur solche unterstützt.
3. iCrafter
  - Bietet verschiedene Dienste für Anwendungen an 
- User Interface Generator für Dienste, das heißt, 
    der Nutzer sucht sich einen Dienst aus und der User Interface Generator liefert 
    automatisch das geeignetste Interface für das Gerät des Nutzers.
- Kommunikation erfolgt über den Event Heap
- Beispiel: Room Controller 
Allgemeine iROS-Grundsätze
  - Alle Anwendungen kommunizieren indirekt über den Event Heap. 
    Dient dazu, zu sehr voneinander abhängige Anwendungskomponenten zu vermeiden, 
    die sich gegenseitig zum Absturz bringen können.
- Anwendungen werden mit Attributinformationen entkoppelt
- Event und Data Heap erlauben auch zeitliche Entkopplung, 
    das heißt, dass Anwendungen Nachrichten abholen können, die erstellt 
    wurden bevor sie liefen oder während eines Neustarts nach einem Absturz.
- Fehler werden als üblicher Fall betrachtet. 
    Wenn eine Anwendung (auch der Event Heap Server, Data Heap Server, etc.) abstürzt, 
    kann das System sie automatisch neu starten und die Clients verbinden sich 
    nach einem Absturz automatisch neu.
- Intensiver Einsatz von Web-Technologien, weil diese 
    sehr weit verbreitet und ausgereift sind und es viele Anwendungen dazu gibt.
Mensch-Maschine-Interaktion
  - Forschung besteht aus zwei Bereichen:
  - Entwicklung von Techniken zur Interaktion mit Wandbildschirmen
- Design von Möglichkeiten allgemein Zugang und Kontrolle zu Informationen 
    und Schnittstellen im iRoom anzubieten
  - Ziel: Vereinfachung der Interaktion zwischen den Teilnehmern eines Meetings, 
    Nutzer soll sich auf die Arbeit konzentrieren können und nicht auf eine 
    Interaktionstechnik
  
Bsp.: PostBrainstorm - Interface
  - Ziel: Hochauflösender Bildschirm mit Fähigkeiten zum direkten 
    Markieren, Bildkontrolle, 3-D-Rendering und beliebigen Desktopanwendungen
- Flow Menu: kontextabhängiges Popup-Menü. Erlaubt es, mit einem 
    Auswahlstift in einem Zug eine bestimmte Aktion und dazu bestimmte Parameter 
    auszuwählen.
- Zoom Scape: kontrolliert Objektgrößen auf Bildschirm. 
    Man kann damit Objekte in einen bestimmten Bereich des Bildschirms schieben 
    (z.B. in das obere Viertel), wobei sie automatisch skaliert - normalerweise 
    verkleinert - werden.
- Typed Drag-and-Drop: Handschriften-Erkennungssystem. 
    Läuft als Hintergrundprozess und läßt die digitale Tinte auf 
    dem Bildschirm stehen, fügt aber einen Kommentar mit den interpretierten 
    Schriftzeichen hinzu, welchen man dann per Drag-and-Drop auf ein anderes Zielobjekt 
    ziehen kann.
Bsp.: Room Controller
  - Benutzt kleine Karten des Raums um die Lichter, Projektoren und Bildschirme 
    anzuzeigen
- Room Controll System speichert die geometrischen Anordnungen in Konfigurationsdatei
- Raumkontrolle für alle Geräte, welche den UI-Renderer des iCrafter 
    unterstützen
- Primärer Weg um Bildschirme auszuwählen, 
    der Nutzer wählt eine Anwendung aus und danach mit Hilfe des Room Controllers 
    einen Bildschirm, auf dem diese angezeigt werden soll
   
    |  | 
   
    | (a) Java Swing
 | (b) Palm handheld
 | (c) HTML
 
 | 
Bsp.: Eingabegeräte
  - Overhead Scanner: basiert auf Digitalkamera und digitalisiert auf dem Tisch 
    liegende Skizzen u.ä.
- Barcode Scanner: wird ein bestimmter Code eines 
    Nutzers eingescannt, werden draufhin benutzerspezifische Informationen an 
    einem der Bildschirme angezeigt
- Drahtlose Buttons und Slider, welche mit beliebigen 
    Aktionen verbunden werden können, z.B. um mehrere bestimmte Anwendungen 
    auf einem Bildschirm zu starten 
Zukünftige Entwicklungen
  - Man arbeit an der Verbesserung der Sicherheit 
    im iRoom. Zum Beispiel existiert das Problem, dass durch die indirekte Kommunikation 
    über den Event Heap alle Nachrichten öffentlich werden. Zukünftig 
    sollen daher sichere Protokolle u.ä. integriert werden.
- Zusammenarbeit von Teams in entfernten interaktiven Arbeitsräumen
- Verstärkter Einsatz von neuen Technologien 
    wie Bluetooth
Das war's... danke schön!
  
 
   
 
    Diese Seite läßt sich mit OperaShow 
  als Präsentation anzeigen.
  
  Diese Seite läßt sich mit OperaShow 
  als Präsentation anzeigen.