1 / 49

Contextor Infrastructure for Context-Aware Computing

Explore the architecture and services of the Contextor infrastructure for developing context-aware systems to support privacy, security, trust, and discovery. Services are self-configurable, support various communication mechanisms, and ensure interoperability.

kmartin
Download Presentation

Contextor Infrastructure for Context-Aware Computing

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. The Contextor Infrastructure for Context-Aware Computing Gaëtan Rey, Joëlle Coutaz Engineering HCI research group CLIPS IMAG, Grenoble, France

  2. I-AM

  3. Outline • Synthesis of the state of the art (architectural aspects) • The contextor infrastructure

  4. Synthesis of the state of the art • No consensual definition for the notion of context • A clear need for infrastructures that support the development of context-aware computing • Like conventional systems: heterogeneity, distribution, interoperability, … • Unlike conventional systems: multi-scaling, spontaneity, …

  5. Architecture Sensing : numeric observables

  6. Architecture Transformation : symbolic observables Sensing : numeric observables

  7. Architecture Situation and context identification Transformation : symbolic observables Sensing : numeric observables

  8. Architecture Context adapter Situation and context identification Transformation : symbolic observables Sensing : numeric observables

  9. Architecture Context adapter Situation and context identification Privacy / Security / Trust Transformation : symbolic observables Sensing : numeric observables

  10. Architecture Context adapter Situation and context identification Privacy / Security / Trust History Transformation : symbolic observables Sensing : numeric observables

  11. Architecture Context adapter Situation and context identification Privacy / Security / Trust Discovery / Recovery History Transformation : symbolic observables Sensing : numeric observables

  12. Context adapter Situation and context identification Privacy / Security / Trust Discovery / Recovery History Transformation : symbolic observables Sensing : numeric observables Architecture • For each layer • Services are self-descriptive (meta-interface + meta-data) • Services are self-configurable • Services are local to global (islands of interaction and existence of servers) • Services support multiple communication mechanisms (publish-subscribe, request-answer) • A uniform computational model (process/data oriented) and architectural style

  13. Context adapter Situation and context identification Privacy / Security / Trust Discovery / Recovery History Transformation : symbolic observables Sensing : numeric observables Architecture One style does not fit all A set of interoperable infrastructures

  14. The contextor infrastructure Context adapter Situation and context identification Privacy / Security / Trust Discovery / Recovery History Transformation : symbolic observables Sensing : numeric observables

  15. Outline • Contextor • Discovery • Examples

  16. Contextor Software abstraction Functional core + typed communication channels Control In Data In Data Out Meta Data Out Meta Data In Control Out

  17. Contextor Software abstraction Functional core • Transformation : Data (Type X) + Meta Data è Data (Type Y) + Meta Data • Meta Data : uncertainty, accuracy, latency … Control In Data In Data Out Transformation Meta Data Out Meta Data In Control Out

  18. Contextor Software abstraction Functional core • Transformation : Data (Type X) + Meta Data è Data (Type Y) + Meta Data • Control : behavioradaptation • supports reconfigurability Control In Data In Data Out Transformation Meta Data Out Meta Data In Control Out

  19. Dynamic Composition of Contextors Application 1 Application 2 Data and Meta Data Flow

  20. Dynamic Composition of Contextors Application 1 Application 2 Data and Meta Data Flow Controls Flow

  21. State 1 Not Running Not Supplied Not Ready Not in Activity Life Cycle of a Contextor Creation, conception of contextor

  22. State 1 State 2 Not Running Not Supplied Not Ready Not in Activity Running Not Supplied Not Ready Not in Activity Life Cycle of a Contextor Creation, conception of contextor Launching the contextor from its configuration file

  23. State 1 State 2 Not Running Not Supplied Not Ready Not in Activity Running Not Supplied Not Ready Not in Activity Life Cycle of a Contextor Creation, conception of contextor Launching the contextor from its configuration file Looking for Source Contextors : Send request for service on the network

  24. State 1 State 2 Not Running Not Supplied Not Ready Not in Activity Running Not Supplied Not Ready Not in Activity State 3 Running Supplied Not Ready Not in Activity Life Cycle of a Contextor Creation, conception of contextor Launching the contextor from its configuration file Looking for Source Contextors : Send request for service on the network Subscribing to Source Contextors

  25. State 1 State 2 Not Running Not Supplied Not Ready Not in Activity Running Not Supplied Not Ready Not in Activity State 3 State 4 Running Supplied Not Ready Not in Activity Running Supplied Ready Not in Activity Life Cycle of a Contextor Creation, conception of contextor Launching the contextor from its configuration file Looking for Source Contextors : Send request for service on the network Subscribing to Source Contextors Lauching the functional Core Waiting for Sink clients

  26. State 1 State 2 Not Running Not Supplied Not Ready Not in Activity Running Not Supplied Not Ready Not in Activity State 5 Running Supplied Ready In Activity State 3 State 4 Running Supplied Not Ready Not in Activity Running Supplied Ready Not in Activity Life Cycle of a Contextor Creation, conception of contextor Launching the contextor from its configuration file Looking for Source Contextors : Send request for service on the network New sink Client connection Subscribing to Source Contextors First sink Client Connection Last sink Client Disconnection Lauching the functional Core Waiting for Sink clients

  27. State 1 State 2 Not Running Not Supplied Not Ready Not in Activity Running Not Supplied Not Ready Not in Activity State 5 Running Supplied Ready In Activity State 3 State 4 Running Supplied Not Ready Not in Activity Running Supplied Ready Not in Activity Life Cycle of a Contextor Creation, conception of contextor Launching the contextor from its configuration file Looking for Source Contextors : Send request for service on the network New sink Client connection Stop Command Subscribing to Source Contextors First sink Client Connection Last sink Client Disconnection Lauching the functional Core Waiting for Sink clients

  28. Outline • Contextor • Discovery & Scalability • Examples

  29. Both a client and a server Improves the autonomy of contextors P2P Network Model

  30. Both a client and a server Improves the autonomy of contextors Fully Distributed Architecture Supports the arrival/departure of contextors P2P Network Model

  31. P2P Network Model • Both a client and a server • Improves the autonomy of contextors • Fully Distributed Architecture • Supports the arrival/departure of contextors • Local Discovery • Requests use UDP multicast

  32. P2P Network Model • Both a client and a server • Improves the autonomy of contextors • Fully Distributed Architecture • Supports the arrival/departure of contextors • Local Discovery • Requests use UDP multicast • Distant Discovery • Hybrid Model (GloSS) • Use of "repeaters“ (model based on geographical localization)

  33. Outline • Contextor • Discovery • Examples

  34. Example 1: Human activities Observatory A dynamic Web page displays users’ level of activity

  35. Tomcat Web Server Web client Client Web User User User Example 1: Human activities Observatory Architecture Web Pages Federation of Contextors

  36. Example 1: Human activities Observatory Architecture Observed User Keyboard Activity Contextor Displays Users Activities Servlet Local Activity Contextor Mouse Activity Contextor Adapter Local information Contextor

  37. Example 1: Human activities Observatory […] public class ActivityObservatory extends HttpServlet { private ActivityAdapter myAdapter; […] public void init(){ myAdapter = new ActivityAdapter(); […] } […] public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ […] for (int i=0; i< myAdapter.getDataInConnections("activity"); i++){ this.displayInformation( myAdapter.getData("activity",i) ); } […] } […] }

  38. Example 1: Observatory of Activity […] public class ActivityMouseContextor extends ElementaryContextor{ private Process mp = null; private String data = ""; […] public void init(){ […] mp = Runtime.getRuntime().exec("MouseSensor.exe"); […] } […] public void functionalCore() { […] data += this.mp.read(); […] this.setDataOutValue(data.getBytes()); […] } […] }

  39. Example 2 : I-AM • C. Lachenal et N. Barralon Works • A software infrastructure that supports the dynamic composition of heterogeneous interaction resources to form a unified space. • In this space, users can distribute and migrate whole or parts of user interfaces as if they were handled by a unique computer.

  40. Example 2 : I-AM • C. Lachenal et N. Barralon Works • 2 types of contextors • Surfaces Contextors • Indicate the presence of each surface (= display) • Indicate characteristics (size, …) of each surface

  41. Example 2 : I-AM • C. Lachenal et N. Barralon Works • 2 types of contextors • Surfaces Contextors • Link Contextors • Encapsulate a physical sensor • Indicate links (spatial relations) between each surfaces PICMicroprocessor IRDA transmitter / receiver IRDA manager USB connector

  42. Example 2 : I-AM • C. Lachenal et N. Barralon Works • 2 types of contextors • Surfaces Contextors • Link Contextors • Encapsulate a physical sensor (currently simulated) • Indicate links (spatial relations) between each surfaces

  43. Conclusion • Role of Contextors • Capture and computes contextual information • Distribution (local and global)

  44. Conclusion • Role of Contextors • Capture and computes contextual information • Distribution (local and global) • Middleware • Distributed • Dynamic • Autonomous

  45. Perspectives • Evaluation of architecture • Latency • Scalability • Reconfigurability

  46. Perspectives • Evaluation of architecture • Latency • Scalability • Reconfigurability • Implementation of examples • Mobility (connections / disconnections) • Distribution (repeaters)

  47. Perspectives • Evaluation of architecture • Latency • Scalability • Reconfigurability • Implementation of examples • Mobility (connections / disconnections) • Distribution (repeaters) • Contextors Upgrade • History of the data

  48. The Contextor Infrastructure for Context-Aware Computing Gaëtan Rey, Joëlle Coutaz Engineering HCI research group CLIPS IMAG, Grenoble, France

  49. Data et Meta DataXML and XML Schemas • Benefits • Portability • Extensibility • Uses • Initialization using configuration files in XML (name, group, Data In and Data Out class …) • Communication based on XML messages

More Related