Download presentation
Presentation is loading. Please wait.
Published byMegan Stevenson Modified over 9 years ago
1
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)
2
Outline RELATED WORK INTRODUCTION REQUIREMENT AND SOLUTION GUIDELINES THE ‘OPEN’ COOPERATIVE PROGRAMMING FRAMEWORK THE TRESURE-GAME SCENARIO EVALUATION CONCLUSION what can do how to do do try it when, where, how to use it find
3
introduction Sensors and Embedded Devices User Developer Context-Aware System
4
introduction Design-before-use End user programming
5
introduction Toolkit Issues 1. Diversity of user skills and interests 2. Cooperation among ‘users’
6
introduction OPEN Ontology-based programming framework for rapid prototyping, sharing, and personalization of context-aware applications A set 0f program modes with diverse complexity Semantic Web technology Shared resources
7
related work o Context abstraction (lack of knowledge sharing and reuse) Context Toolkit Solar platform CoBrA Project Semantic Space SO-CAM CMM Home-explorer o Semantic Web technology (only programming-level abstraction)
8
related work o End Use Programming (neglect non-expert users) iCAP UbiPlay StoryRoom AutoHan 1.The needs of a certain group of users 2.The sharing and reuse in resources, applications and user experiences 3.“Functionality” and “Simplicity” 4.“Program tailoring” and “Program creation” o Summary
9
requirements and solution guidelines if-then IF a person enter a room THEN turning on a light Inference-rule Action Setting
10
requirements and solution guidelines Context Manager Context Aggregator Representing and processing contexts Collecting contexts from heterogeneous sensors
11
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)
12
the ‘open’ cooperative programming framework 1.Communicate 2.Abstract 3.Adjust 1.Row context1.Behavior
13
the ‘open’ cooperative programming framework 1.Gather context makeup 2.Assert into server 1.Maintain context ontology 1.Abstract interface 2.extract desired context 1.Execute inference rules
14
the ‘open’ cooperative programming framework 1.Program new application 2.Transform to template 1.Customize template
15
the ‘open’ cooperative programming framework
16
1.Hierarchical definition (upper, domain, individual) 2.Context instances (user-defined, sensed)
17
the ‘open’ cooperative programming framework 1.Designed and maintained by experts 2.Shared through resource-sharing module 3.Users only specify the context instances 4.Automatically update individualized ontology
18
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
19
the ‘open’ cooperative programming framework Support the creation of new context-aware application Select and modify inference-rules Specify default action setting
20
the ‘open’ cooperative programming framework Customize an existing application Set the parameters predefined by developer
21
the ‘open’ cooperative programming framework Individualizing a variable Specifying constant values Specifying actions
22
Incremental/Composition mode
23
Parameterization mode
24
the ‘open’ cooperative programming framework Developers and End-users: Application Multimedia resource Communication channel Among Developers: Rule Among End-users: Recommend application Customized application
25
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”
26
the treasure-game scenario 1. Ontology individualization
27
the treasure-game scenario 2. Application development3. Application customization
28
the treasure-game scenario Implementation SPARQL: Context querying language Protégé: Parsing OWL Jess: Execute user-defined rules SWRL-Jess Bridge API: Interaction between SERL rules and Jess
29
evaluation USER: 15 Keio University students (12 males, 3 females) AGE: 21~34 Programming ability: 20% good, 67% none (users from different disciplines) Feedback: questionnaire Time: 60-80 min
30
evaluation Mission & Result: 1. Composition mode: select 3 right rules from 15 rule candidates a. Answer in mean time of 5 min b. 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 assistance b. 40% of subjects have one or more errors c. 33% of subjects think they need several day’s training 3. Parameterization mode: customize ‘Treasure game’ through the configuration interface a. Finish job in 8~17 min b. 80% of subjects feel it is easier c. Use graphical icons instead of text-based interface
31
evaluation
32
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
33
Q & …A
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.