Upload
damarcant
View
81
Download
1
Tags:
Embed Size (px)
Citation preview
A WEB PLATFORM AND A METHODOLOGY TO
PROMOTE A COLLABORATIVE DEVELOPMENT
OF CONTEXT-AWARE SYSTEMS
David Martín, Carlos Lamsfus, Aurkene Alzua, Diego López-de-Ipiña
•Outline •Motivation
•Related work
•Theoretical framework
•Context Cloud
•Situation-Driven Development
•Conclusions
•Outline •Motivation
•Related work
•Theoretical framework
•Context Cloud
•Situation-Driven Development
•Conclusions
Motivation
How can we personalize information and services to
people’s needs in mobile environments?
Motivation
CONTEXT!!
Motivation
• The development of context-aware systems is difficult
• Technical challenges
• Context data has to be…
• Obtained (distributed, heterogeneous)
• Processed (data model)
• Managed (inference->situations)
• The system has to be adapted to the identified situation
• Definition of situations
• Which are the relevant situations?
• Where is the needed context information?
• Which are the desired behaviors of the system?
Dependent on the application domain
Manufacturing Tourism Health care …
Motivation
• We need…
• The collaboration among Domain Experts and
Programmers in the development process. They can better
identify the situations of users that can be relevant for the
system to be developed.
• Toolkits that can make easier the development of Context-
Aware Systems, even for people that do not have
programming skills
• Development methodologies to guide the development
process, focused in the collaboration among Domain Experts
and Programmers
•Outline
•Motivation •Related work
•Theoretical framework
•Context Cloud
•Situation-Driven Development
•Conclusions
Related work
• Software development toolkits
• Drawbacks • User’s mobility not supported - Geographic Information System (GIS)
• Hardly extensible
• Low-level APIs for skilled programmers
Related work
• Development methodologies
• Drawbacks • General development methodologies
• Designed for programmers
•Outline
•Motivation
•Related work •Theoretical framework
•Context Cloud
•Situation-Driven Development
•Conclusions
Theoretical framework
• Context is…
“… any information that can be obtained and
processed by a hardware or a software system,
in order to identify the situation of an entity
and adapt the system’s behaviour to that situation”.
{sleeping, at home, …} {living being, place, object}
Theoretical framework
• A situation is…
… the state of a subset of the available context
information at a certain region in space and at a
concrete interval in time”.
Going out on
a rainy day
Bus stop Hotel room
Waiting for
the bus
•Outline
•Motivation
•Related work
•Theoretical framework •Context Cloud
•Situation-Driven Development
•Conclusions
Context Cloud
Waiting for
the bus
Going out on
a rainy day Warm place
CONTEXT CLOUD
Bus stop Hotel room Beach
Domain expert
Programmer
Programmer
CONTEXT-AWARE
SYSTEM
End user
Context Cloud
• A web platform for the collaborative development of
Context-Aware Systems
Domain expert
Programmer
• Technical overview of the system
• Implementation of the final service using
the generated outputs to adapt the
behavior of the system
• Knowledge about the application domain
• Situations
Context Cloud: functionalities
CONTEXT CLOUD
Domain expert
Programmer
Active
Provider
Passive
Provider Rule1 Rule 2
Room
Working
Sleeping
Walking
Providers
GET
POST
Weather service Smartphone
Programmer
XML
Bus stop
CONTEXT-AWARE
SYSTEM Programmer
End user
Context Cloud: screenshots
Context Cloud: screenshots
•Outline
•Motivation
•Related work
•Theoretical framework
•Context Cloud •Situation-Driven Development
•Conclusions
Situation-Driven Development
• Analysis
Situation-Driven Development
• Configuration
Situation-Driven Development
• Development
Situation
information
CONTEXT CLOUD
Inputs
Outputs
Situation-Driven Development
• Development
•Outline
•Motivation
•Related work
•Theoretical framework
•Context Cloud
•Situation-Driven Development •Conclusions
Conclusions • Context Cloud
• Improvements over existing approaches
• Free data model based on entities
• Support for mobility (GIS)
• Extensible at runtime (rules, data model, sources,…)
• Web development environment (involvement of DE)
• Situation-Driven Development
• Improvements over existing approaches
• A methodology specifically designed for the development
of context-aware systems
• Promotes the collaboration between domain experts and
programmers
Conclusions • Evaluation
• Carried out in pairs composed by a Domain Expert and
a Programmer.
• The participants (12) were given a document where four
different situations were described.
• They had to use the methodology and configure the
platform to detect the situations.
• After the evaluation, they had to fill out a questionnaire.
Conclusions • Evaluation
• Some results • 91.7% find that learning how to use the platform and the methodology is
easy.
• 91.7% state that using Context Cloud would enable them to develop
context-aware systems more quickly and easier.
• 83.3% find that Context Cloud eases the collaborative work.
• 83.3% of the non-programmers state that it would be easy for them to
become skilful at using the platform.
• 100% state that the methodology is useful to work with Context Cloud
and to do a collaborative work.
• 91.7% of the participants would recommend other users to use the
platform.
Thank You!! [email protected] http://vimeo.com/contextcloud
www.tourgune.org