La lecture en ligne est gratuite
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
Télécharger Lire

Ocean. Towards Web-scale context-aware computing [Elektronische Ressource] : A community-centric, wide-area approach for in-situ, context-mediated component discovery and composition / Darren Vaughn Carlson

237 pages
ISNM International School of New Media, an affiliated institute of the University of Lübeck Academic Director: Prof. Dr.-Ing. Andreas Schrader Ocean: Towards Web-scale Context-aware Computing A community-centric, wide-area approach for in-situ, context-mediated component discovery and composition DISSERTATION For fulfillment of requirements for the Doctoral Degree of the University of Lübeck from the Faculty of Technology and Natural Sciences Submitted by Darren Vaughn Carlson, M.Sc. From Coon Rapids, Minnesota, United States of America Lübeck, May 2009 Erstberichterstatter: Prof. Dr.-Ing. Andreas Schrader Zweitberichterstatter: Prof. Dr. rer. nat. Stefan Fischer Vorsitz des Prüfungsausschusses: Prof. Dr.-Ing. Alfred Mertins Tag der mündlichen Prüfung: 15.07.2009 ii Author’s Declaration I hereby declare that the work presented in this dissertation, except as acknowledged in the text and references, is my own original work and that it has not been submitted for academic recognition or credit at this or any other university. Darren Vaughn Carlson Luebeck, May 2009 iii Abstract Interrelated advances in data communication networks, distributed systems and mobile computing are rapidly altering the domain of network-based software.
Voir plus Voir moins









ISNM International School of New Media,
an affiliated institute of the University of Lübeck
Academic Director: Prof. Dr.-Ing. Andreas Schrader

Ocean: Towards Web-scale Context-aware Computing
A community-centric, wide-area approach for in-situ, context-mediated
component discovery and composition

DISSERTATION
For fulfillment of requirements for the Doctoral Degree of the University of Lübeck
from the Faculty of Technology and Natural Sciences

Submitted by
Darren Vaughn Carlson, M.Sc.
From Coon Rapids, Minnesota, United States of America
Lübeck, May 2009















































Erstberichterstatter: Prof. Dr.-Ing. Andreas Schrader
Zweitberichterstatter: Prof. Dr. rer. nat. Stefan Fischer
Vorsitz des Prüfungsausschusses: Prof. Dr.-Ing. Alfred Mertins
Tag der mündlichen Prüfung: 15.07.2009
ii Author’s Declaration
I hereby declare that the work presented in this dissertation, except as acknowledged in the text and
references, is my own original work and that it has not been submitted for academic recognition or
credit at this or any other university.


Darren Vaughn Carlson
Luebeck, May 2009

iii Abstract
Interrelated advances in data communication networks, distributed systems and mobile computing are
rapidly altering the domain of network-based software. Today computing systems are no longer
confined to conventional mainframe, enterprise and desktop scenarios. Rather, the emergence of
powerful mobile devices, embedded systems and wireless computer networks enable software to
operate across a broad range of non-traditional computing environments. Such advances are
recognized as important foundations for creating mobile distributed systems capable of dynamically
integrating environmental capabilities and accommodating changing user requirements. Towards this
end, context-awareness has emerged as an important design approach for mediating the integration of
algorithmic or structural components at runtime. However, while many everyday environments
present unprecedented opportunities for adaptive systems, current context-aware approaches remain
consigned to small-scale deployments and research prototypes; existing primarily within isolated
islands of niche functionality that are far removed from everyday use.
Over the last decade, the explosive rise of the Internet and World Wide Web (Web) has resulted in
a ubiquitous fabric of data communications and distributed computation. Importantly, modern Web
architecture addresses many of the middleware requirements of large-scale networked systems by
accommodating multiple trust domains, unanticipated load and independent component deployment.
Moreover, the Web‘s low entry-barrier and non-proprietary standards have made its communication
protocols, functional apparatus and device support ubiquitous. Further, the Web‘s underlying
architectural model proven remarkably capable of accommodating a variety of problem domains,
including sophisticated cross-domain component interoperation. However, despite the emergence of a
vast ocean of contextually-relevant Web content and services, conventional Web architecture has
proven difficult to exploit by existing context-aware systems.
This dissertation presents a hybrid computing approach, called Ocean, which aims to capture the
entrepreneurial spirit of modern Web architecture as a means of supporting large-scale context-aware
systems. Unlike existing approaches, Ocean addresses the key challenges facing real-world networked
software by emphasizing user participation and community-based computation. Ocean defines a
conceptual model for augmenting existing Web-based software components (Resources) with
expressive contextual metadata as a means of facilitating in-situ discovery and integration. Further,
Ocean defines a complimentary software architecture that provides simple, widely accessible and
scalable mechanisms for distributed applications to discover and compose contextually-relevant
Resources at runtime. Towards these ends, Ocean extends emerging community-centric computing
techniques such as collaborative annotation, open plug-in contribution, volunteer-based computing
and recommender systems. By leveraging community participation, Ocean aims to support the
emergence of a new class of hybrid Web applications capable of dynamic context-aware adaptation.

