264 Pages
English

Synchronous collaboration in ubiquitous computing environments [Elektronische Ressource] : conceptual model and software infrastructure for roomware components / von Peter Tandler geb. Seitz

-

Gain access to the library to view online
Learn more

Description

Synchronous Collaboration in Ubiquitous Computing Environments Conceptual Model and Software Infrastructure for Roomware Components Vom Fachbereich Informatik der Technischen Universität Darmstadt zur Erlangung des akademischen Grades eines Doktor-Ingenieurs (Dr.-Ing.) genehmigte Dissertation von Diplom-Informatiker Peter Tandler geb. Seitz aus Herdecke Referent: Prof. Dr. Erich J. Neuhold Koreferent: Prof. Dr. Brad A. Myers Tag der Einreichung: 01. März 2004 Tag der mündlichen Prüfung: 30. April 2004 Darmstadt 2004 D17 Darmstädter Dissertation Version 1.3.4, Final. © 2004 Peter Tandler This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/2.0/de/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. Abstract Ubiquitous computing environments offer a wide range of devices in many different shapes and sizes, creating new possibilities for interaction. In the context of meetings and teamwork situations, it is desirable to take advantage of their different properties for synchronous col-laboration. Besides providing an adapted user interface, this requires the software to be de-signed for synchronous access to shared information using heterogeneous devices with different interaction characteristics. The handling of these requirements poses challenges for software developers.

Subjects

Informations

Published by
Published 01 January 2004
Reads 63
Language English
Document size 4 MB

