mobile context data management framework

44
MOBILE CONTEXT DATA MANAGEMENT FRAMEWORK The 5th FTRA International Conference on Multimedia and Ubiquitous Engineering (MUE 2011) David Martin, Carlos Lamsfus, Aurkene Alzua Cooperative Research Centre in Tourism – CICtourGUNE (Spain) [email protected]

Upload: damarcant

Post on 13-Jan-2015

102 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Mobile context data management framework

MOBILE CONTEXT DATA MANAGEMENT FRAMEWORK

The 5th FTRA International Conference on Multimedia and Ubiquitous Engineering (MUE 2011)

David Martin, Carlos Lamsfus, Aurkene Alzua Cooperative Research Centre in Tourism – CICtourGUNE (Spain)

[email protected]

Page 2: Mobile context data management framework

Index

1. Introduction

2. Architecture overview

3. Detailed description

4. Validation

5. Benefits

6. Conclusions

Page 3: Mobile context data management framework

Index

1. Introduction

2. Architecture overview

3. Detailed description

4. Validation

5. Benefits

6. Conclusions

Page 4: Mobile context data management framework

1. Introduction

• People on the move are active technology users.

– Worldwide mobile phone sales to end users totalled 1.211 billion units in 2009 (Gartner).

• Mobile devices have become a new way to access information and consume services on the Internet everywhere.

• There is a new challenge in this scenario

– How could we provide the correct information to people on the move at any time and place?

Page 5: Mobile context data management framework

1. Introduction

Location

Temperature

User Profile

Moving Mode

Social Context

...

Device

¡¡Context Data!!

Page 6: Mobile context data management framework

1. Introduction

– The development of applications that use context data is not trivial

– Sources of context information have to be identified

– Data has to be gathered from such sources

– Data has to be unified and managed (process, infer new data, store)

– Data has to be served to the applications

– All these complex tasks require new types of software architectures and tools to easily design, develop and test applications by developers.

Page 7: Mobile context data management framework

Index

1. Introduction

2. Architecture overview

3. Detailed description

4. Validation

5. Benefits

6. Conclusions

Page 8: Mobile context data management framework

2. Architecture overview

Context Data Manager

Streams{A, B}

Context Provider

Context Data

Source

Mobile Gateway

Context Data

Wrapper

Context Data

Wrapper

Context Data

Wrapper

Context Provider

Context Data

Source

Context Provider

Context Data Manager

Streams{B, C}

Stream C Stream A Stream B

Application

Management

Providers

Sources

Page 9: Mobile context data management framework

Index

1. Introduction

2. Architecture overview

3. Detailed description

4. Validation

5. Benefits

6. Conclusions

Page 10: Mobile context data management framework

3. Detailed description of the framework

Context Data Manager

Context History

Data Base Context Knowledge Base

Rule Engine Query Engine

Providers´ Registry

Context Data Aggregator

Context Data Mapper Factory

Programmatic Mapper

Automatic Mapper

Context Data Mapper Visual

Control Panel

Context Providers´ Layer

Context Entity (Java Bean)

Provider

Status

Context Data

Wrapper

Registration/ Unregistration

Context Data

Wrapper

Applications

Page 11: Mobile context data management framework

3. Detailed description of the framework

Context Data Manager

Context History

Data Base Context Knowledge Base

Rule Engine Query Engine

Providers´ Registry

Context Data Aggregator

Context Data Mapper Factory

Programmatic Mapper

Automatic Mapper

Context Data Mapper Visual

Control Panel

Context Providers´ Layer

Context Entity (Java Bean)

Provider

Status

Context Data

Wrapper

Registration/ Unregistration

Context Data

Wrapper

Applications

Page 12: Mobile context data management framework

3. Detailed description of the framework

– Context Provider

– Each provider can send data about one specific context entity type and more than one provider can send data about the same context entity type.

• Proactive: it periodically gets data from the context data source.

• Reactive: it waits until an external event occurs.

– Mobile Context Provider

– Proactive and Reactive

– Built-in Providers • Location: latitude, longitude, altitude.

• Moving mode: none, walking, transportation.

• Social data: other Bluetooth devices near the user.

Page 13: Mobile context data management framework

3. Detailed description of the framework

Context Data Manager

Context History

Data Base Context Knowledge Base

Rule Engine Query Engine

Providers´ Registry

Context Data Aggregator

Context Data Mapper Factory

Programmatic Mapper

Automatic Mapper

Context Data Mapper Visual

Control Panel

Context Providers´ Layer

Context Entity (Java Bean)

Provider

Status

Context Data

Wrapper

Registration/ Unregistration

Context Data

