toward a cooperative programming framework for context-aware applications b. guo, d. zhang telecom....

33
Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis B. Guo, M. Imai Keio University Personal Ubiquitous Computing 2011 (Journal)

Upload: megan-stevenson

Post on 21-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

Toward a cooperative programming framework

for context-aware applications

B. Guo, D. Zhang

Telecom. Network and Service Dept.

Institut TELECOM SudParis

B. Guo, M. Imai

Keio University

Personal Ubiquitous Computing 2011 (Journal)

Page 2: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

Outline

RELATED WORK

INTRODUCTION

REQUIREMENT AND SOLUTION GUIDELINES THE ‘OPEN’ COOPERATIVE

PROGRAMMING FRAMEWORK

THE TRESURE-GAME SCENARIO

EVALUATIONCONCLUSION

what can do

how to do

do

try itwhen, where, howto use it

find

Page 3: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

introduction

Sensors and Embedded Devices

User

Developer

Context-Aware System

Page 4: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

introduction

Design-before-use

End user programming

Page 5: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

introduction

ToolkitIssues

1. Diversity of user skills and interests2. Cooperation among ‘users’

Page 6: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

introduction

OPENOntology-based programming framework

forrapid prototyping, sharing, and

personalization of

context-aware applications

A set 0f program modes

with diverse complexity

Semantic Web technology

Shared resources

Page 7: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

related work

o Context abstraction (lack of knowledge sharing and reuse)

Context Toolkit <Salber et al.>Solar platform <Chen and Kotz>

CoBrA Project <Chen et al.>Semantic Space <Wang et al.>SO-CAM <Gu et al.>CMM <Yu et al.>Home-explorer <Guo et al.>

o Semantic Web technology (only programming-level abstraction)

Page 8: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

related work

o End Use Programming (neglect non-expert users)

iCAP <Dey et al.>UbiPlay <Mattila and Va a ta nen 5 5 5 >StoryRoom <Montemayor et al.>AutoHan <Blackwell and Hague>

1. The needs of a certain group of users2. The sharing and reuse in resources, applications and user experiences3. “Functionality” and “Simplicity”4. “Program tailoring” and “Program creation”

o Summary

Page 9: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

requirements and solution guidelines

if-thenIF a person enter a room THEN turning on a light

Inference-rule Action Setting

Page 10: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

requirements and solution guidelines

Context Manager

Context Aggregator

Representing and processing contexts

Collecting contexts from heterogeneous sensors

Page 11: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

requirements and solution guidelines

1. A unified, evolving context model to be shared among context-aware

Sharing, reuse, interoperation Ontology standards Unified consistent management mechanism

Cooperation between developers and end users (template, multimedia, channel)

Cooperation among developers (inference rule) Cooperation among end users (finding/experience)

2. Providing multiple programming modes with different complexity

3. Supporting cooperation among users

Three different technical levels (high, middle, low)

Page 12: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

1. Communicate2. Abstract3. Adjust

1. Row context

1. Behavior

Page 13: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

1. Gather context makeup2. Assert into server

1. Maintain context ontology

1. Abstract interface2. extract desired context

1. Execute inference rules

Page 14: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

1. Program new application2. Transform to template

1. Customize template

Page 15: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

Page 16: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

1. Hierarchical definition (upper, domain, individual)

2. Context instances (user-defined, sensed)

Page 17: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

1. Designed and maintained by experts2. Shared through resource-sharing module3. Users only specify the context instances4. Automatically update individualized ontology

Page 18: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

• Support the creation of new context-aware application• Preselect, modify and write inference-rule• SWRL (A Semantic Web Rule Language Combining OWL and RuleML)• Specify default action setting

Page 19: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

• Support the creation of new context-aware application• Select and modify inference-rules• Specify default action setting

Page 20: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

• Customize an existing application• Set the parameters predefined by developer

Page 21: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

Individualizing a variable

Specifying constant values

Specifying actions

Page 22: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

Incremental/Composition mode

Page 23: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

Parameterization mode

Page 24: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the ‘open’ cooperative programming framework

• Developers and End-users:ApplicationMultimedia resourceCommunication channel

• Among Developers:Rule

• Among End-users:Recommend applicationCustomized application

Page 25: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the treasure-game scenario

There are various smart artifacts in a smart home. A game designer can choose some of them to be hided. The selected objects are specified by the designer to act as different roles in the game. He should firstly select a box and a key to act as the roles of “treasure box” and “treasure-box-key”. If the player finds both the two object, he will win this game. Besides the two fixed roles, the designer can select a few other objects to act as other imagined roles. For example, a cup can be used to act as a “guide” that hints the player about the hidden place of the “treasure-box”; a drawer can be used to act as the “shelter of a monster” and when it is opened, a monster residing in it appears on the wall and shouts “Don’t disturb me, I am now sleeping”

Page 26: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the treasure-game scenario1. Ontology individualization

Page 27: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the treasure-game scenario2. Application development 3. Application customization

Page 28: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

the treasure-game scenarioImplementation

SPARQL: Context querying languageProtégé: Parsing OWLJess: Execute user-defined rulesSWRL-Jess Bridge API: Interaction between SERL rules and Jess

Page 29: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

evaluation

USER: 15 Keio University students (12 males, 3 females)AGE: 21~34Programming ability: 20% good, 67% none (users from different disciplines)

Feedback: questionnaireTime: 60-80 min

Page 30: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

evaluation

Mission & Result:

1. Composition mode: select 3 right rules from 15 rule candidatesa. Answer in mean time of 5 minb. 60% of subjects feel not difficult

2. Incremental mode: build a rule in a form-filling style (choose 4 atoms from 13 candidates)a. 40% of subjects give the right answer with little or no assistanceb. 40% of subjects have one or more errorsc. 33% of subjects think they need several day’s training

3. Parameterization mode: customize ‘Treasure game’ through the configuration interfacea. Finish job in 8~17 minb. 80% of subjects feel it is easierc. Use graphical icons instead of text-based interface

Page 31: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

evaluation

Page 32: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

conclusion

Benefits

Future

• A programming environment for context-aware applications• Meet diverse user requirements (different skills, different disciplines)• Facilitate sharing, reusing, cooperating

• User-friendly interface (graphical interface)• Privacy and security issues among cooperation

Page 33: Toward a cooperative programming framework for context-aware applications B. Guo, D. Zhang Telecom. Network and Service Dept. Institut TELECOM SudParis

Q &…A…A