Synchronous Collaboration in
Ubiquitous Computing Environments
Conceptual Model and Software Infrastructure
for Roomware Components
Vom Fachbereich Informatik
der Technischen Universität Darmstadt
zur Erlangung des akademischen Grades eines
Doktor-Ingenieurs (Dr.-Ing.)
genehmigte
Dissertation
von
Diplom-Informatiker
Peter Tandler
geb. Seitz
aus Herdecke
Referent: Prof. Dr. Erich J. Neuhold
Koreferent: Prof. Dr. Brad A. Myers
Tag der Einreichung: 01. März 2004
Tag der mündlichen Prüfung: 30. April 2004
Darmstadt 2004
D17
Darmstädter Dissertation
Version 1.3.4, Final.
© 2004 Peter Tandler
This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs License. To view a copy
of this license, visit http://creativecommons.org/licenses/by-nc-nd/2.0/de/ or send a letter to Creative Commons,
559 Nathan Abbott Way, Stanford, California 94305, USA.
Abstract
Ubiquitous computing environments offer a wide range of devices in many different shapes
and sizes, creating new possibilities for interaction. In the context of meetings and teamwork
situations, it is desirable to take advantage of their different properties for synchronous col-
laboration. Besides providing an adapted user interface, this requires the software to be de-
signed for synchronous access to shared information using heterogeneous devices with different
interaction characteristics. The handling of these requirements poses challenges for software
developers. As this field is still emerging and no mature models, tools, and standards are at
hand, developers have to create their own solutions from scratch.
The goal of this thesis is to provide guidance and support for developers of synchronous group-
ware applications for ubiquitous computing environments. They have to be enabled to develop
applications more efficiently and with the flexibility and extensibility that is required for ubiq-
uitous computing. The development effort can be reduced effectively if support for developers
is provided at several levels. Developers need assistance when creating models of the applica-
tions to be developed, when choosing an appropriate architecture, when creating the design,
and finally when implementing. This implies that an architecture-driven, model-based devel-
opment approach should be followed.
While the implementation of a single synchronous UbiComp application still requires re-
search, the development of appropriate development support is even more challenging. Com-
mon properties of ubiquitous computing applications have to be identified. Future develop-
ments and extensions have to be predicted. Requirements of different research areas have to
be fulfilled. Addressing these aspects, the goal of this dissertation is accomplished by providing
extensions to the state of the art at four levels:
(1) A conceptual model of synchronous UbiComp applications defines a high-level structure for
applications that ensures reusability and extensibility of developed software components.
It identifies separation of concerns, degree of coupling and sharing, and level of abstrac-
tion as the three main design dimensions of these applications. The conceptual model
provides two key contributions to the state of the art. First, it proposes the strict separation
of user interface and interaction concerns orthogonal to the level of abstraction that is not
found in current HCI models. This is a crucial extension of HCI models that is required in
the context of ubiquitous computing. Second, it introduces a new view on the concept of
sharing. By applying the CSCW concept of sharing in the context of ubiquitous comput-
ing, sharing user interface, interaction, and environment state becomes relevant. Thereby,
iii Abstract
the concept of sharing as known from CSCW can be extended to function as a guiding
principle for UbiComp application design. This novel design approach helps ensuring the
extensibility and flexibility that is required in ubiquitous computing.
(2) A flexible software architecture identifies essential abstractions that support the develop-
ment of synchronous applications in “roomware” environments. Roomware refers to the
integration of room elements with information technology, such as interactive tables,
walls, or chairs. Roomware environments represent one form of ubiquitous computing en-
vironment. They are used in this thesis as an application context for the conceptual
model. The software architecture refines the conceptual model to meet the needs of
roomware environments.
(3) An object-oriented application framework that has been designed and implemented pro-
vides a reusable design and reusable software components. Furthermore, extensibility is
supported by explicit mechanisms that are provided to allow adaptability for variable as-
pects of applications. Thus, the application framework helps developers with the design
and implementation.
(4) To show how model, architecture, and framework can be applied, the design of sample
roomware applications is explained. To demonstrate the extensibility, several new forms of
interaction that are required for roomware environments are implemented. The developed
applications and interaction forms are used in i-LAND, the roomware environment at
Fraunhofer IPSI. Besides being a contribution on their own, the developed applications
and new forms of interaction provide evidence that the conceptual model effectively sup-
ports developers in meeting the requirements of roomware environments. They show that
the model helps reduce the implementation effort when accompanied by appropriate soft-
ware development tools such as the application framework.
The conceptual model, software architecture, and application framework presented in this thesis
relieve software developers from the burden of handling all details of multiple interaction
forms, and of many critical issues when dealing with synchronous collaboration. By these
means, the developer can concentrate on the task at hand designing software at an appropri-
ately high abstraction level, and thus create applications with a higher quality that are flexibly
extensible.
iv
Kurzfassung
Die stetig zunehmende Allgegenwart von Computern ermöglicht neue Formen der Interakti-
on und Zusammenarbeit. In der Umgebung steht eine Vielzahl von Geräten zur Verfügung,
die verschiedene Formen, Größen und Interaktionsmöglichkeiten aufweisen. Vor allem für
Meetings und Teamwork ist es wünschenswert, dass die verschiedenen Eigenschaften aller
verfügbaren Geräte effektiv ausgenutzt werden können, um synchrone Zusammenarbeit zu
ermöglichen. Beispielsweise muss eine Benutzungsschnittstelle bereitgestellt werden, die an
die verschiedenen Geräte angepasst ist. Genauso wichtig ist es aber, dass die Software so ent-
worfen wird, dass synchroner Zugriff auf gemeinsame Informationen möglich wird, obwohl un-
terschiedliche Geräte mit differierenden Interaktionsmöglichkeiten verwendet werden. Die resultie-
renden Anforderungen zu erfüllen, stellt eine Herausforderung für Softwareentwickler dar.
Das Forschungsgebiet „Ubiquitous Computing“ (UbiComp) befasst sich mit den Anforderun-
gen, die durch die Allgegenwart von Computern entstehen. Da dieses Forschungsfeld noch in
der Entwicklung begriffen ist und daher weder bewährte Modelle und Werkzeuge noch Stan-
dards zur Verfügung stehen, müssen Softwareentwickler eigene Lösungen von Grund auf neu
entwickeln.
Ziel dieser Arbeit ist es daher, Softwareentwickler von synchronen Groupware Anwendungen in
UbiComp-Umgebungen Hilfestellung und Unterstützung zu bieten. Es soll ermöglicht werden,
diese Anwendungen effizient und mit der für das „Ubiquitous Computing“ nötigen Flexibilität
und Erweiterbarkeit zu entwickeln. Der gesamte Entwicklungsaufwand kann effektiv reduziert
werden, indem Entwicklern Unterstützung auf mehreren Ebenen geboten wird: Entwickler
benötigen Hilfe bei der Erstellung von Anwendungsmodellen, bei der Wahl einer passenden
Architektur, bei der Erstellung des Designs und schließlich bei der Implementierung. Diese
Herangehensweise legt einen architektur-zentrierten und modell-basierten Entwicklungspro-
zess zugrunde.
Heute erfordert die Entwicklung einer einzigen synchronen UbiComp-Anwendung noch For-
schung; geeignete Unterstützung für deren Entwickler bereitzustellen ist daher eine noch grö-
ßere Herausforderung. Hierzu müssen gemeinsame Eigenschaften von UbiComp-
Anwendungen identifiziert, zukünftige Entwicklungen und Erweiterungen vorhergesehen und
Anforderungen aus verschiedenen Forschungsgebieten beachtet und erfüllt werden. Das Ziel
dieser Dissertation wird – unter Berücksichtigung der genannten Aspekte – erreicht, indem
auf vier Ebenen ein neuer Beitrag zu dem bisherigen Stand der Technik geleistet wird:
v Kurzfassung
(1) Ein konzeptionelles Modell von synchronen UbiComp-Anwendungen beschreibt die grobe
Struktur dieser Anwendungen, um Wiederverwendbarkeit und Erweiterbarkeit von ent-
wickelten Software Komponenten sicherzustellen. Es identifiziert Aufgabenbereich, Kopp-
lungsgrad und Abstraktionsebene als die drei wesentlichen Entwurfsdimensionen.
(2) Eine flexible Software-Architektur identifiziert die essentiellen Abstraktionen, mithilfe de-
rer synchrone Anwendungen für „Roomware“-Umgebungen entworfen werden können.
„Roomware“ bezeichnet die Integration von Raumelementen mit Informationstechnik,
wie zum Beispiel interaktive Tische, Wände oder Stühle. Roomware-Umgebungen sind
dabei ein konkretes Beispiel für UbiComp-Umgebungen. Sie werden in dieser Arbeit als
Anwendungskontext für das konzeptuelle Modell verwendet; die entwickelte Software-
Architektur verfeinert das konzeptuelle Modell in Bezug auf die Bedürfnisse von Roomwa-
re-Umgebungen.
(3) Ein objekt-orientiertes Anwendungsframework wurde entwickelt, das zum einen ein wie-
derverwendbares Design und wiederverwendbare Software-Komponenten bereitstellt.
Zum anderen wird die Erweiterbarkeit durch explizite Mechanismen ermöglicht, welche
die Adaptierbarkeit bezüglich der variablen Aspekte der Anwendungen sicherstellen.
Hierdurch hilft das Anwendungsframework Entwicklern bei Design und Implementierung.
(4) Um zu zeigen, wie das konzeptuelle Modell, die Architektur und das Framework ange-
wandt werden können, wird das Design von Bespielanwendungen für Roomware erläutert.
Um die Erweiterbarkeit zu demonstrieren, wurden mehrere neue Interaktionsformen ent-
wickelt, die in Roomware-Umgebungen benötigt werden. Die entwickelten Anwendungen
und Interaktionsformen werden in i-LAND, der Roomware-Umgebung am Fraunhofer IPSI,
eingesetzt.
Das konzeptuelle Modell, die Software-Architektur und das Anwendungsframework, die in
dieser Arbeit entwickelt wurden, befreien Softwareentwickler davon, sich um die Details ver-
schiedener Interaktionsformen und um viele kritische Aspekte synchroner Kooperation küm-
mern zu müssen. Dies ermöglicht Entwicklern, sich auf ihre Kernaufgabe zu konzentrieren,
indem sie Software auf einer angemessenen Abstraktionsebene entwerfen und somit flexibel
erweiterbare Anwendungen höherer Qualität erstellen können.
vi

