1 / 21

Context Infrastructure for Developing Context-Aware Applications

Fakultät Informatik, Institut für Systemarchitektur, Lehrstühl für Rechnernetze. Context Infrastructure for Developing Context-Aware Applications. CRUISe Project. Jordan Janeiro jordan.janeiro@tu-dresden.de. Agenda. Why Develop Context-Aware Applications MoCA Framework Architecture

tlori
Télécharger la présentation

Context Infrastructure for Developing Context-Aware Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Fakultät Informatik, Institut für Systemarchitektur, Lehrstühl für Rechnernetze Context Infrastructure for Developing Context-Aware Applications CRUISe Project Jordan Janeiro jordan.janeiro@tu-dresden.de

  2. Agenda • Why Develop Context-Aware Applications • MoCA Framework • Architecture • Context Model • Use Cases - CRUISe

  3. Motivation • Ubiquitous and Pervasive computing demonstrate a trend towards more complex and dynamic computer networks • This complexity is mainly introduced by: • Varying quality of wireless links; • Heterogeneous capabilities of connected nodes; • QoS and reliability • Adaptation of services by “context” changes • Dynamically; • Transparently

  4. Motivation • Context is … • ” Context is any information that can be used to characterise the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves.” • Adaptations need support of a software infrastructure to provide context • Implement the retrieval of “low-level” information in the mobile devices • Many middlewares were proposed

  5. Objectives • Use a software infrastructure to support the retrieval of context information • Implemented as “sensors” • Bandwidth • Location • Luminosity • Implement adaptation rules based on the context information

  6. Mobile Collaboration Architecture - MoCA

  7. Mobile Collaboration Architecture - MoCA • Discovery Service • Accepts announcements of applications, and allows Clients to locate the corresponding Servers and Proxies; • Configuration Service • Stores and manages the configuration of each mobile device: MAC Address, (IP:port) pair of CIS, periodicity of the Monitor repots to the CIS, and (IP:port) pair of the Discovery Service; • LocationInference Service • Infer the location of devices using 802.11 interface (indoors) • Context Information Service • Stores and processes the state information received from the Monitors, and eventually sends notifications about context changes to Proxies which have subscribed to such notifications • Monitor • Is in charge of: (i) probing the state information (aka execution context) of the mobile device and (ii) sending this information to the Context Information Service (CIS) executing in the static network

  8. Mobile Collaboration Architecture - Monitor • Is a daemon executing on the mobile device; • Periodically polls (and sends to the CIS) state information about the mobile device’s resources and wireless RF signals, e.g.: • Strength of RF signal received from all visible Access Points ; • CPU utilization, available memory and energy; • MAC Address, IP and currently used Access Point; • RF signals are obtained through WiFi scan operations independently of the 802.11 network interface; • Also reports to the CIS any change of the current IP address or Access Point of the device (i.e. a migration) • Implementations ready for • Windows XP • Windows CE • Linux • Symbian • Nokia N60

  9. Mobile Collaboration Architecture - Monitor

  10. Mobile Collaboration Architecture – Monitor Simulator • Is a tool which simulates a mobile device: • Behavior defined by a configuration file (scans are read from different files) • Sends this information to CIS (like the “real” Monitor) • Can be deployed on any host • This facilitates: • Debugging of the context-aware applications in the usual networked environment (without having to physically move between regions) • Evaluating the scalability of the application (test with hundreds/thousands of fake mobile devices)

  11. Information of Device’s Context Application Monitor CIS Application Monitor

  12. Context Notification - Polling Application Monitor • EnergyLevel = 28 FreeMemory = 6000 EnergyLevel < 30 and FreeMemory > 5000 ??? EnergyLevel < 20 and FreeMemory > 5000 ??? CIS Application Monitor

  13. Context Notification – Publish/Subscribe Application Monitor • EnergyLevel = 18 FreeMemory = 6000 EnergyLevel < 20 and FreeMemory > 5000 EnergyLevel > 20 and FreeMemory > 5000 CIS Application Monitor

  14. Context Model • AutomaticallyCollected Hardware Context Variables • CPU Usage (%); • BatteryEnergy Level (%) ; • Free Main Memory (KB); • AdvertisementPeriodicy – Monitor (seconds); • Delta T – contextfreshness (ms); • Acess Point Mac Address (Mac Address); • OnLine (boolean); • Other devices

  15. Context Model • AutomaticallyCollected Hardware Context Variables • IP Change (boolean); • AP Change (boolean); • Roaming (boolean); • List ofAvailableAcess Points (Array); • AP Mac Adsress (MAC Address); • RSSI (Integer); • SSID (String); • Static Hardware Context Variables • Device Type (String); • ScreenSizeWidth (Integer); • ScreenSizeHeight (Integer); • ColorCapable (Boolean); • BitsPerPixel (Integer)

  16. Adaptations for the Use Cases • „The Closest Place“ service • Functionality • Find theclosestsplacetotheuser • Examples • Hotels, restaurants, carrentals, „luggagelocks“, publictranspostationstations, informationservices, touristicattractions, bikerentals, pharmacies, doctorsandhospital • Context Variables • User‘slocation, placelocation • „WheatherForecast“ service • Functionality • Find thewhetherforecastinformationtospecificplaces • Context Variables • Place location • „Personalized News“ service • Functionality • Set the News broadcastto a specificcountry • Set thelanguagefor a News broadcast • Context Variables • Home Location, Mother Language

  17. Adaptations for the Use Cases • „Screen Expansion“ service • Functionality • Expandthedisplayof a deviceto a anotherdevice (netbooksornotebooks) • Context Variables • Display Size, Available Devices • „Automatic Route Calculationfor Agenda Appointments“ service • Functionality • Calculatethe route totheaddressofthenextappointment in theagenda • Context Variables • CurrentLocation, User Profile Options (fit orgreen) • „CheapCitesseing“ service • Functionality • Find a citeseeingwhichcoverstheciteseeingof a citywihtpublictransportation • Context Variables • CurrentLocation, Public Transportation Available in theLocation, LocationofTouristicAttractions

  18. Adaptations for the Use Cases • „Automatic Ticket Buying“ service • Functionality • Buytransportationticketsautomaticallybased on theproximityofthedevicetospecialbuyingplaces • „I am in hurry“ service • Functionality • Calculatethe fastest route to a location, based on theperiodof a dayandtrafficdata • Context Variables • Current User Location, Periodofthe Day, Traffic Statistic Service oftheCurrent User Location • „BatterySaving“ preference • Functionality • Stop streamingservicesorchangethemtolessconsumingbandwidth/batteryservices • Change thebrightnesslevelofthedisplay • Context Variables • Battery Level, BandwidthThresholdCurrentLocation, Visual Impairment Preference

  19. Adaptations for the Use Cases • „Special Eating“ preference • Functionality • Find specialkindsofrestaurants: vegetarian, steaks, nuddlesorpaellas • Context Variables • Current User Location, Restaurant Locations • „Movement Impairment“ preference • Functionality • Find lesswalkingroutes • Find stationswhichsupporttransitofimpairedpeople • Context Variables • Current User Location, CurrentLocation Station Information, Destination Location • „Visual Impairment“ preference • Functionality • Display biggericons in thescreen • Enablemachinespeakingmechanism • Change thebrightnesslevelofthedisplay • Change theiluminationofthekeyboard • Context Variables • Screen Size, User Visual Impairment, Environment Light Level

  20. Adaptations for the Use Cases • „Fit Feeling“ preference • Functionality • Rank thekindsoftransporationbased on movement (1. Walking, 2. Bike) • Context Variables • Current User Location, DestinyLocation, Physical Level Movement ofthe Transportation • „Green Conscience“ preference • Functionality • Calculateroutesbased on the CO2 emission • Context Variables • Current User Location, Destination Location, CO2 Emission oftheLocalTransportations

  21. Conclusion • A middleware (MoCA) which supports the development of context-aware applications • An extensible context model to gather specific context information • Future context-based scenarios for the CRUISe project based on MoCA

More Related