ict 1 “putting context in context: the role and design of context management in a mobility and...

21
1 ICT “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research Scientist, SINTEF ICT, Norway MCISME, Nara 09.05.06

Post on 19-Dec-2015

227 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

1ICT

“Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware”

Marius Mikalsen

Research Scientist, SINTEF ICT, Norway

MCISME, Nara 09.05.06

Page 2: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

2ICT

NASA Challenges

934 million km away Signal takes 50 minutes to reach earth Interesting objects may pass without being noticed Need autonomous/adaptive space probes NASA and similar approaches to adaptation are

characterized by tailored solutions which are high cost

Page 3: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

3ICT

Focus of this presentation

Adaptation needed, also on earth, in mobile computing An approach for middleware support for the development

of autonomous adaptive applications in the mobile domain (reduce costs and time to market)

Differs from previous work in that it plays more active role in the adaptation process

Page 4: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

4ICT

Presentation outline

Background Thesis Context management in an adaptation enabling

middleware Evaluation Conclusion and future work

Page 5: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

5ICT

Background – need for adaptation Mobile applications need to adapt to changing requirements (at run-time) What is an adaptive application:

Improve perceived performance by self-adapting to changing context (user and system)

Example adaptations User Interface DB Proxy

Satyanarayanan’s range of adaptations strategies:

Page 6: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

6ICT

Background – not enough system support

Much context aware system research focus on high quality context delivery, but less focus on supporting the adaptation process itself

Page 7: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

7ICT

Background – some excellent context managers

Dey’s Context Toolkit Context widgets, context interpreters, and context aggregators

Capra’s Reflective Middleware Solution Reflective middleware using metadata

Huebscher’s Adaptive Middleware Framework Quality of context, context (hyper) spaces, and learning

Figure 1 Select best CP available (from Huebscher) Figure 2 Select lest bad CP (from Huebscher)

Page 8: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

8ICT

Background – more system support

adaptableapplication

adaptationmanager

contextmanager

Manages and provides context

adapts adaptable

application

contextmanager

Manages and provides context

adapts

Dey, Capra, Huebscher ++: Adaptation middleware:

Page 9: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

9ICT

Background Using Adaptation Enabling Middleware

Page 10: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

10ICT

Background – context technology matures

Redwine and Riddle’s six phases of technology popularisation (15-20 years):1. Basic research

2. Concept formulation

3. Development and extension

4. Internal enhancement and exploration

5. External enhancement and exploration

6. Popularization

Weiser (1991): The ubiquitous computing paradigm

Page 11: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

11ICT

Thesis

1. Need tool support (such as adaptation enabling middleware) to reduce cost of building context aware adaptive systems

2. Utilising context information is essential to make such adaptation possible, and need for context management component to handle context

3. Two main responsibilities in an adaptation enabling middleware: Reduce number of unnecessary adaptations. Separate context management concerns from adaptation

reasoning

Marius Mikalsen
NB: Focus on distribution
Page 12: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

12ICT

Why do we need tool support?

Tools simplify software evolution Simpler – separation of concerns (application and

adaptation behavior) Tools improve scalability

Page 13: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

13ICT

Why is context information important?

monitors

influencesuser needs

neededservice quality

offeredservice quality

adaptableapplication

usercontex

t

network QoSshareddevices

battery

execution

context

adaptationmanager

position lightnoise

selects application

variant

uses

mobile user

uses servic

e

contextmanager

monitors

configurationmanager

uses

instructs

reconfigures

architecture model

node

component

legend:

applicationvariant link

represented as

Page 14: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

14ICT

Context Manager’s responsibilities in the architecture

Reduce number of unnecessary adaptations Only occur when necessary Notify of significant context change

Separate context management concerns from adaptation reasoning

... and what is our approach to achieve this?

Page 15: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

15ICT

The context model

Page 16: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

16ICT

Context manager components

Page 17: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

17ICT

Context repository

Primary entry point for context clients and context sources Separate context management concerns from adaptation

reasoning Tasks:

Maintain context model Register and notify clients Enable plug-ins (reasoners and sensors)

Page 18: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

18ICT

Context sensor

Context sensors sense low level or raw context information Example network sensor:

Callback/call mechanism using the Birdstep MADAM Mobility API Provides access to key connectivity information such as available

networks, signal strength and latency/bandwidth parameters Supports the following network adapters (non-exhaustive list):

WLAN Ethernet GSM GPRS EDGE UMTS Bluetooth

Page 19: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

19ICT

Context reasoner

Avoid unnecessary adaptations Input from two sources; adaptation manager and user, on what constitutes

a significant context change Adaptation manager

must communicate boundary conditions (e.g. bandwidth) Clear separation on what component reasons on what

User in the loop Explicit – directives Implicit – feedback Overrides AM

Example reasoning Artificial intelligence:

Natural fit Challenges – context is elusive Case based reasoning

QoC spaces (Huebscher)

Page 20: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

20ICT

Evaluation

Two case examples to test performance Information service to support janitor inspections and a videostreaming application

Also, two industrial pilot services with Condat and Integrasys Results:

Defining architectural properties and utility functions need extensive tool support at design time

The context management provides good support for accessing and identifying context elements and works well as a manager for context information

Suggested improvements: Need reasoning libraries should be standardized rules in the framework as to how the user needs and preferences

influence the relative importance of other context information (user must in the loop) should always be possible for the user to override context sensing, and explicitly state

what is the (significant) context identified the need for more support for interoperability with third party context sensors

Page 21: ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research

21ICT

Conclusion

Need tool support (such as adaptation enabling middleware) to reduce cost of building context aware adaptive systems

Utilising context information is essential to make such adaptation possible and one need context management component to handle context

Two main context operations that are needed in such a middleware: Reduce number of unnecessary adaptations. Separate context management concerns from adaptation reasoning

Future work Evaluate and decide on suitable reasoning mechanism for avoiding

unnecessary adaptations Integrating context information from different sources

SOA Ontologies