iv Zusammenfassung
Die Fortschritte in Datennetzen, verteilten Systemen und Mobilkommunikation führen zu rasanten
Veränderungen im Bereich Netzwerk-basierter Software. Heutige Rechenanlagen sind nicht länger
auf traditionelle Großrechner-, Server- oder Desktop-Systeme beschränkt. Durch die Entwicklung von
leistungsstarken Mobilgeräten, eingebetteten Systemen und drahtlosen Datennetzen kann Software
auf einer großen Bandbreite von nicht-konventionellen Rechnersystemen eingesetzt werden. Diese
Fortschritte sind die Grundlage für die Entwicklung von mobilen verteilten Systemen mit der
Möglichkeit der dynamischen Integration von Umgebungsressourcen und der Anpassung an sich
stetig ändernde Nutzeranforderungen. In diesem Zusammenhang hat sich Kontextsensitivität als ein
wichtiges Gestaltungskonzept für die Vermittlung der Integration algorithmischer oder struktureller
Komponenten zur Laufzeit entwickelt. Während jedoch viele alltägliche Umgebungen beispiellose
Möglichkeiten für adaptive Systeme bieten, bestehen heutige kontextsensitive Ansätze aus relativ
kleinen Installationen und Forschungsprototypen, die zumeist auf Insellösungen in
Nischenanwendungen fern der täglichen Nutzung beschränkt sind.
Innerhalb des letzten Jahrzehnts hat die explosionsartige Entwicklung des Internets und des World
Wide Web zu einer allgegenwärtigen Struktur von Datenkommunikation und verteilter
Rechenleistung geführt. Die moderne Web-Architektur adressiert bereits viele der Anforderungen an
hoch skalierte vernetzte Systeme durch die Anpassung an eine Vielzahl von gesicherten Bereichen,
nicht vorhersagbarem Lastverhalten und der Verwendung unabhängiger Komponenten. Darüber
hinaus haben der einfache Web-Zugang und die Verwendung nicht-proprietärer Standards zu einer
universellen Verbreitung der Kommunikationsprotokolle, Funktionsbausteine und Geräte-
Unterstützung geführt. Zudem hat sich das zugrundeliegende Architekturmodell des Webs als
bemerkenswert geeignet für die Anpassung an eine Reihe von Herausforderungen erwiesen;
insbesondere für die domänenübergreifenden Interaktion zwischen Komponenten. Trotz der
Entstehung einer immensen Vielzahl kontextuell relevanter Inhalte und Dienste, hat sich allerdings
herausgestellt, dass die konventionelle Webarchitektur nicht systematisch von existierenden
kontextsensitiven Systemen nutzbar ist.
In dieser Dissertation wird das Ocean Framework als ein hybrider Ansatz vorgestellt. Ziel ist die
Nutzung des Unternehmergeists im modernen Web zur Unterstützung von hoch skalierten
kontextsensitiven Systemen. Im Gegensatz zu existierenden Ansätzen, adressiert Ocean die zentralen
Herausforderungen von vernetzter Software in realen Umgebungen durch die betonte Einbeziehung
der Nutzer und gemeinschaftlich bereitgestellter Ressourcen. Das Ocean Framework definiert ein
konzeptionelles Modell für die Anreicherung existierender Web-basierter Softwarekomponenten mit
ausdrucksstarken kontextuellen Metadaten zur Ermittlung und Integration von Ressourcen im
jeweiligen Kontext. Zudem definiert Ocean eine ergänzende Softwarearchitektur, die einfache,
weithin erreichbare und skalierende Mechanismen für verteilte Anwendungen bereitstellt, um
während der Laufzeit kontextuell relevante Ressourcen zu entdecken oder zu erzeugen. Zu diesem
Zweck erweitert Ocean aufkommende Techniken zur Unterstützung von Nutzergemeinschaften, wie
gemeinschaftliche Kommentierungen, offene Schnittstellen für die Integration von
Zusatzprogrammen, freiwillig bereitgestellte Rechenressourcen und Empfehlungssysteme. Durch die
vorteilhafte Nutzung der Partizipation von Nutzergemeinschaften zielt Ocean auf die Unterstützung
der Entwicklung einer neuen Klasse von hybriden Web-Anwendungen, die sich durch die Fähigkeit
der dynamischen kontextsensitiven Adaption auszeichnet.
v Acknowledgements
This dissertation could not have been possible without the generous support of several people. First, I
would like to thank my primary advisor, Prof. Dr.-Ing. Andreas Schrader, for his encouragement,
tireless support and his uncanny ability to ask the difficult questions that improved this research
immeasurably. Next, I would like to thank my secondary advisor, Prof. Dr. rer. nat. Stefan Fischer, for
his gracious assistance during my candidature. I am also grateful to Hans-Christian Fricke for
assisting with the German translation of the abstract. Finally, I would like to thank my wonderful
family for supporting me along the way.

