Upload
buidiep
View
213
Download
0
Embed Size (px)
Citation preview
CONSISTENT MANAGEMENT OF CONTEXT INFORMATION IN
UBIQUITOUS SYSTEMS
Gabriel Guerrero-Contreras
José Luis Garrido
Carlos Rodríguez-Domínguez
Sara Balderas-Díaz
7th International Conference on Internet and Distributed Computing Systems
22nd September 2014
University of Granada Software Engineering Department
OUTLINE
1. Introduction
2. Consistent Management of Context Information
> The Service Entity and Replica Manager
> The Synchronization and Monitoring Services
> The Context Manager
3. Case Study
4. Conclusions and Future Work
G. Guerrero-Contreras et al. 2
1. INTRODUCTION (1)
• Context-aware systems use the context information to make decisions about their future behavior
• Ubiquitous environments make use of context-aware techniques to provide a natural and unconscious interaction with the computational system to the user
• Features of ubiquitous environment can affect to the consistency of distributed context information > Uneven conditioning, limited resources, dynamic network
topology, etc.
G. Guerrero-Contreras et al. 3
1. INTRODUCTION (& 2)
G. Guerrero-Contreras et al. 4
Support the synchronization and consistent management of distributed context information
Objective
• SOA, EDA and middleware technologies are not enough to support dynamic environments
• Existing approaches to manage context information follow a centralized scheme
• In context-aware systems it is decisive to maintain the correctness and the quality of context information
Motivation
2. CONSISTENT MANAGEMENT OF CONTEXT INFORMATION
• A model is proposed as a common basis for the management of shared resources
> It is based on the SOA model
> It provides two main services: Monitoring and Synchronization
• A Context Manager Service has been created from the specialization of the Synchronization service
G. Guerrero-Contreras et al. 5
2.1 THE SERVICE ENTITY AND REPLICA MANAGER (1)
G. Guerrero-Contreras et al. 7
• The applications and services are considered Software Entities deployed in a device
• A service may be being accessed by one or more applications, and by one or more services (i.e., service composition)
2.1 THE SERVICE ENTITY AND REPLICA MANAGER (1)
G. Guerrero-Contreras et al. 8
• A service can manage a kind of shared resources • Documents, images, database, etc.
2.1 THE SERVICE ENTITY AND REPLICA MANAGER (1)
G. Guerrero-Contreras et al. 9
• Each service is made up of a Replica Manager • This avoid central controls and strengthen the system against
node disconnections and network partitions
2.1 THE SERVICE ENTITY AND REPLICA MANAGER (& 2)
• The Replica Manager is responsible of encapsulating the adaptation logic regarding the deployment of the services
> Providing a distributed solution to the dynamic deployment
> Improving the availability of shared resources (documents, images, etc.)
• The Replica Manager will need the information provided by the Context Manager Service
G. Guerrero-Contreras et al. 10
2.2 THE SYNCHRONIZATION AND MONITORING SERVICES (1)
G. Guerrero-Contreras et al. 12
• The Synchronization Service is an abstract service which must be specialized according to each particular resource to be synchronized
• It is based on the Monitoring Service
2.2 THE SYNCHRONIZATION AND MONITORING SERVICES (1)
G. Guerrero-Contreras et al. 13
• The Monitoring Service is a basic service which stores all kind of information about changes on the different replicas of the shared resources
2.2 THE SYNCHRONIZATION AND MONITORING SERVICES (& 2)
• Thus a common basis for the consistent management of the shared resources is provided
G. Guerrero-Contreras et al. 14
Synchronization service
The common part related to manage
the resource is identified and
assigned to the Synchronization
service
Specialization of the service
The particular requirements of a resource are implemented
in the specialization of the service
2.3 THE CONTEXT MANAGER (1)
G. Guerrero-Contreras et al. 16
• The context information can be distributed and replicated
2.3 THE CONTEXT MANAGER (1)
G. Guerrero-Contreras et al. 17
• Through the specialization of the Synchronization service, a Context Manager which can address these context inconsistencies at the service level is provided
2.3 THE CONTEXT MANAGER (& 2)
• The Context Manager will implement the ‘synchronize’ abstract method, where it will should add the specific synchronization algorithms for managing the context data resource.
G. Guerrero-Contreras et al. 18
3. CASE STUDY
• In a hospital there is an Emergency service which form part of an ubiquitous environment
• The Emergency service will look for the most appropriate doctor to attend the emergency
• Different information need to be managed
> Location of the medical staff, availability of the medical resources, profile of the patients, etc.
G. Guerrero-Contreras et al. 19
3. CASE STUDY
G. Guerrero-Contreras et al. 20
The doctor is in the hospital
Context Manager Replica 1
Context Information
Emergency Service Monitoring
Service
3. CASE STUDY
G. Guerrero-Contreras et al. 21
Context Manager Replica 1
Context Information
Emergency Service
The doctor is in the hospital
Context Manager Replica 2
Context Information
The doctor is in the ambulance
Monitoring Service
3. CASE STUDY
G. Guerrero-Contreras et al. 22
Context Manager Replica 1
Context Information
Emergency Service
The doctor is in the hospital
Context Manager Replica 2
Context Information
The doctor is in the ambulance
Monitoring Service
3. CASE STUDY
G. Guerrero-Contreras et al. 23
Context Manager Replica 1
Context Information
Emergency Service
The doctor is in the hospital
Context Manager Replica 2
Context Information
The doctor is in the ambulance
‘synchronize’
Monitoring Service
3. CASE STUDY
/**
* @param list: a list of events obtained from the `disjointSet' method
*/
void synchronize(List<Events> list){
foreach(Event evt in list){
evtName = evt.getMemberValue("object").GetString();
evtValue = evt.getMemberValue("value").GetString();
evtTime = evt.getMemberValue("timestamp").GetInt64();
[...]
if(this.getContextObject(evtName).getTimestamp() < evtTime){
this.setContextValue(evtName, evtValue);
}
[...]
}
}
G. Guerrero-Contreras et al. 24
4. CONCLUSIONS
• The devised model provides to the software engineers the basis for a correct and consistent management of replicated/distributed resources
• From this basis a Context Manager has been provided
• The model is based on distributed scheme
• It also contemplates the adaptation logic of the replication of services at run-time
G. Guerrero-Contreras et al. 25
4. FUTURE WORK
• Currently, a simulation on ns3 network simulator is under development. In order to perform a study the behavior of the Replica Manager component
• We plan to study the composition between the herein presented services and other high level self-adaptive services, such as a location service
G. Guerrero-Contreras et al. 26