»Siehst du, Momo«, sagte er dann zum Beispiel, »es ist so: Manchmal hat man eine sehr lange
Straße vor sich. Man denkt, die ist so schrecklich lang; das kann man niemals schaffen, denkt
man.«
Er blickte eine Weile schweigend vor sich hin, dann fuhr er fort: »Und dann fängt man an,
sich zu eilen. Und man eilt sich immer mehr. Jedes Mal, wenn man aufblickt, sieht man, dass
es gar nicht weniger wird, was noch vor einem liegt. Und man strengt sich noch mehr an, man
kriegt es mit der Angst, und zum Schluss ist man ganz außer Puste und kann nicht mehr. Und
die Straße liegt immer noch vor einem. So darf man es nicht machen.«
Er dachte eine Zeit nach. Dann sprach er weiter: »Man darf nie an die ganze Straße auf ein-
mal denken, verstehst du? Man muss nur an den nächsten Schritt denken, an den nächsten
Atemzug, an den nächsten Besenstrich. Und immer wieder nur an den nächsten.«
Wieder hielt er inne und überlegte, ehe er hinzufügte: »Dann macht es Freude; das ist wichtig,
dann macht man seine Sache gut. Und so soll es sein.«
Beppo Straßenkehrer in Momo (Ende, 1973)
vii
Contents
Abstract ................................................................................................................................... iii
Kurzfassung ............................................................................................................................... v
Contents........... ix
1. Introduction....................................................................................................................... 1
1.1. Challenges for Software Development...................................................................... 2
1.2. Context of the Dissertation: i-LAND and Roomware.................................................. 5
1.3. Goal of the Dissertation............................................................................................. 5
1.4. Contributions of the Dissertation.............................................................................. 6
1.5. Outline of the Dissertation...................................................................................... 10
Part I. The BEACH Conceptual Model: Guidance for Ubiquitous Computing Developers..... 13
2. Requirements of Ubiquitous Computing Applications................................................... 15
2.1. The i-LAND Roomware Project ................................................................................. 15
2.2. Application Scenarios of Synchronous Collaboration within
Roomware Environments ........................................................................................ 18
2.3. HCI: User Interface and Interaction....................................................................... 20
2.4. UbiComp: Ubiquitous Computing Environments .................................................. 23
2.5. CSCW: Synchronous Collaboration 27
2.6. SW: Software Engineering Requirements............................................................... 30
2.7. Summary of Requirements ...................................................................................... 31
3. Related Work................................................................................................................... 33
3.1. Object-Oriented Frameworks and Architectures ................................................... 34
3.2. Software Models for Human-Computer Interaction .............................................. 37
3.3. Software MoUbiquitous Computing........................................................... 44
3.4. Software Models for Computer-Supported Cooperative Work.............................. 48
3.5. Conclusions: What to Use, What is out of Focus & What is missing.................... 55
4. A Conceptual Model for UbiComp Applications 59
4.1. Design Dimensions .................................................................................................. 60
ix Contents
4.2. The BEACH Conceptual Model ................................................................................. 61
4.3. First Dimension: Separating Basic Concerns .......................................................... 62
4.4. Second Dimension: Coupling and Sharing ............................................................. 68
4.5. Third Dimension: Conceptual Levels of Abstraction............................................. 75
4.6. Comparison with Related Work.............................................................................. 77
4.7. Discussion of the Conceptual Model ...................................................................... 83
Part II. The BEACH Software Architecture and Framework: Support for Implementing
Roomware Applications............................................................................................... 85
5. Software Architecture for Roomware Applications........................................................ 87
5.1. Architecture Overview............................................................................................ 88
5.2. Model Layer: Domain-Independent Abstractions for Roomware Components .... 89
5.3. Generic Layer: Informal Collaboration Support for Roomware Environments ..... 90
5.4. Task Layer: A Platform for Roomware Applications and Extensions.................... 92
5.5. Core Layer: Specialized Infrastructure for Roomware Components ...................... 93
5.6. Discussion of the BEACH architecture....................................................................... 97
6. Software Infrastructure for Roomware Environments.................................................. 101
6.1. Design of the Core Layer ....................................................................................... 101
6.2. the Core Interaction Model Support .................................................... 109
6.3. Design of the Model Layer .................................................................................... 112
6.4. the Data Model ..................................................................................... 113
6.5. Design of the Application Model .......................................................................... 115
6.6. the Environment Model........................................................................ 116
6.7. Design of the User Interface Model ...................................................................... 117
6.8. the Interaction Model ........................................................................... 119
6.9. Discussion: Properties of the BEACH Model Framework ........................................ 126
7. Generic Support for Collaboration in Roomware Environments ................................. 129
7.1. Generic Environment Model: Roomware Components ....................................... 130
7.2. Data and Application Model: Document Elements ............................... 131
7.3. Generic User Interface Model: Roomware User Interface ................................... 135
7.4. Interaction Model: Visual Output for Roomware Components............. 139
7.5. Generic Interaction Model: User Input to Roomware Components.................... 143
7.6. Example Device Configurations............................................................................ 148
7.7. Discussion: Properties of the BEACH Generic Collaboration Framework .............. 151
Part III. Applications for Roomware Environments: Validating the Usability of the BEACH
Model and Framework ............................................................................................... 153
8. Extending BEACH for New Forms of Interaction ............................................................ 155
8.1. Passage Mechanism: Interaction with Physical Objects ....................................... 156
8.2. ConnecTables: Dynamic Reconfiguration 163
8.3. Integrating Audio Feedback: Non-Speech Augmentation................................... 170
8.4. Discussion: Experiences Extending the BEACH Framework 175
9. Tools for Collaborative Roomware Environments........................................................ 179
9.1. MagNets: Extending Document Model and Interaction Behavior ...................... 180
9.2. PalmBeach: Implementing Models on a Different Platform................................. 184
x