vi









In memory of my grandmother,
Marie Maude Montgomery.


vii Table of Contents
CHAPTER 1 INTRODUCTION ......................................................................................................... 1
1.1 Motivation ....................................................... 1
1.2 Towards Ubiquity ........... 5
1.3 Thesis Statement ............................................................................................................................................. 7
1.4 Research Issues ............... 7
1.5 Dissertation Structure .................................................................................................................................. 11
CHAPTER 2 ON CONTEXT-AWARE COMPUTING . 15
2.1 Introduction .................................................................................................................................................. 15
2.2 Background ................... 15
2.2.1 Key Aspects of Distributed Computing ................................................................................................... 18
2.2.2 Service Oriented Computing and SOAP Web Services .......... 23
2.2.3 The Influence of Mobility ....................................................................................................................... 25
2.3 Related Work in Context-aware Computing ............................. 29
2.3.1 Defining Context and Context-awareness ............................................................................................... 30
2.3.2 Context Acquisition ................................................................. 34
2.3.3 Context Modeling and Representation .... 36
2.3.4 Context Management and Provisioning .................................................................. 41
2.3.5 Context-aware Component Interoperation .............................. 44
2.4 Chapter Summary ........................................................................................................................................ 49
CHAPTER 3 FOUNDATIONS OF THE OCEAN APPROACH ................................................... 51
3.1 Introduction .................................................................................................................. 51
3.2 Large-scale Context-aware Systems: Challenges and Foundations ......................... 52
3.2.1 Challenge: Ubiquitous Context Infrastructure ......................................................... 52
3.2.2 Foundation: Aladin-based Context Acquisition and Modeling ............................... 54
3.2.3 Challenge: Widespread Network Accessibility ....................................................... 55
3.2.4 Foundation: Public Internet Infrastructure................................ 56
3.2.5 Challenge: Ubiquitous Middleware ......................................................................... 57
3.2.6 Foundation: Conventional Web Architecture .......................................................... 59
3.2.7 Challenge: Cross-domain Component Interoperation ............. 62
3.2.8 Foundation: RESTful Component Interoperation ................................................... 62
3.3 Approach Scope ............................................................................................................ 66
3.4 Non-Functional Requirements..................... 67
3.4.1 Design Principles ..................................... 67
3.4.2 Approach Constraints .............................................................................................................................. 67
3.5 Approach Derivation .... 68


