SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
PLATAFORMA WEB Y METODOLOGÍA PARA EL
DESARROLLO DE SISTEMAS SENSIBLES AL
CONTEXTO BASADA EN LA COLABORACIÓN ENTRE
PROGRAMADORES Y EXPERTOS EN EL DOMINIO
Candidato: David Martín del Canto
Directores: Dr. Diego López de Ipiña y Dra. Aurkene Alzua Sorzabal
Programa: Ingeniería Informática y Telecomunicación

Facultad de Ingeniería
Deusto – Bilbao, June 7th 2013
Outline
 Introduction
 Theoretical framework
 Situation-Driven Development methodology

 Context Cloud platform
 Evaluation

 Conclusions

2
Outline
 Introduction
 Theoretical framework
 Situation-Driven Development methodology

 Context Cloud platform
 Evaluation

 Conclusions

3
Introduction
• Ubiquitous computing is a reality
 Mobile environment
More than four billion of mobile devices
An open window to information and services at any time and

place

 Context is a key point for an optimal user experience

 Context-Aware computing
A style of computing in which situational and environmental
information is used to anticipate immediate needs and
proactively offer enriched, situation-aware content (Gartner
Research)

4
Introduction: problem description
• The development of context-aware systems is

difficult
 Technical challenges
Gathering of context data (distributed and heterogeneous)
Processing (context data model)
Management (inference->situations)

Adaptation to situations

 Other challenges
Identification, definition and parameterization of situations

Dependent on the application domain
Manufacturing

Tourism

Health care

…
5
Introduction: problem description
• Collaboration among domain experts and

programmers
 Domain experts can better identify the situations that can be

relevant for the system to be developed
• To promote this collaboration
 Toolkits
 To 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

between domain experts and programmers

6
Introduction: hypothesis
It is possible to involve domain experts in the
development life-cycle of context-aware
systems in collaboration with programmers,
by providing software toolkits and
development methodologies adapted to
people that do not have programming skills

G1. Collaborative development methodology

G2. Context-aware software platform

7
Outline
 Introduction
 Theoretical framework
 Situation-Driven Development methodology

 Context Cloud platform
 Evaluation

 Conclusions

8
Theoretical framework: context
• Definitions
 Surroundings (Brown, 1996; Chen and Kotz, 2000)
 Task or activity of the user (Hull et al., 1997)

 Information to characterize the situation of an entity

(Lieberman and Selker, 2000; Ye et al., 2011)
• The most referenced definition
“Context is any information that can be used to characterize the
situation of an entity.
An entity is a person, place, or object that is considered relevant
to the interaction between a user and an application, including
the user and application themselves” (Dey, 2001).

9
Theoretical framework: context

“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 (living
being, place, object) and adapt the system’s
behaviour to that situation”

10
Theoretical framework: situation
• Definitions
 A situation is dependent on the context data and it can be

considered as an abstraction of it (Yau and Huang, 2006; Dey
2001)

“A situation is the state of the current and past
context data at a certain region in space and a
concrete interval in time”

11
Theoretical framework: context & situation
E2 => S3 (t2)
High-level context

E1 => S1 (t1)

E3 (S0) => S4 (t3)

S2

c1

c3

c4

Low-level context

c5

c6

c7

c8

c2
A1

A2

A3

Cooking
A cook is located in the kitchen, he is using a knife and it is time to have lunch
Entity

Space

Dependent situation

Time
12
Outline
 Introduction
 Theoretical framework
 Situation-Driven Development methodology

 Context Cloud platform
 Evaluation

 Conclusions

13
Situation-Driven Development: literature review
• Software development methodologies
 General development methodologies
Waterfall, iterative, spiral (Green and DiCaterino, 1998).

 Context Modelling Language (CML) (Henricksen and

Indulska, 2006)
 Context-Oriented Programming (COP) (Hirschfeld et al.,
2008)
There are no specific development methodologies to
guide the implementation of context-aware systems
in collaboration with domain experts

14
Situation-Driven Development: requirements
• Requirements for the development

methodology
 Focused in the identification of situations (4W1H) (Oh

et al., 2006)
Which situation has to be identified?
Who can be in such situation?

Where can it be detected?
When can it be detected?
How can it be detected?

 Collaborative methodology
Domain experts and programmers

15
Situation-Driven Development
• Collaborative development methodology
 Five stages
Analysis
Configuration
Development
Validation
Maintenance