Wrapper

Applications

Page 14: Mobile context data management framework

3. Detailed description of the framework

– Context Data Wrapper

– It encapsulates raw data in the form of key/value pairs.

– It also encapsulates other provider configuration properties.

– Context entity type

– Provider ID

– ...

Page 15: Mobile context data management framework

3. Detailed description of the framework

Provider Mobile Device

Context Manager Stream {gps, pulsometer, weather}

Provider Pulsometer

Provider Yahoo Weather

Entity Type: Person Entity Type: Person Entity Type: City

(Id, Loutraki)

(Temperature, 5)

Stream: “weather”

(Id, David)

(Latitude , 5)

(Longitude, 3)

Stream: “gps”

(Id, David)

(Heart rate, 73)

Stream: “pulsometer”

Wrapper

Wrapper

Wrapper

User A

Page 16: Mobile context data management framework

3. Detailed description of the framework

Context Data Manager

Context History

Data Base Context Knowledge Base

Rule Engine Query Engine

Providers´ Registry

Context Data Aggregator

Context Data Mapper Factory

Programmatic Mapper

Automatic Mapper

Context Data Mapper Visual

Control Panel

Context Providers´ Layer

Context Entity (Java Bean)

Provider

Status

Context Data

Wrapper

Registration/ Unregistration

Context Data

Wrapper

Applications

Page 17: Mobile context data management framework

3. Detailed description of the framework

– Providers ´ Registry

– It manages the life cycle of all the registered providers.

• A communication protocol is used in order to register/unregister a provider.

• It periodically sends messages to the registered providers in order to get a status message from them.

– When the developer unregisters a provider, cancels a stream subscription or the provider is no more longer alive, it automatically deletes all the context data it was providing from the manager.

Page 18: Mobile context data management framework

3. Detailed description of the framework

– Providers´Registry visual tools

– It has a visual Control Panel in order to subscribe/unsubscribe to a specific context data stream.

– It automatically creates a window per provider showing all of the received data in real time (debugging tool).

Page 19: Mobile context data management framework

3. Detailed description of the framework

Context Data Manager

Context History

Data Base Context Knowledge Base

Rule Engine Query Engine

Providers´ Registry

Context Data Aggregator

Context Data Mapper Factory

Programmatic Mapper

Automatic Mapper

Context Data Mapper

Visual Control Panel

Context Providers´ Layer

Context Entity (Java Bean)

Provider

Status

Context Data

Wrapper

Registration/ Unregistration

Context Data

Wrapper

Applications

Page 20: Mobile context data management framework

3. Detailed description of the framework

Context Data Manager

Context History

Data Base Context Knowledge Base

Rule Engine Query Engine

Providers´ Registry

Context Data Aggregator

Context Data Mapper Factory

Programmatic Mapper

Automatic Mapper

Context Data Mapper

Visual Control Panel

Context Providers´ Layer

Context Entity (Java Bean)

Provider

Status

Context Data

Wrapper

Registration/ Unregistration

Context Data

Wrapper

Applications

Page 21: Mobile context data management framework

3. Detailed description of the framework

– Context Data Mapper

– It transforms key/value pairs into Java Bean objects type instances that represent different context entities (Person).

• Automatic Mapper

– It automatically transforms key/value pairs into context entity instances.

• Programmatic Mapper

– The developer implements transformations programmatically.

– It allows more complex data transformations, data base access,...

Page 22: Mobile context data management framework

3. Detailed description of the framework

– Automatic Mapper

– Java Bean classes that represent context entities have to be marked using annotations provided by the framework.

Page 23: Mobile context data management framework

3. Detailed description of the framework

Context Data Manager

Context History

Data Base Context Knowledge Base

Rule Engine Query Engine

Providers´ Registry

Context Data Aggregator

Context Data Mapper Factory

Programmatic Mapper

Automatic Mapper

Context Data Mapper

Visual Control Panel

Context Providers´ Layer

Context Entity (Java Bean)

Provider

Status

Context Data

Wrapper

Registration/ Unregistration

Context Data

Wrapper

Applications

Page 24: Mobile context data management framework

3. Detailed description of the framework

– Context Data Aggregator – Data is unified using the specified id.

– It also updates the Context Knowledge Base with up to date data.

– It stores past context in the Context History database.

Page 25: Mobile context data management framework

3. Detailed description of the framework

Context Data Manager

Context History

Data Base Context Knowledge Base

Rule Engine Query Engine

Providers´ Registry

Context Data Aggregator

Context Data Mapper Factory

Programmatic Mapper

Automatic Mapper

Context Data Mapper

Visual Control Panel