viii 3.6 Principle Ocean Stakeholders ...................................................................................................................... 72
3.6.1 Ocean Core Developers ........................... 73
3.6.2 Context Domain Experts ......................... 73
3.6.3 Resource Contextualizers ........................................................................................................................ 74
3.6.4 Ocean Application Developers ................ 74
3.6.5 Ocean Application End-users .................. 75
3.7 The Ocean Reference Implementation........................................................................................................ 75
3.8 Chapter Summary ........................................ 76
CHAPTER 4 THE CONTEXTUALIZED RESOURCE ................................................................. 77
4.1 Introduction .................................................................................. 77
4.2 Background and Related Work ................................................................................... 77
4.3 The Contextualized Resource Abstraction ................................. 84
4.3.1 Extending the Web‘s Resource Model .................................................................... 85
4.3.2 The Context Metadata Abstraction .......................................... 87
4.3.3 Modeling Similarity ................................ 90
4.3.4 Validating the Context Metadata Interface .............................................................................................. 94
4.3.5 The Contextualized Resource XML Schema and Ocean RI Validation .................. 96
4.4 A Contextualized Resource Example .......................................................................................................... 98
4.4.1 The GEOPointHandler ............................................................ 98
4.4.2 The ISO8601DateTimeHandler ............. 100
4.4.3 Bringing it All Together ........................................................................................ 103
4.5 Chapter Summary ...................................................................................................................................... 105
CHAPTER 5 TOWARDS WEB-SCALE CONTEXT-AWARE COMPUTING ........................ 106
5.1 Introduction ................................................................................................................................................ 106
5.2 The Ocean Application Model ................... 106
5.2.1 Introduction to the Client-side Mashup Style ........................ 107
5.2.2 Contextualizing the Client-side Mashup Style ...................................................................................... 111
5.3 The Contextualized Resource Registry ..................................................................................................... 114
5.3.1 Architecture Overview .......................................................... 114
5.3.2 The Resource Management API ............ 116
5.3.3 Contextualized Resource Instantiation .................................................................................................. 118
5.4 Community-based Context Handler Contribution .................................................................................. 120
5.4.1 Overview of the Java Community Process ............................ 120
5.4.2 Towards Community-based Context Handler Contribution .................................................................. 121
5.5 Community-based Contextualized Resource Contribution .... 124
5.5.1 Overview of Collaborative Annotation ................................. 124
5.5.2 Towards Collaborative Contextualized Resource Contribution ............................................................ 126
5.6 Chapter Summary ...................................................................... 127
ix CHAPTER 6 CONTEXTUALIZED RESOURCE PERSISTENCE AND DISCOVERY ......... 128
6.1 Introduction ................................................................................................................................................ 128
6.2 Background and Related Work ................. 128
6.3 Contextualized Resource Persistence ........................................................................................................ 132
6.3.1 The Index Manager Abstraction ............ 132
6.3.2 The Ocean Persistence Architecture ...... 133
6.3.3 An Indexing and Persistence Example .................................................................................................. 135
6.4 Contextualized Resource Discovery .......... 136
6.4.1 The Contextualized Resource Discovery API ....................................................................................... 137
6.4.2 Query Object Instantiation .................................................... 142
6.4.3 Multi-Feature Search Optimization ....................................................................... 144
6.4.4 The Ocean Multi-Feature Similarity Search Approach ......... 145
6.5 Chapter Summary ...................................................................... 148
CHAPTER 7 LEVERAGING THE OCEAN COMMUNITY ...................................................... 149
7.1 Introduction ................................................................................................................ 149
7.2 Context-aware Query Expansion .............................................. 149
7.2.1 Background and Related Work ............. 150
7.2.2 The Emergence of Community-centric Context Modeling ................................................................... 152
7.2.3 Towards Volunteer-based Context Modeling in Ocean ........ 155
7.2.4 Context Association Discovery and Modeling ...................................................................................... 157
7.2.5 Context-aware Query Expansion ........................................................................................................... 162
7.3 Discovery Personalization .......................................................... 165
7.3.1 Background and Related Work ............. 165
7.3.2 The Ocean Recommendation Engine .................................................................................................... 170
7.3.3 Approach Validation Using the Weighted Slope One Algorithm ......................... 173
7.4 Chapter Summary ...................................... 179
CHAPTER 8 EXAMPLE SCENARIO ........................................................................................... 180
8.1 Introduction ................................................................................ 180
8.2 Experimental Setup .... 180
8.3 Scenario Overview ...................................................................................................................................... 184
8.4 Data Acquisition ......... 185
8.5 Validating the Basic LinkFlow Scenario... 188
8.6 Importing Crawled CR Data and Acquired Context-Sources ................................................................ 191
8.7 Validating Community-enhanced LinkView Query Processing ............................. 194
8.8 Chapter Summary ...................................................................... 197
CHAPTER 9 CONCLUSION .......................................................................................................... 199
9.1 Summary of Contributions ........................ 199
9.2 Directions for Future Research ................. 202
x

Un pour Un
Permettre à tous d'accéder à la lecture
Pour chaque accès à la bibliothèque, YouScribe donne un accès à une personne dans le besoin