name
 
teaching > 3rd bachelor projects
Towards a framework for context-aware interactions:
adding "Siftables" properties to iPhone applications

introduction
Take a look at the interaction platform called Siftables presented in the following video.
Siftables aim to enable people to interact with information and media in physical, natural ways that approach interactions with physical objects in our everyday lives [1]. In terms of hardware, siftables are small devices equipped with sensing, wireless communication and processing capabilities. In terms of software, siftables are capable to recognize a number of physical interaction patterns that enable their manipulation as a group.

In this work we are interested to explore how such physical interaction patterns can be integrated to everyday software applications. As example, consider the interactions for a photo editor proposed in the video, or a chat application that enables a user to physically "throw" messages to other people in his surroundings. We believe that by implementing some of these applications the student will get important insights that can be later used for the development of a framework for context-aware interactions (by context we mean users and other applications or devices).

For the experiments, we will use a network of iPhones/iPods touch. The built-in sensors and the processing and communication capacities of the iPhones, and the bunch of existing iPhone applications makes them the most appropriate devices.
project proposal
In our research at PROG-VUB, we focus on programming language support for dynamic software variability in the field of Pervasive Computing. Dynamic or runtime variability in this domain is related to context-awareness, i.e. the capacity of a software service to interact with its context of use and adapt its behaviour accordingly. This implies to deal with a number of particular constrains for software adaptability, concurrency and distribution. Thus, to keep this work concrete we have grouped these concerns in a number of steps. The realisation of each of these steps implies a complete software development cycle.

1. context acquisition
In this task we plan to use the discovery and connection-awareness protocols of OSs (e.g., in Mac OS x thery are mainly embodied by the Bonjour protocol). More specifically we want the application to be able to detect and react upon discovery and connection events.

2. discovery and connectivity
The goal of this task is to use the information obtained in the sensors of the iPhones (light, movement, localisation, etc.).

3. extending applications with context-aware interactions
In this task we plan to introduce context-aware interactions to the selected applications.
workplan
The tasks contained in this projects are the following:

- Literature study: state of the art of context-aware interactions with main focus on siftables.
- 1st software development cycle: context acquisition.
- 2nd software development cycle: discovery and connectivity.
- 3rd software develpoment cycle: context-aware interactions in applications.
requirements
- To learn about siftables.
- To get experience on the iPhone SDK.
- To learn Objective C.
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
 
2010 © Jorge Vallejos