Infrastructure to Provide Context-Aware… 1/26
DeustoTech - Deusto Institute of Technology, University of Deusto
http://www.morelab.deusto.eshttp://www.morelab.deusto.eshttp://www.morelab.deusto.eshttp://www.morelab.deusto.es
December 4, 2012
An Infrastructure to Provide Context-Aware
Information and Services to Mobile Users
UCAmI 2012
Pablo Curiel, Ana B. Lago
Infrastructure to Provide Context-Aware… 2/26
Outline
Introduction
The Infrastructure
Implementation
Evaluation
Conclusion
Infrastructure to Provide Context-Aware… 3/26
Introduction
Introduction
The Infrastructure
Implementation
Evaluation
Conclusion
Infrastructure to Provide Context-Aware… 4/26
Mobile devices’ ecosystem
► Mobile devices play a prominent role in our lives.
► 6 cellular subscriptions for every 7 people in the world.
► Emergence of the Smartphones
► Powerful hardware
► Permanent connectivity
► Equipped with numerous sensors
► Ability to execute a great diversity of applications
► Provide richer and better context information than ever
before
Introduction
Infrastructure to Provide Context-Aware… 5/26
The Objective
► Build an infrastructure which
► Manages the context information in mobile environments
► Makes it available for the rest of the entities in the
environment
► Enable
► The provision of relevant information and services to end-
users.
► Mobile application and services to adapt their behaviour to
meet user needs.
Introduction
Infrastructure to Provide Context-Aware… 6/26
The Infrastructure
Introduction
The Infrastructure
Implementation
Evaluation
Conclusion
Infrastructure to Provide Context-Aware… 7/26
Infrastructure
► The context management infrastructure…
Infrastructure
Co
nte
xt
Pro
vid
ers Co
ntext
Co
nsu
mers
Context Manager
Context Broker
CurrentContext
QueryManager
SubscriptionManager
ContextHistory
Infrastructure to Provide Context-Aware… 8/26
► Entities which provide context information to
the system
► Physical sensors, end-user mobile devices,
social networks, mobile services, etc.
Providers
Infrastructure
Co
nte
xt
Pro
vid
ers
Infrastructure to Provide Context-Aware… 9/26
► Entities that make use of context information
to adapt their behaviour or to take decisions
► Mobile application and services
Consumers
Infrastructure
Co
ntext
Co
nsu
mers
Infrastructure to Provide Context-Aware… 10/26
► Central element
► Context repository
► Stores the context information
retrieved from the sources
► Allows consumers to access it
► Data-centric approach
► Comprised of various independent
components
The Context Manager
Infrastructure
Context Manager
Context Broker
CurrentContext
QueryManager
SubscriptionManager
ContextHistory
Infrastructure to Provide Context-Aware… 11/26
► Current Context
► Stores the context information which is valid in
each moment
► Follows the ontological model shared by the
whole system.
► Context History
► Keeps track of the changes taken place in the
context information
► Storage policies
CurrentContext
ContextHistory
The Context Manager
Infrastructure
Infrastructure to Provide Context-Aware… 12/26
Context Broker
QueryManager
SubscriptionManager
The Context Manager
Infrastructure
► Context Broker.
► Manages access to current and
history context repositories.
► Receives context information from
the sources and stores it in the
current context
► Moves outdated information to the
context history
► Responds consumers’ requests
querying these two repositories
Infrastructure to Provide Context-Aware… 13/26
► Context Broker.
► Two subcomponents
► Query Manager
► Synchronous access
► Subscription Manager
► Asynchronous access
► Register subscriptions and receive notifications
QueryManager
SubscriptionManager
The Context Manager
Infrastructure
Infrastructure to Provide Context-Aware… 14/26
Context Manager API
► Unique entry point to the Context Manager functionality
► Exposes methods that enable context source and
consumers to work with context information
► Query the context repositories
► Subscribe to context information changes
► Add/Remove context information
Infrastructure
Infrastructure to Provide Context-Aware… 15/26
Implementation
Introduction
The Infrastructure
Implementation
Evaluation
Conclusion
Infrastructure to Provide Context-Aware… 16/26
Implementation
► Java
► OSGi
► Jena2 and Jenabean
► RESTful API
Implementation
Infrastructure to Provide Context-Aware… 17/26
Evaluation
Introduction
The Infrastructure
Implementation
Evaluation
Conclusion
Infrastructure to Provide Context-Aware… 18/26
Starting scenario
► Suggest plans to friends depending on their location and
availability.
Evaluation
► Android end-user app ► Contextual service
Infrastructure to Provide Context-Aware… 19/26
Tests design
► And starting from this scenario...
► Tests where
► The contextual service acts as context source, periodically
(every 5s) adding alerts for the end-user application
► The end-user application
►Queries periodically (every 1s) for these alerts
►Registers asynchronous subscriptions to receive them
► In each of these tests the number of context source and
consumers interacting with the context manager varies
Evaluation
Infrastructure to Provide Context-Aware… 20/26
Tests results
► Effect of different number of concurrent sources
Evaluation
Infrastructure to Provide Context-Aware… 21/26
Tests results
► Effect of different instance count in the current context
Evaluation
Infrastructure to Provide Context-Aware… 22/26
Tests results
► Effect of different number of concurrent consumers
Evaluation
Infrastructure to Provide Context-Aware… 23/26
Tests results
► Comparison between using Jena and Jena+Jenabean
Evaluation
Infrastructure to Provide Context-Aware… 24/26
Conclusion
Introduction
The Infrastructure
Implementation
Evaluation
Conclusion
Infrastructure to Provide Context-Aware… 25/26
Conclusions
► The implemented prototype and the tests carried out
have shown
► A functional system which complies with the defined
requirements
► Is extensible
► However, performance issues were observed
► The number of concurrent sources increases
► The context space held by the context manager grows
Conclusion
Infrastructure to Provide Context-Aware… 26/26
Future Work
► Removing or replacing Jenabean
► Privacy and security policies
► Trust in context providers
► Control access for context consumers
Conclusion
Infrastructure to Provide Context-Aware… 27/26
DeustoTech - Deusto Institute of Technology, University of Deusto
http://www.morelab.deusto.eshttp://www.morelab.deusto.eshttp://www.morelab.deusto.eshttp://www.morelab.deusto.es
An Infrastructure to Provide Context-Aware
Information and Services to Mobile Users
Pablo Curiel