madam mobility and adaptation enabling middleware
play

MADAM Mobility and Adaptation enAbling Middleware Svein - PowerPoint PPT Presentation

MADAM Mobility and Adaptation enAbling Middleware Svein Hallsteinsen SINTEF Brussels September 27, 2005 Slide 1 Background 2003 2004 2005 2006 2007 2008 2009 2010 Qua (NF)---------------------- Famous (NF)------------------


  1. MADAM Mobility and Adaptation enAbling Middleware Svein Hallsteinsen SINTEF Brussels September 27, 2005 Slide 1

  2. Background 2003 2004 2005 2006 2007 2008 2009 2010 Qua (NF)---------------------- Famous (NF)------------------ Families(EU) Madam (EU-IST)--- Osiris(EU)---------- Music(EU-IST)------------ Partners: 2 Univ. +1 2 Indep res inst +1 3 SMEs -1 + 3 SMEs 1 Big company +2 (big Telcom) +1 (Public transport) Brussels September 27, 2005 Slide 2

  3. Motivation • Computing is going mobile, ubiquitous, service oriented • Mobile use means dynamic variation in user needs and available computing and communication resources • Applications must adapt to such changes in order to sustain availability, usability and usefulness Brussels September 27, 2005 Slide 3

  4. Madam Objectives • Provide support for the development of applications that adapt dynamically to changes in context (at launch time and during use) Brussels September 27, 2005 Slide 4

  5. Approach Architects, application developers develop - Application reference architecture Design Models - Notation extensions Application use & (UML profile) developers refine - Modeling tool I mplement - Transformation tool Components Types Application & Plans components retrieves Distributed MADAM runtime - Middleware Application Adaptation models instance builds, Middleware builds & - context monitoring maintains adapts - context reasoning & uses provides monitors service to - adaptation reasoning & decision making Context - (re)configuration - application launch needs Distributed and initial adaptation computing noise position battery Mobile user infrastructue Brussels September 27, 2005 Slide 5

  6. Properties and utility Dynamically changing env. Influence Influence Properties Describe Needs Offer Needs Offer Execution Service env Provides Executes Mobile service to in user Utility Brussels September 27, 2005 Slide 6

  7. Conceptual model Interface * * Property Port Entity def type type * * * * implements implements * connected to * has has Property Port Entity annotation * 1 * 1 use * * influence use User use Software environment User * * component entity * * * * influence Resource * use * * * Brussels September 27, 2005 Slide 7

  8. Properties example Property vocabulary haf = no haf = no mem = f(...) mem = 30 Name Value Explanation rsp = 30 rsp = f(nbw) range nbw = ? rsp 1:100 Response time cli o mem 1:100 Amount of memory nbw 1:100 Bandwidth nbw = 70 n app n o haf yes, no Handsfree operation n n lnk usr o srv o utility = ( ( if usr.rsp >= app.rsp then 1 else 1- (app.rsp-usr.rsp)/app.rsp) + ( if ((usr.haf and app.haf) or (!usr.haf and !app.haf) ) then 1 else 0) ) / 2 Brussels September 27, 2005 Slide 8

  9. Adaptable services through component frameworks rsp = Db.rsp haf = UI.haf S type Caching mgr Handfree UI S Impl Normal Caching db UI UI Server Caching Server db mgr db Ctrl Db Ctrl Basic db impl Cache Basic Server client mgr db nbw = Db.nbw = type server client mem = Ui.mem+Ctrl.mem+Db.mem Cache = implementation Basic mgr = alternative implementations of a type = parameterised implementation Brussels September 27, 2005 Slide 9

  10. Multiple applications • Common vocabulary of properties – use OMG std for QoS and FT • Combined utility function – weighted sum or product of differences – Weights represent user priorities Brussels September 27, 2005 Slide 10

  11. Mw architecture - overview Framework Instance Context architecture architecture model model model reconfigure to context change selected variant Context Adaptation 1 3 Configurator manager manager find implementations, derive and evaluate variants 2 Core Brussels September 27, 2005 Slide 11

  12. Mw architecture - plugins Context Config- listener uration Adapt- Context Config- ation mgr urator mgr Context access Iteration Context Context sensor reasoner Planner Component mgmt Resource Instance mgmt mgmt Core Brussels September 27, 2005 Slide 12

  13. Experimentation • Prototype middleware implementation (Java CDC/Personal) • 2 Pilot services developed • Tested on iPAQ pocket pc with Windows mobile and Creme JVM • Useful adaptation demonstrated • Runtime overhead acceptable (Mw footprint < 10% of program memory, adaptation time < 1sec) Brussels September 27, 2005 Slide 13

  14. Challenges • Modeling variability is not trivial – Leave to experts? – Learn from product line community – Tool support for testing and tuning – Need not be perfect • Runtime overhead / Scalability – Adaptation time grows exponentially with the no of variation points – Pre-runtime processing – Background processing Brussels September 27, 2005 Slide 14

  15. Challenges • Context sensing & reasoning – How to detect significant context changes? – Region maps? • User in the loop – How much can we bother the user asking for input? – To which extent does the user want to be involved? • Distribution – Centralized vs. decentralized control – Focusing on client side Brussels September 27, 2005 Slide 15

  16. Thank you! Questions? More information: www.ist-madam.org Brussels September 27, 2005 Slide 16

Recommend


More recommend