16
Situation-Driven Development: analysis

17
Situation-Driven Development: configuration

Context-aware toolkit

18
Situation-Driven Development: development

Software/hardware
Outputs

Context-aware toolkit

Inputs
19
Situation-Driven Development: validation

Software/hardware
Outputs

Context-aware toolkit

Inputs
20
Situation-Driven Development: maintenance

Software/hardware
Outputs

Context-aware toolkit

Inputs
21
Outline
 Introduction
 Theoretical framework
 Situation-Driven Development methodology

 Context Cloud platform
 Evaluation

 Conclusions

22
Context Cloud: literature review
• Requirements
1.
2.

3.
4.
5.

6.
7.
8.

Data model
Runtime configurations
Automatic context data management
Reasoning
Location
End-user development (EUD)
Visual programming
Web

23
Context Cloud: literature review
Data model
Context Toolkit

Web

Relational

CMF

Visual
Programming

Ontologies

CASS

EUD

Object
oriented

Semantic Space
Toolkit

Location

Ontologies

JCAF

Reasoning

Ontologies

CoBra

Automatic
management

Key-value
pairs

SOCAM

Runtime
configurations

Ontologies

Hydrogen
DiaSuite
OPEN

Object
oriented
Object
oriented
Ontologies

24
Context Cloud: architecture and functionalities
Application
Management
Providers
Sources

Software / Hardware

Programmer

XML

Web Interface
POST

Context cloud
Knowledge
Base

Rule 1

Rule
Engine

A1

Rule 2
Context
Model DB

Mapping
Engine

C1

A2

GIS
Service
Active
Provider

Passive
Provider

POST

End-user Development

Web of Things Cloud computing

• Architecture and functionalities

XML

Domain Expert

GET

C2

Programmer

Programmer

25
Context Cloud: demo

Donostia

26
27
Outline
 Introduction
 Theoretical framework
 Situation-Driven Development methodology

 Context Cloud platform
 Evaluation

 Conclusions

28
Evaluation: reasoning performance
• Configurations
1) Number of context entity instances
{1,000, 5,000, 10,000, 15,000, 20,000}

2) Number of context entity properties
{1, 2, 3, 4, 5}

3) Number of rules
{100, 200, 300, 400, 500}

4) Number of entities used in the rule conditions
{1, 2}

• Reasoning time <= 1second

29
Evaluation: reasoning performance
• Results
1)

Time (ms)

Time (ms)

2)

Number of properties

Number of instances

3)
Time (ms)

Time (ms)

4)

1 second

Number of rules

Number of instances
30
Evaluation: reasoning performance
• Conclusions
 Minimize
Number of rules
Number of instances
Number of entities

 Maximize
Number of properties used in the rule conditions
RAM memory

31
Evaluation: user evaluation
• Participants
 Tourism Domain Experts (10) and Programmers (10)
 Pairs composed by a Domain Expert and a Programmer

 They were introduced to the methodology, to the platform and

to the experiment’s objectives

32
Evaluation: user evaluation
• Procedure
 Participants had to identify and detect four situations using the
methodology and the platform
 Waiting for the bus

 Situations were simulated using the Siafu Context Simulator
Gros
Bus Stop 2

Bus Stop 1
Visitor

33
Evaluation: user evaluation
• Procedure
 An external observer annotated:
The problems of the participants
The time spent in the configuration of situations

 Participants had to fill out a questionnaire (TAM)
Perceived Ease of Use
Perceived Usefulness
Behavioural Intention

1

Disagree

2

3

4

5

6

Extremely

Quite

Slightly

Slightly

Quite

Extremely

Agree

34
Evaluation: user evaluation
Results: Perceived Ease of Use
Learning is easy (CC, SDD)

Easy to do what they want (CC)

Interaction is clear (CC)
Programmers
Domain experts
Participants

Skilful (CC)

Collaborative work (CC)

Collaborative work (SDD)

Easy to use (CC, SDD)
0%

20%

40%

60%

80%

100%

120%

35
Evaluation: user evaluation
Results: Perceived Usefulness
Develop faster (CC)

Performance, productivity, effectiveness (CC)

Useful for their jobs (CC)

Programmers

Useful to do a collaborative work (CC)

Participants
Useful to do a collaborative work (SDD)

SDD is useful to work with CC
SDD is useful to develop context-aware
systems
0%

20%

40%

