name
 
teaching > capita selecta
Context-Aware Mashups:
towards dynamic service composition in the Internet of Things
subject
New hardware technology is gently beginning to seep into society. With it, new visions of computing can be realized, where users are continually surrounded with mobile and embedded devices provided with processing and communication capacities. Such devices are interconnected conforming what is known as the "Internet of Things" [1]. This vision mainly differs from the existing notion of the Internet in that the environmental context of the users is reified by the surrounding devices and as such it can be used by software applications (e.g. sensor-based information such as the location).

In this proposal, we focus on the repercussion of such context reification for software development. Software services in this setting are said to be "context-aware", i.e. they should be able to get acquaintance of their context of use and adapt their behaviour accordingly [2]. A major concern in the definition of a context-aware service is to determine its interaction with the environment. This means that this service requires the functionality of other services present in its environment (such as sensors). This aggregation of services is currently known as Context-Aware Mashups [4, 5, 6].

In web development, a mashup refers to a service that results of the composition of several other web services [3]. Such services, commonly developed independently of each other, provide simple yet powerful APIs which can be easily merged in order to generate the new service. Following the analogy of the Internet in this topic we argue for the need of Context-Aware Mashups, i.e. services that can be dynamically composed according to the users' context.
objectives of the work

The goal of this work is to describe the state-of-the-art on programming techniques that enable dynamic composition of context-aware services. The resulting document should cover the following points:

  • a description of the notions of the internet of things, context-awareness, context-oriented programming and software composition.
  • a review of mashups: definition, benefits and drawbacks, kinds of mashups, and existing programming language support.
  • a review of existing approaches of context-aware mashups: definition, benefits and drawbacks, related approaches, and programming language support.
  • a list of requirements that a programming technique for mashups should accomplish in order to enable dynamic composition of context-aware services.
contact
Please do not hesitate to contact us for further information.
Jorge Vallejos - jvallejo@vub.ac.be
Pascal Costanza - pascal.costanza@vub.ac.be
references
The following list corresponds to the articles and websites mentioned in this proposal. It is highly recommendable to search for other works that may also be related to this topic.

[1] The Internet of The Internet of Things. ITU technical report 2005.
[2] Context-oriented Programming. Robert Hirschfeld, Pascal Costanza, Oscar Nierstrasz.
[3] Programmable web http://www.programmableweb.com/mashups
[4] Context-Aware Mashups for Mobile Devices. Andreas Brodt, Daniela Nicklas, Sailesh Sathish, and Bernhard Mitschang.
[5] A Web 2.0 Platform to Enable Context-Aware Mobile Mash-ups. Diego Lopez-de-Ipiña, Juan Ignacio Vazquez, and Joseba Abaitua.
[6] A Context-Aware Mobile Mash-up for Ubiquitous Web. Diego Lopez-de-Ipiña, Juan Ignacio Vazquez, and Joseba Abaitua.
 
2010 © Jorge Vallejos