Context Providers´ Layer

Context Entity (Java Bean)

Provider

Status

Context Data

Wrapper

Registration/ Unregistration

Context Data

Wrapper

Applications

Page 26: Mobile context data management framework

3. Detailed description of the framework

– Context Knowledge Base

– It contains all the context entity instances, which are stored in memory.

• Rule Engine: the developer can provide rules in order to infer high level context from gathered raw data.

• Query Engine: data from the Knowledge Base can be queried using an object oriented query language.

Page 27: Mobile context data management framework

Index

1. Introduction

2. Architecture overview

3. Detailed description

4. Validation

5. Benefits

6. Conclusions

Page 28: Mobile context data management framework

4. Validation of the framework

– Mobile tourism service

– It is a push service that sends personalized notifications to mobile devices according to the visitors’ context on a defined area.

Mobile Client Server Side Notification Manager

User Profile Social Context

Location Moving Mode

Time Date

Temperature Other

Page 29: Mobile context data management framework

4. Validation of the framework

• Transportation Information Scenario

– Tourism entity: bus company.

– Context parameters: location and moving mode (none).

If a visitor is waiting for the bus, the system pushes a notification with an estimation of the remaining time for the bus to arrive.

Bus arrival estimation time

Location = Bus stop Moving mode = “none”

Bus Company

Page 30: Mobile context data management framework

Index

1. Introduction

2. Architecture overview

3. Detailed description

4. Validation

5. Benefits

6. Conclusions

Page 31: Mobile context data management framework

SOCAM CoBra

Semantic Spaces

CASS Context Toolkit

CMF

JCAF

5. Benefits of the framework

Hydrogen

Page 32: Mobile context data management framework

5. Benefits of the framework

– The framework provides several improvements compared with mentioned approaches

– Context data life cycle is automatically managed

• Context raw data is automatically transformed into the context model

• Context data is automatically updated

• Providers’ states are taken into account

– Any context data model can be used

– Debugging tools are provided

– Mobility support is provided

– It has a flexible configuration

Page 33: Mobile context data management framework

SOCAM CoBra

Semantic Spaces

CASS Context Toolkit

CMF

JCAF

5. Benefits of the framework

Hydrogen

Page 34: Mobile context data management framework

5. Benefits of the framework

– The framework provides several improvements compared with related work.

– Context data life cycle is automatically managed

– Any context data model can be used

– It can be used with any object oriented context model implemented by the programmer

– Debugging tools are provided

– Mobility support is provided

– It has a flexible configuration

Page 35: Mobile context data management framework

SOCAM CoBra

Semantic Spaces

CASS Context Toolkit

CMF

JCAF

5. Benefits of the framework

Hydrogen

Page 36: Mobile context data management framework

5. Benefits of the framework

– The framework provides several improvements compared with related work.

– Context data life cycle is automatically managed

– Any context data model can be used

– Debugging tools are provided

– Visual debugging tools are provided in order to assist developers in the prototyping stage.

– Mobility support is provided

– It has a flexible configuration

Page 37: Mobile context data management framework

SOCAM CoBra

Semantic Spaces

CASS Context Toolkit

CMF

JCAF

5. Benefits of the framework

Hydrogen

Page 38: Mobile context data management framework

5. Benefits of the framework

– The framework provides several improvements compared with related work.

– Context data life cycle is automatically managed

– Any context data model can be used

– Debugging tools are provided

– Mobility support is provided

– It has a mobile extension in order to get context data from user’s mobile device.

– It has a flexible configuration

Page 39: Mobile context data management framework

SOCAM CoBra

Semantic Spaces

CASS Context Toolkit

CMF

JCAF

5. Benefits of the framework

Hydrogen

Page 40: Mobile context data management framework

5. Benefits of the framework

– The framework provides several improvements compared with related work.

– Context data life cycle is automatically managed

– Any context data model can be used

– Debugging tools are provided

– Mobility support is provided

– It has a flexible configuration

– The configuration is based on a publish/subscribe system, that makes the framework easily extensible and adaptable to different application domains.

Page 41: Mobile context data management framework

SOCAM CoBra

Semantic Spaces

CASS Context Toolkit

CMF

JCAF

5. Benefits of the framework

Hydrogen

Page 42: Mobile context data management framework

Index

1. Introduction

2. Architecture overview

3. Detailed description

4. Validation

5. Benefits

6. Conclusions

Page 43: Mobile context data management framework

6. Conclusions

– The development of contextual computing applications is complex.

– Developers do not have the right tools to easily implement such services.

– Our work

– Developer oriented framework.

– It can enhance the development of applications that adapt and react to the user context.