60%

80%

100%

120%

36
Evaluation: user evaluation
Results: Behavioural Intention

Would recommend CC

Programmers
Domain experts

Would use CC

Participants

Would pay for CC

0%

20%

40%

60%

80%

100%

120%

37
Evaluation: user evaluation
• Results of the observation
 Analysis stage
The excel sheet promotes the discussion between domain

experts and programmers

 Configuration stage
30% of the situations were fully configured by domain experts
with no intervention of programmers
 Average time spent to finish the evaluation test
89 minutes

38
Evaluation: user evaluation
• Conclusions
 Situation-Driven Development methodology
 It can be used to guide the development of context-aware systems.

 It is suitable for non-technical users
 It is useful to promote a collaborative work

 Context Cloud platform
 Learning how to use the platform can be difficult, specially for

domain experts, but users get more confident as they use it.
 It is perceived as a useful platform in order to develop contextaware systems.
 It is suitable for non-technical users
 It facilitates the collaborative development of context-aware
systems.
 It is useful to promote a collaborative work
39
Evaluation: user evaluation
• Conclusions

G1. Collaborative development methodology (SDD)
G2. Context-aware software platform (CC)
It is possible to involve domain experts in the
development life-cycle of context-aware
systems in collaboration with programmers,
by providing software toolkits and
development methodologies adapted to
people that do not have programming skills
40
Outline
 Introduction
 Theoretical framework
 Situation-Driven Development methodology

 Context Cloud platform
 Evaluation

 Conclusions

41
Conclusions: contributions
1. Theoretical contribution

• Context
• Situation
2. Situation-Driven Development

methodology
3. Context Cloud platform
4. Involvement of domain experts in the
development process
42
Conclusions: implications
• Data to be considered in context-aware

systems
• Complementary technologies and
scientific fields
• Involvement of domain experts in the
development process
• Design of methodologies and contextaware toolkits
43
Conclusions: future work
• Research on context theory
• Complementary reasoning algorithms

• Uncertainty in context-aware reasoning
• Quality of sensor data
• Automatic context data source discovery

• Automatic rule creation
• Development of context-aware systems by

domain experts

44
PLATAFORMA WEB Y METODOLOGÍA PARA EL
DESARROLLO DE SISTEMAS SENSIBLES AL
CONTEXTO BASADA EN LA COLABORACIÓN ENTRE
PROGRAMADORES Y EXPERTOS EN EL DOMINIO
Candidato: David Martín del Canto
Directores: Dr. Diego López de Ipiña y Dra. Aurkene Alzua Sorzabal
Programa: Ingeniería Informática y Telecomunicación

Facultad de Ingeniería
Deusto – Bilbao, June 7th 2013

Weitere ähnliche Inhalte

Ähnlich wie Plataforma web y metodología para el desarrollo de sistemas sensibles al contexto basada en la colaboración entre programadores y expertos en el dominio

System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)fentrekin
 
Week4 lecture
Week4 lectureWeek4 lecture
Week4 lecturefentrekin
 
