User Tools

Site Tools


research:context

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
research:context [2006/06/30 13:33]
jorge created
research:context [2009/11/30 16:55] (current)
dharnie *prog->soft
Line 1: Line 1:
-===== Role-Based Ambient Communications =====+===== Context-Dependent Behaviour Adaptations ===== 
 +[[http://soft.vub.ac.be/~jvallejo/|Jorge Vallejos]]
  
-{{ ambientrefs.jpg }}+==== Motivation ====
  
-Ambient references are a novel remote object reference mechanism. Remote object references are "pointers across the network" and are a frequently recurring abstraction in both distributed OO languages and distributed middleware. Ambient references are designed to refer to objects in [[research:terms:monets|mobile networks]]What exactly constitutes a mobile network and how it differs from traditional, stationary networks is described [[research:terms:monets|elsewhere]].+Within the domain of pervasive computing, context-awareness has commonly been defined as the ability of an application to adapt itself to its dynamic environmentThe context of an application is defined as any information or service in the application's surroundings that may influence its current state or behaviour. In this research, we focus on the influence of such context on the communications between the entities of a software system.
  
-== Motivation ==+Our observation is that in an interaction between two entities, the behaviour of the message receiver may not only depend on its own context, but also on the context of the sender. We have illustrated this idea in a high level **[[research:context-aware_cell_phone|context-aware cell phone scenario]]**.
  
-One may wonder why new referencing abstractions are required for mobile networks. In order to motivate the need for new referencing abstractions at the language level, we list number of desirable properties of remote references for mobile networks which current remote referencing abstractions do not offer:+We claim that in order to deal with context-dependent communications in mobile networks, we need model that satisfies the following conditions:
  
-  **Provisional References**: remote references should be able to point to remote objects which are "not yet available" in the network. This is founded on the observation that in [[research:terms:monets|mobile networks]], ambient resources need to be discovered in the environment and will most likely be unavailable most of the time. +  * **Dynamic Context Adaptation**: Context information may influence the behaviour of a deviceApplications should adapt to their context by dynamically switching of behaviour.
-  - **Resilience to Partial Failure**: remote references for mobile networks should be able to tolerate network disconnections because of the volatile connnections hardware phenomenon of mobile networks. +
-  - **Transitory Addressing**: remote references in mobile networks should bind to (point to) objects based on what services that object provides, rather than based on a low-level UID, object-id, IP address or MAC address. Such low-level IDs preclude the reference from reconfiguring itself by rebinding to a different object providing the same or equally matching services. +
-  - **Group Communication**: in mobile networks, one often wants to communicate with an entire group of objects. To this end, remote references should be introduced that automatically represent a set of (proximate) objects. Messages sent to such references are automatically multicast or broadcast to all objects in the set.+
  
-== Design ==+  * **Dynamic Behaviour Composition**: The resulting behaviour is typically a composition of possible different behaviours. Applications should be based on composable parts representing partial context-dependent adaptations.
  
-Ambient references unify two conceptsthey are both a peer-to-peer discovery channel //and// an asynchronous communication channel to a remote object.+  * **Context Passing Mechanism**It is not only the context of one device that determines its behavior, but also the context of other devices potentially play an important role. In the case of context-dependent communications, the context information of the message sender should also be taken into account to decide the behaviour adaptation of the receiver. We require therefore a way to get acknowledgment of the sender’s context information.
  
-== Example Usage ==+==== Design ====
  
-== Implementation ==+At our [[http://soft.vub.ac.be|lab]], we are currently exploring different language constructs for the development of context-aware applications. Here we present one of thes constructs called Split Objects (Bardou et al, ECOOP 1996). In such a model, application entities are composed of roles (known as viewpoints) which represent the different behaviours the entity can adopt. A role is a particular point of view on an entity that has an identification and a partial definition of that entity. The model's message sending protocol allows the specification of the role the receiver should adopt to respond to the message. Hence, if context-dependent behaviour is modelled as roles, an application could adapt to its context by just assuming the appropriate role.
  
-A detailed explanation of ambient references can be found in [[ftp://prog.vub.ac.be/tech_report/2006/vub-prog-tr-06-07.pdf|this technical report]].+{{ rolemodel02.jpg?455x318Click the image to enlarge }}
  
-== Further Reading ==+The problem with the split objects model is that the message sender must know before hand which are the roles a receiver could take. In dynamic environments like mobile open networks, this acknowledgment is practically impossible and undesirable (due to the heterogeneity and autonomicity of the participants). Hence we have extended this model in such a way that the sender only have to include its own context information in the messages (and not a role). At the receiver side there will be a reasoning engine that will take as input the context of both sender and receiver, and will map this information to a role. We have called this entity the context-dependent role selector. For further information about this solution, we refer the interested reader to [ [[http://soft.vub.ac.be/Publications/2006/vub-prog-tr-06-17.pdf|this paper]] ].
  
-Ambient ReferencesAddressing Objects in Mobile Networks. Tom Van CutsemJessie DedeckerStijn Mostinckx, Elisa Gonzalez Boix, Theo D'Hondt, Wolfgang De MeuterIn //Technical Report VUB-PROG-TR-06-10Vrije Universiteit Brussel//, 2006 [ [[http://prog.vub.ac.be/Publications/2006/vub-prog-tr-06-10.pdf|download]] ]+==== Ongoing and Future Work ==== 
 + 
 +These are the different research topics we have identified so far: 
 + 
 +  * Composition of context-dependent application behaviours using prototype-based solutions (delegation hierarchiessplit objectssubjective objects etc.). 
 +   
 +  * Context-dependent adaptations of behaviour using role-based models. 
 + 
 +  * Rule-based systems for context reasoning and role selection. 
 + 
 +  * Combining actor and role models for the development of context-dependent applications. 
 + 
 +  * Ad-hoc and intentional actor grouping. 
 + 
 +  * Intra and Inter actor layers for context-dependent adaptations. 
 + 
 +  * Dynamic scope for context-dependent communications. 
 + 
 +==== Further Reading ==== 
 + 
 +**A Role-Based Implementation of Context-Dependent Communications Using Split Objects**. Jorge VallejosPeter EbraertBrecht Desmet. In "Proceedings of the workshop on Revival of Dynamic Languages, collocated with ECOOP 2006, Nantes, France"[ [[http://soft.vub.ac.be/Publications/2006/vub-prog-tr-06-17.pdf|download]] ]
research/context.1151667185.txt.gz · Last modified: 2006/06/30 13:55 (external edit)