Context-aware architectures Guy Bernard October 2003 Context-aware architectures - Guy Bernard / INT - October2003 1
VTT (1) IEEE Pervasive Computing july-septembre 2003 Context-aware architectures - Guy Bernard / INT - October 2003 2
VTT (2) framework for Symbian OS "blackboard-based" communication (center = context manager) stress on fuzzy thresholds (Bayesian reasoning) low-level vs. high-level context values description syntax: Resource Description Framework (www.w3c.org) Context-aware architectures - Guy Bernard / INT - October 2003 3
VTT (3) Context-aware architectures - Guy Bernard / INT - October 2003 4
CICESE, Mexico IEEE Computer, september 2003 open-source Instant Messaging (www.jabber.org) Context-aware architectures - Guy Bernard / INT - October 2003 5
Univ.. Lancaster, ReMMoC project Tech. Report MPG-03-01 Context-aware architectures - Guy Bernard / INT - October 2003 6
Univ.. College London, CARISMA project (1) Context-aware architectures - Guy Bernard / INT - October 2003 7
CARISMA (2) Context-aware architectures - Guy Bernard / INT - October 2003 8
CARISMA (3) their own "simple message passing" - porting to JMS underway Context-aware architectures - Guy Bernard / INT - October 2003 9
$ # "! GET, CARISM project Couche de communication La couche de communication est b asé e sur l e g r ap he de p r otocol es de J onathan dans l e b ut de: instancier dynamiquement un g rap h e adap té aux co nditio ns de l env iro nnement à cet instant; restructurer et mo dif ier ce g rap h e si l es co nditio ns v arient p endant l ex é cutio n C onnex ion mul tip l e: p ossib il ité d util iser simul tané ment p l usieur s connecteur s ( T C P, U D P ) & % & % Context-aware architectures - Guy Bernard / INT - October 2003 10
4 3 4 7, C? BA 9! 0/ CARISM (2) Le p r o j et G E T C A R I S M ( 2 / 2 ) Plate-f o r m e m o b i le Réseau Point d a c c è s 52 877 9 56 1 2 56 5; 8 7 <= :2 6; < 2= >? 29@,-'. + $#+ *%' &'$ %% $#" () Point d a c c è s I E E E 8 0 2. 1 1 M d l e w a r e e m b a r q u é ( l u x + J V M ) C t t d é v id PDAs ipaq in Faibles ressources on ex e ex cut ion ariable Context-aware architectures - Guy Bernard / INT - October 2003 11
M 42 < 6; 3 7 56 4 8; 5 83 CARISM (3) Gestion l oc a l e à l u nité m ob il e l ic a tions 8 @ 4 8 = 56 7 57 3 2 3 2 63 G e s t i o n a r c h i t e c t u r e l o c a l e 2 3 7 2 532 9 2 3 5 7 2 63 API JMS M i l onite u r d e r e s s ou r c e s s s tè m e s C h o i x d e c o n f i g u r a t i o n Context-aware architectures - Guy Bernard / INT - October 2003 12
CARISM (4) G es tio n n aire lo c al d e s erv ic es C o n f ig uratio n G es tio n n aire lo c al d arc h itec ture O b s erv ateur d e c o n tex te Simulateur d e c o n tex te I n terg ic iel C o n tex te Context-aware architectures - Guy Bernard / INT - October 2003 13
ITEA Vivian project, ICM Context-aware architectures - Guy Bernard / INT - October 2003 14
AMPROS proposed architecture (1) Appl Appl Middleware Manager notify query/ subscribe Context Manager Appl/Users Appl/Users Policy Policy Logging/ reconciliation Discov. service Failure detector Discon. mgt Middleware Services (naming, trading, notification, persistency,... Multi-Net mgt get config / set config Context Recognition Service Appl/Users Appl/Users Profiles Profiles Middleware Core Resource Resource Monitor Monitor OS device device Context-aware architectures - Guy Bernard / INT - October 2003 15
AMPROS proposed architecture (2) Resource Monitor 1 resource monitor for each resource ("driver") type WiFi, TETRA, remaining battery, available memory, geolocalisation, # of processes, includes some system- and device-dependent code gets raw data and processes it in order to provide system-independent low-level context data, e.g.: bandwidth =>average value in the last minute geolocalisation => x, y pushes (periodically??) low-level context data to Context Recognition Service, e.g.: Device:Network:WiFi:bandwidth =30 Location:Coordinates = {80.0, 140.3} Context-aware architectures - Guy Bernard / INT - October 2003 16
AMPROS proposed architecture (3) Context Recognition Service gathers low-level context data from Resource Monitors returns the appropriate high-level context data, as considered by Applications/Users Profiles, to the Context Manager, e.g.: Device:Network:*:Bandwidth = {WiFi:Bandwidth=30, Tetra:Bandwidth=0} Applications/Users Profiles describe the interest of individual applications, or users, or middleware itself to monitor low-level or high-level context data, e.g.: Device:Network:*:Bandwidth Location:Coordinates Context-aware architectures - Guy Bernard / INT - October 2003 17
AMPROS proposed architecture (4) Policies describe the interest of individual applications, or users, or middleware itself to be notified when significant context changes occur, and the associated behaviour, e.g.: if (Device:Network:*:Bandwidth < {10} && Device:Processor > 25) then "enable compression" Context Manager notifies the appropriate entity (application, user, middleware) when significant context changes occur, e.g.: notify "middleware", "enable compression" notify "user", "battery low" Context-aware architectures - Guy Bernard / INT - October 2003 18