IT Governance & Management in Healthcare Organizations: Part 1 (October 16, 2...
IT Governance & Management in Healthcare Organizations: Part 1 (October 16, 2...IT Governance & Management in Healthcare Organizations: Part 1 (October 16, 2...
IT Governance & Management in Healthcare Organizations: Part 1 (October 16, 2...Nawanan Theera-Ampornpunt
 
IT Governance & Management in Healthcare Organizations: Part 1 (October 19, 2...
IT Governance & Management in Healthcare Organizations: Part 1 (October 19, 2...IT Governance & Management in Healthcare Organizations: Part 1 (October 19, 2...
IT Governance & Management in Healthcare Organizations: Part 1 (October 19, 2...Nawanan Theera-Ampornpunt
 
Problem Solving Methods
Problem Solving MethodsProblem Solving Methods
Problem Solving MethodsMaikel Mardjan
 
IT Governance & Management in Healthcare Organizations: Part 1
IT Governance & Management in Healthcare Organizations: Part 1IT Governance & Management in Healthcare Organizations: Part 1
IT Governance & Management in Healthcare Organizations: Part 1Nawanan Theera-Ampornpunt
 
DSD-INT 2014 - OpenMI Symposium - Federated modelling of Critical Infrastruct...
DSD-INT 2014 - OpenMI Symposium - Federated modelling of Critical Infrastruct...DSD-INT 2014 - OpenMI Symposium - Federated modelling of Critical Infrastruct...
DSD-INT 2014 - OpenMI Symposium - Federated modelling of Critical Infrastruct...Deltares
 
Perception.JS - A Framework for Context Acquisition Processing and Presentation
Perception.JS - A Framework for Context Acquisition Processing and PresentationPerception.JS - A Framework for Context Acquisition Processing and Presentation
Perception.JS - A Framework for Context Acquisition Processing and PresentationSupun Dissanayake
 
Open Engineering Framework
Open Engineering FrameworkOpen Engineering Framework
Open Engineering FrameworkJohn Vogel
 
Expert mining compsac-2014
Expert mining compsac-2014Expert mining compsac-2014
Expert mining compsac-2014GESSI UPC
 
90seconds Presentation
90seconds Presentation90seconds Presentation
90seconds Presentationpbihler
 
IOT-2016 7-9 Septermber, 2016, Stuttgart, Germany
IOT-2016  7-9 Septermber, 2016, Stuttgart, GermanyIOT-2016  7-9 Septermber, 2016, Stuttgart, Germany
IOT-2016 7-9 Septermber, 2016, Stuttgart, GermanyCharith Perera
 
Multi-agent applications in a context-aware global software development envir...
Multi-agent applications in a context-aware global software development envir...Multi-agent applications in a context-aware global software development envir...
Multi-agent applications in a context-aware global software development envir...Helio Henrique L. C. Monte-Alto
 
2006-03-21 Work Group Meeting on IT Techniques, Tools and Philosophies for Mo...
2006-03-21 Work Group Meeting on IT Techniques, Tools and Philosophies for Mo...2006-03-21 Work Group Meeting on IT Techniques, Tools and Philosophies for Mo...
2006-03-21 Work Group Meeting on IT Techniques, Tools and Philosophies for Mo...Rudolf Husar
 
Collaborative and Coordinated Shared & Structured Space based Partnership fo...
Collaborative and Coordinated  Shared & Structured Space based Partnership fo...Collaborative and Coordinated  Shared & Structured Space based Partnership fo...
Collaborative and Coordinated Shared & Structured Space based Partnership fo...Global Risk Forum GRFDavos
 
National cybersecurity capacity building framework for countries in a transit...
National cybersecurity capacity building framework for countries in a transit...National cybersecurity capacity building framework for countries in a transit...
National cybersecurity capacity building framework for countries in a transit...Mohamed Ben Naseir
 

Ähnlich wie Plataforma web y metodología para el desarrollo de sistemas sensibles al contexto basada en la colaboración entre programadores y expertos en el dominio (20)

System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)
 
Week4 lecture
Week4 lectureWeek4 lecture
Week4 lecture
 
IT Governance & Management in Healthcare Organizations: Part 1 (October 16, 2...
IT Governance & Management in Healthcare Organizations: Part 1 (October 16, 2...IT Governance & Management in Healthcare Organizations: Part 1 (October 16, 2...
IT Governance & Management in Healthcare Organizations: Part 1 (October 16, 2...
 
IT Governance & Management in Healthcare Organizations: Part 1 (October 19, 2...
IT Governance & Management in Healthcare Organizations: Part 1 (October 19, 2...IT Governance & Management in Healthcare Organizations: Part 1 (October 19, 2...
IT Governance & Management in Healthcare Organizations: Part 1 (October 19, 2...
 
Problem Solving Methods
Problem Solving MethodsProblem Solving Methods
Problem Solving Methods
 
IT Governance & Management in Healthcare Organizations: Part 1
IT Governance & Management in Healthcare Organizations: Part 1IT Governance & Management in Healthcare Organizations: Part 1
IT Governance & Management in Healthcare Organizations: Part 1
 
DSD-INT 2014 - OpenMI Symposium - Federated modelling of Critical Infrastruct...
DSD-INT 2014 - OpenMI Symposium - Federated modelling of Critical Infrastruct...DSD-INT 2014 - OpenMI Symposium - Federated modelling of Critical Infrastruct...
DSD-INT 2014 - OpenMI Symposium - Federated modelling of Critical Infrastruct...
 
dss
dssdss
dss
 
Perception.JS - A Framework for Context Acquisition Processing and Presentation
Perception.JS - A Framework for Context Acquisition Processing and PresentationPerception.JS - A Framework for Context Acquisition Processing and Presentation
Perception.JS - A Framework for Context Acquisition Processing and Presentation
 
Open Engineering Framework
Open Engineering FrameworkOpen Engineering Framework
Open Engineering Framework
 
Expert mining compsac-2014
Expert mining compsac-2014Expert mining compsac-2014
Expert mining compsac-2014
 
90seconds Presentation
90seconds Presentation90seconds Presentation
90seconds Presentation
 
ThesisPresentation
ThesisPresentationThesisPresentation
ThesisPresentation
 
IOT-2016 7-9 Septermber, 2016, Stuttgart, Germany
IOT-2016  7-9 Septermber, 2016, Stuttgart, GermanyIOT-2016  7-9 Septermber, 2016, Stuttgart, Germany
IOT-2016 7-9 Septermber, 2016, Stuttgart, Germany
 
Multi-agent applications in a context-aware global software development envir...
Multi-agent applications in a context-aware global software development envir...Multi-agent applications in a context-aware global software development envir...
Multi-agent applications in a context-aware global software development envir...
 
RFCs for HDF5 and HDF-EOS5 Status Update
RFCs for HDF5 and HDF-EOS5 Status UpdateRFCs for HDF5 and HDF-EOS5 Status Update
RFCs for HDF5 and HDF-EOS5 Status Update
 
2006-03-21 Work Group Meeting on IT Techniques, Tools and Philosophies for Mo...
2006-03-21 Work Group Meeting on IT Techniques, Tools and Philosophies for Mo...2006-03-21 Work Group Meeting on IT Techniques, Tools and Philosophies for Mo...
2006-03-21 Work Group Meeting on IT Techniques, Tools and Philosophies for Mo...
 
JCDL 2013 DOCTORAL CONSORTIUM
JCDL 2013 DOCTORAL CONSORTIUMJCDL 2013 DOCTORAL CONSORTIUM
JCDL 2013 DOCTORAL CONSORTIUM
 
Collaborative and Coordinated Shared & Structured Space based Partnership fo...
Collaborative and Coordinated  Shared & Structured Space based Partnership fo...Collaborative and Coordinated  Shared & Structured Space based Partnership fo...
Collaborative and Coordinated Shared & Structured Space based Partnership fo...
 
National cybersecurity capacity building framework for countries in a transit...
National cybersecurity capacity building framework for countries in a transit...National cybersecurity capacity building framework for countries in a transit...
National cybersecurity capacity building framework for countries in a transit...
 

Kürzlich hochgeladen

Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 

Kürzlich hochgeladen (20)

Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 

Plataforma web y metodología para el desarrollo de sistemas sensibles al contexto basada en la colaboración entre programadores y expertos en el dominio

  • 1. PLATAFORMA WEB Y METODOLOGÍA PARA EL DESARROLLO DE SISTEMAS SENSIBLES AL CONTEXTO BASADA EN LA COLABORACIÓN ENTRE PROGRAMADORES Y EXPERTOS EN EL DOMINIO Candidato: David Martín del Canto Directores: Dr. Diego López de Ipiña y Dra. Aurkene Alzua Sorzabal Programa: Ingeniería Informática y Telecomunicación Facultad de Ingeniería Deusto – Bilbao, June 7th 2013
  • 2. Outline  Introduction  Theoretical framework  Situation-Driven Development methodology  Context Cloud platform  Evaluation  Conclusions 2
  • 3. Outline  Introduction  Theoretical framework  Situation-Driven Development methodology  Context Cloud platform  Evaluation  Conclusions 3
  • 4. Introduction • Ubiquitous computing is a reality  Mobile environment More than four billion of mobile devices An open window to information and services at any time and place  Context is a key point for an optimal user experience  Context-Aware computing A style of computing in which situational and environmental information is used to anticipate immediate needs and proactively offer enriched, situation-aware content (Gartner Research) 4
  • 5. Introduction: problem description • The development of context-aware systems is difficult  Technical challenges Gathering of context data (distributed and heterogeneous) Processing (context data model) Management (inference->situations) Adaptation to situations  Other challenges Identification, definition and parameterization of situations Dependent on the application domain Manufacturing Tourism Health care … 5
  • 6. Introduction: problem description • Collaboration among domain experts and programmers  Domain experts can better identify the situations that can be relevant for the system to be developed • To promote this collaboration  Toolkits  To 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 between domain experts and programmers 6
  • 7. Introduction: hypothesis It is possible to involve domain experts in the development life-cycle of context-aware systems in collaboration with programmers, by providing software toolkits and development methodologies adapted to people that do not have programming skills G1. Collaborative development methodology G2. Context-aware software platform 7
  • 8. Outline  Introduction  Theoretical framework  Situation-Driven Development methodology  Context Cloud platform  Evaluation  Conclusions 8
  • 9. Theoretical framework: context • Definitions  Surroundings (Brown, 1996; Chen and Kotz, 2000)  Task or activity of the user (Hull et al., 1997)  Information to characterize the situation of an entity (Lieberman and Selker, 2000; Ye et al., 2011) • The most referenced definition “Context is any information that can be used to characterize the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and application themselves” (Dey, 2001). 9
  • 10. Theoretical framework: context “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 (living being, place, object) and adapt the system’s behaviour to that situation” 10
  • 11. Theoretical framework: situation • Definitions  A situation is dependent on the context data and it can be considered as an abstraction of it (Yau and Huang, 2006; Dey 2001) “A situation is the state of the current and past context data at a certain region in space and a concrete interval in time” 11
  • 12. Theoretical framework: context & situation E2 => S3 (t2) High-level context E1 => S1 (t1) E3 (S0) => S4 (t3) S2 c1 c3 c4 Low-level context c5 c6 c7 c8 c2 A1 A2 A3 Cooking A cook is located in the kitchen, he is using a knife and it is time to have lunch Entity Space Dependent situation Time 12
  • 13. Outline  Introduction  Theoretical framework  Situation-Driven Development methodology  Context Cloud platform  Evaluation  Conclusions 13
  • 14. Situation-Driven Development: literature review • Software development methodologies  General development methodologies Waterfall, iterative, spiral (Green and DiCaterino, 1998).  Context Modelling Language (CML) (Henricksen and Indulska, 2006)  Context-Oriented Programming (COP) (Hirschfeld et al., 2008) There are no specific development methodologies to guide the implementation of context-aware systems in collaboration with domain experts 14
  • 15. Situation-Driven Development: requirements • Requirements for the development methodology  Focused in the identification of situations (4W1H) (Oh et al., 2006) Which situation has to be identified? Who can be in such situation? Where can it be detected? When can it be detected? How can it be detected?  Collaborative methodology Domain experts and programmers 15
  • 16. Situation-Driven Development • Collaborative development methodology  Five stages Analysis Configuration Development Validation Maintenance 16
  • 22. Outline  Introduction  Theoretical framework  Situation-Driven Development methodology  Context Cloud platform  Evaluation  Conclusions 22
  • 23. Context Cloud: literature review • Requirements 1. 2. 3. 4. 5. 6. 7. 8. Data model Runtime configurations Automatic context data management Reasoning Location End-user development (EUD) Visual programming Web 23
  • 24. Context Cloud: literature review Data model Context Toolkit Web Relational CMF Visual Programming Ontologies CASS EUD Object oriented Semantic Space Toolkit Location Ontologies JCAF Reasoning Ontologies CoBra Automatic management Key-value pairs SOCAM Runtime configurations Ontologies Hydrogen DiaSuite OPEN Object oriented Object oriented Ontologies 24
  • 25. Context Cloud: architecture and functionalities Application Management Providers Sources Software / Hardware Programmer XML Web Interface POST Context cloud Knowledge Base Rule 1 Rule Engine A1 Rule 2 Context Model DB Mapping Engine C1 A2 GIS Service Active Provider Passive Provider POST End-user Development Web of Things Cloud computing • Architecture and functionalities XML Domain Expert GET C2 Programmer Programmer 25
  • 27. 27
  • 28. Outline  Introduction  Theoretical framework  Situation-Driven Development methodology  Context Cloud platform  Evaluation  Conclusions 28
  • 29. Evaluation: reasoning performance • Configurations 1) Number of context entity instances {1,000, 5,000, 10,000, 15,000, 20,000} 2) Number of context entity properties {1, 2, 3, 4, 5} 3) Number of rules {100, 200, 300, 400, 500} 4) Number of entities used in the rule conditions {1, 2} • Reasoning time <= 1second 29
  • 30. Evaluation: reasoning performance • Results 1) Time (ms) Time (ms) 2) Number of properties Number of instances 3) Time (ms) Time (ms) 4) 1 second Number of rules Number of instances 30
  • 31. Evaluation: reasoning performance • Conclusions  Minimize Number of rules Number of instances Number of entities  Maximize Number of properties used in the rule conditions RAM memory 31
  • 32. Evaluation: user evaluation • Participants  Tourism Domain Experts (10) and Programmers (10)  Pairs composed by a Domain Expert and a Programmer  They were introduced to the methodology, to the platform and to the experiment’s objectives 32
  • 33. Evaluation: user evaluation • Procedure  Participants had to identify and detect four situations using the methodology and the platform  Waiting for the bus  Situations were simulated using the Siafu Context Simulator Gros Bus Stop 2 Bus Stop 1 Visitor 33
  • 34. Evaluation: user evaluation • Procedure  An external observer annotated: The problems of the participants The time spent in the configuration of situations  Participants had to fill out a questionnaire (TAM) Perceived Ease of Use Perceived Usefulness Behavioural Intention 1 Disagree 2 3 4 5 6 Extremely Quite Slightly Slightly Quite Extremely Agree 34
  • 35. Evaluation: user evaluation Results: Perceived Ease of Use Learning is easy (CC, SDD) Easy to do what they want (CC) Interaction is clear (CC) Programmers Domain experts Participants Skilful (CC) Collaborative work (CC) Collaborative work (SDD) Easy to use (CC, SDD) 0% 20% 40% 60% 80% 100% 120% 35
  • 36. Evaluation: user evaluation Results: Perceived Usefulness Develop faster (CC) Performance, productivity, effectiveness (CC) Useful for their jobs (CC) Programmers Useful to do a collaborative work (CC) Participants Useful to do a collaborative work (SDD) SDD is useful to work with CC SDD is useful to develop context-aware systems 0% 20% 40% 60% 80% 100% 120% 36
  • 37. Evaluation: user evaluation Results: Behavioural Intention Would recommend CC Programmers Domain experts Would use CC Participants Would pay for CC 0% 20% 40% 60% 80% 100% 120% 37
  • 38. Evaluation: user evaluation • Results of the observation  Analysis stage The excel sheet promotes the discussion between domain experts and programmers  Configuration stage 30% of the situations were fully configured by domain experts with no intervention of programmers  Average time spent to finish the evaluation test 89 minutes 38
  • 39. Evaluation: user evaluation • Conclusions  Situation-Driven Development methodology  It can be used to guide the development of context-aware systems.  It is suitable for non-technical users  It is useful to promote a collaborative work  Context Cloud platform  Learning how to use the platform can be difficult, specially for domain experts, but users get more confident as they use it.  It is perceived as a useful platform in order to develop contextaware systems.  It is suitable for non-technical users  It facilitates the collaborative development of context-aware systems.  It is useful to promote a collaborative work 39
  • 40. Evaluation: user evaluation • Conclusions G1. Collaborative development methodology (SDD) G2. Context-aware software platform (CC) It is possible to involve domain experts in the development life-cycle of context-aware systems in collaboration with programmers, by providing software toolkits and development methodologies adapted to people that do not have programming skills 40
  • 41. Outline  Introduction  Theoretical framework  Situation-Driven Development methodology  Context Cloud platform  Evaluation  Conclusions 41
  • 42. Conclusions: contributions 1. Theoretical contribution • Context • Situation 2. Situation-Driven Development methodology 3. Context Cloud platform 4. Involvement of domain experts in the development process 42
  • 43. Conclusions: implications • Data to be considered in context-aware systems • Complementary technologies and scientific fields • Involvement of domain experts in the development process • Design of methodologies and contextaware toolkits 43
  • 44. Conclusions: future work • Research on context theory • Complementary reasoning algorithms • Uncertainty in context-aware reasoning • Quality of sensor data • Automatic context data source discovery • Automatic rule creation • Development of context-aware systems by domain experts 44
  • 45. PLATAFORMA WEB Y METODOLOGÍA PARA EL DESARROLLO DE SISTEMAS SENSIBLES AL CONTEXTO BASADA EN LA COLABORACIÓN ENTRE PROGRAMADORES Y EXPERTOS EN EL DOMINIO Candidato: David Martín del Canto Directores: Dr. Diego López de Ipiña y Dra. Aurkene Alzua Sorzabal Programa: Ingeniería Informática y Telecomunicación Facultad de Ingeniería Deusto – Bilbao, June 7th 2013