Multiscale distributed systems, Software deployment, Domain-specific language With the Internet of Things IoT paradigm, ambient systems move from locally distributed systems to Internet distributed systems. These systems become huge in term of number of devices and imply high heterogeneity e. They are continuously evolving with appearing and disappearing devices at runtime. The inner complexity of these systems, called multiscale systems, requires autonomic deployment middleware.
Such middleware should deploy components where and when necessary, and adapt the architecture of the deployed systems considering the different scales of the systems. MuScADeL allows designers to abstractly define deployment properties without exact knowledge of the devices and networks the system will be deployed on. This DSL is based on a scale-awareness framework, which helps designers to characterize the multiscale nature of a system from several viewpoints such as device, network, administration and geography.
MuScADeL is a building block for deployment middleware that targets multiscale distributed systems.
We illustrate the possibilities of MuScADeL through a smart transport scenario With the Internet of Things IoT paradigm, ambi- ent systems move from locally distributed systems to Internet distributed systems. Such middleware should deploy com- ponents where and when necessary, and adapt the architecture of the deployed systems considering the different scales of the systems.
The software architecture of a DEBS is composed of an over-lay network of brokers that are responsible for routing data from producers to consumers. An important issue is the cost in terms of exchanged messages of the installation of advertisement or subscription filters on the brokers and the cost of routing notifications. The problem is exacerbated in large and heterogeneous systems involving clouds, cloudlets, desktops, laptops, mobile phones, and smart objects of the Internet of Things IoT.
In this paper, we associate the system concept of scale of multiscale distributed systems with the concept of scope of DEBS and we introduce DEBS with multiscoping. We also extend the requirements of distributed routing to deal with multiscoping. In the context of the IoT, we show in an illustrative example that the solution allows application designers and system administrators to tag advertisements and subscriptions for semantically delimiting scopes that are superposed.
Quality of context, Quality criterion, Context management, Meta-modeling, Information model Quality of Context QoC awareness is recognized as a key point for the success of context-aware computing solutions. This paper presents how the QoCIM framework we propose, can help the developers to manage the whole QoC life-cycle, by providing genericity, openness and uniformisation. Internet of Things, Middleware, Distributed Event-Based Systems, Quality of Context The Internet of Things IoT is a very dynamic and heterogeneous environment that generates plethora of sensor data, accessible to develop new smart pervasive applications.
However, the substantial amount of effort required to collect and disseminate context data with sufficient quality prevents the context consumers to take advantage of the IoT to its full potential. Consequently, novel research efforts are required to design middleware solutions able to deliver relevant context data to consumer applications while hiding the complexity of data distribution in heterogeneous and large-scale environments.
This paper presents the INCOME framework that enables context producers to express the level of Quality of Context QoC they are able to provide and context consumers to set thresholds on the QoC they expect in order to determine how to distribute context data. Our experiments show that context data can be annotated with QoC metadata and distributed from producers to consumers with a reasonable additional cost even on resource-constrained devices such as Raspberry Pi.
They may involve very small devices such as sensors and RFID, but also powerful systems such as Cloud computers and knowledge bases, as well as intermediate devices such as smartphones and personal computers. The word "multiscale" may qualify various distributed systems according to different viewpoints such as their geographic dispersion, the networks they are deployed on, or their users' organizations. For one entity of the multiscale system, communication technologies, non-functional properties for persistence or security purpose or architectures to be favored may vary from one scale to another.
Moreover, ad hoc architecture of such complex systems are costly and non-sustainable. In this paper, we propose a scale- awareness framework, called MuSCa. This framework includes a characterization process based on the concepts of viewpoints, dimensions and scales. The proposed framework allows multiscale software designers to share a taxonomy for qualifying their own system. At system design time, the result of such a qualification is a model from which the framework produces scale-awareness artifacts. As an illustration of this model-driven approach, we show how multiscale probes are generated to provide multiscale components with an embedded scale-awareness ability.
Context, Context-aware computing, Quality of context, Modeling, Software engineering In the last decade, several works proposed their own list of quality of context QoC criteria. This chapter relates a comparative study of these successive propositions and shows that no consensus has been reached about the semantic and the comprehensiveness of QoC criteria.
Facing this situation, the QoCIM meta-model offers a generic, computable and expressive solution to handle and exploit any QoC criterion within distributed context managers and context-aware applications.
For validation purposes, the key modelling features of QoCIM are illustrated as well as the tool chain that provides developers with QoCIM based models editor and code generator. With the tool chain, developers are able to define and use their own QoC criteria within context and quality aware applications. One of the major advantages of this paradigm resides on its economic model based on pay-as-you-go.
This paradigm got an increasing attention these last years regarding different aspects e. Almost all the existing solutions for monitoring do not offer an approach that allows to describe in a granular way the monitoring requirements. Moreover, they do not take into account the scalability issues. In this paper, we propose a model that allows to describe monitoring requirements for Service Component Architecture SCA applications in different granularities.
We propose an approach that transforms SCA components that were initially designed without monitoring facilities to render them monitorable. In our approach, we use a Micro-container based mechanism to deploy components in the Cloud. This mechanism ensures the scalability of SCA applications. Our solution take into account a late instantiation politic to reduce resources consumption to be in-line with the economic model of the Cloud.
The realized experiments proves the efficiency of our solution. One of its major as- sets is the provisioning of resources based on pay-as-you-go model. Cloud resources are situated in a highly dynamic environment. However, each provisioned resource comes with functional properties and may not offer non functional properties like monitoring, reconfiguration, security, accountability, etc.
In such dynamic environment, non functional properties have a critical importance to maintain the service level of resources and to make them respect the contracts between providers and consumers. In our work, we are interested in monitoring, reconfiguration and autonomic management of Cloud resources. Particularly, we put the focus on Service-based applications. Afterwards, we push further our work to treat Cloud resources. Consequently, this thesis contains two major contributions.
On the first hand, we extend Service Component Architecture SCA in order to add monitoring and reconfiguration require- ments description to components. In this context, we propose a list of transformations that dynamically adds monitoring and reconfiguration facilities to components even if they were designed without them. That alleviates the task of the developer and lets him focus just on the business of his components.
To be in line with scalability of Cloud environments, we use a micro-container based approach for the de- ployment of components. On the second hand, we extend Open Cloud Computing Interface standards to dynamically add monitoring and reconfiguration facilities to Cloud resources while remaining agnostic to their level. This extension entails the definition of new Resources, Links and Mixins to dynamically add monitoring and reconfiguration facilities to resources. We extend the two contributions to couple monitoring and reconfiguration in order to add self management capabilities to SCA-based applications and Cloud resource.
The solutions that we propose are generic, granular and are based on the de facto standards i. Dans un tel environnement dynamique, les services non fonctionnels ont une importance critique pour le maintien du niveau de service des ressources ainsi que le respect des contrats entre les fournisseurs et les consommateurs. Ubiquitous computing, Model-driven software engineering, Context, Quality of context, Domain specific language, Pervasive computing As every-day mobile devices can easily be equipped with multiple sensing capabilities, ubiquitous applications are expected to exploit the richness of the context information that can be collected by these devices in order to provide the service that is the most appropriate to the situation of the user.
However, the design and implementation of such context-aware ubiquitous appplications remain challenging as there exist very few models and tools to guide application designers and developers in mastering the complexity of context information. This becomes even more crucial as context is by nature imperfect. One way to address this issue is to associate to context information meta-data representing its quality. We propose a generic and extensible design process for context-aware applications taking into account the quality of context QoC.
We demonstrate its use on a prototype application for sending flash sale offers to mobile users. We present extensive performance results in terms of memory and processing time of both elementary context management operations and the whole context policy implementing the Flash sale application. The cost of adding QoC management is also measured and appears to be limited to a few milliseconds. We show that a context policy with QoC-aware nodes can be processed in less than ms on a mobile phone. Moreover, a policy of almost nodes can be instantiated before exhausting the resources of the phone.
This enables very rich application scenarios enhancing the user experience and will favor the development of new ubiquitous applications. Structural adaptation, Component-based applications, Adapter template, Pervasive environments Building upon the Service Oriented Architec- ture, applications can be defined as an assembly of abstract components that are resolved by integrating transparently functionalities provided by heterogeneous resources.
However, applications in pervasive environments have to operate under highly dynamic and unpredictable context. This may give rise to several problems denoting that there are mismatches between their descriptions and the execution environments e. Therefore, there is a crucial need to adapt applications in order to overcome these mismatches. In this work, we present a dynamic structural adaptation approach for abstract applications.
Our approach is based on the transformation of applications by injecting adapters into their descriptions with respect to their functional behaviour. We propose a fine-grained template to define these adapters. We also give an overview of some results of our evaluations to validate our approach.
Context-aware computing, Context contract, Context modeling, Quality of context, Privacy, Trust With the Internet of Things IoT paradigm, potentially private data could be made available on the Internet. Such data could then, be consumed by a growing number of applications.
The acceptance and success of new pervasive applications depend on both the protection of privacy and the guarantee of quality of context QoC.
As in the IoT producers and consumers of context are decoupled, they are not aware of each other. Therefore, it is essential to provide them with means to express their guarantees and requirements concerning QoC and privacy. For this purpose, we propose meta-models to design context contracts defining privacy and QoC agreements, independently of the consumer and the producer sides. The contracts are key to an autonomous management of QoC and privacy in the IoT. Firstly, contracts may be modified at runtime to add, edit or remove clauses.
Secondly, the middleware in charge of transmitting data from context producers to context consumers e. Finally, the matching process can adapt dynamically, for instance, to the current trust level between the two parties. These contracts will participate to build trust among IoT participants. Quality of context, Quality criterion, Context management, Meta-modelling, Information model In the last decade, several works proposed their own list of quality of context QoC criteria.
This article relates a comparative study of these successive propositions. The result is that no consensus has been reached about the semantic and the comprehensiveness of QoC criteria. Facing this situation, the QoCIM meta-model offers a generic, computable and expressive solution to handle and to exploit any QoC criterion within distributed context managers and context-aware applications. For validation purposes, QoCIM is successfully applied to the modelling of a set of simple and composite QoC criteria. Monitoring and reconfiguration are critical issues in Cloud environments.
Monitoring allows to detect anomalies and specific events, while reconfiguration allows to activate corrective mechanisms or runtime modifications. The extension describes the needed elements to manage i. We define on the one hand new types needed to monitor metrics based on a previously established SLA. On the other hand we define the needed types to reconfigure our managed resources when needed.
Using these elements, the user is provided with a monitoring and reconfiguration infrastructure on demand. We propose herein, a real use case based on HTTP rendering showing how to establish and link the described elements of the infrastructure. Physical activities play important role in having better health. However, due to the nature of our jobs, most of us have developed sedentary habits and it is very seldom that we find dedicated time for exercise or other physical activities. Sedentary behavior has been identified as an important factor in preventing good health and there is a need to push adults to carry out physical activities regularly, on daily basis.
The purpose of the current research is to find how we can effectively use mobile phone technology to raise awareness about sedentary behavior in users and how we can persuade users to do physical activities. For this purpose, we developed a mobile application called Sedentaware. We describe different mobile application prototypes and experiments that were conducted on adult users for preventing sedentary behavior in order to promote physical activities among adults. Our final prototype that is able to motivate the users to take corrective actions, after detecting prolonged sedentary behavior, uses an adaptive model based on each user's progress.
We identify some human and software design factors and describe why our previous approaches did not work before arriving at the final one. The results of user experiments and performance evaluations are also discussed. Research works in both personalization and persuasion systems have drawn significant attention in the discipline of computer science recently.
However, they have been treated independently from each other. In the current work, we concentrate only the aspects related to applying persuasion for achieving the goal of becoming active. In other words, we describe how to facilitate the user in adopting an active lifestyle by using persuasive mechanisms.
Moreover she must know their respective qualities. If she does not pay attention to these architectures and their qualities, she may choose an architecture which does not match optimally the application requirements. In this chapter, we list different aspects of three architecture qualities which are influenced by RFID technology: Then we analyze each architecture according to these aspects. We give existing examples of each architecture.
Finally we provide guidelines for choosing the right architectural pattern. Centralized architectural pattern is the best choice if application requires the best level for all aspects of functionality attribute. But this pattern does not fit if we cannot use a global network or if the number of simultaneous tag reads is important.
These environments are distributed, heterogeneous and can be naturally unstable fitted with a dynamic network topology. Deployment in such environments require the management of a large number of hosts, network links and deployment constraints. Existing distributed deployment solutions are usable only within static and reliable topologies of hosts, where a man in charge of the deployment has to describe more or less manually the topology.
Moreover, majority of these tools do not take into account network and computer QoS variability's, hosts crashes, network link failures and network topology changes, which characterize open and mobile environments. In this thesis, we discuss the motivations for an autonomic software deployment and the requirements underlying for such a platform.
We carefully study and compare the existing work about software deployment. Then, we propose a middleware framework, designed to reduce the human cost for setting up software deployment and to deal with failure-prone and change-prone environments. We also propose an autonomic deployment process in three steps: For the first step, we defined a high-level constraint-based dedicated language DSL as support for expressing deployment constraints. In the second step, we have designed a distributed infrastructure to collect target hosts properties used to solve deployment constraints. For the third step, we propose an agent-based system for establishing and maintaining software deployment.
At last, we give an overview of our working prototype with some details on some experimental results. In the last decade, many works aimed to propose their own quality of context QoC criteria list. The result is that no consensus has been reached about the semantic and the completeness of QoC criteria. Faced with this situation, the QoCIM meta-model is proposed as a generic, computable and expressive solution to handle and to exploit any QoC criterion within context managers and context-sensitive applications.
Component-based task, Task resolution, Monitoring, Task adaptation, Pervasive environments Driven by the heterogeneity of pervasive environments, a user task can be defined independently of devices' resources as an assembly of abstract components, requiring services from and providing services to each other. To achieve the task's execution, it has to be resolved in concrete components, which involves automatic matching and selection of components across various devices.
Moreover, user tasks in pervasive environments are challenged by the dynamism of their execution environments. Thus, there is a need to adapt them for a continuous execution. Towards these challenges, we propose in this article a middleware that allows for each service of a user task, the best selection of the device and component used for its execution. The task resolution approach considers in addition to the functional aspects of the task, the user preferences, devices capabilities, services requirements and components preferences.
The middleware also carries out adaptation of user's tasks to cope with the dynamicity of pervasive environments. The adaptation consists of a partial reselection of devices and components that are affected by the changes. For this purpose, the middleware uses monitoring mechanisms to detect the changes during the execution of the user tasks.
Collaborative learning, Lifelong learning, Project based learning, Real life experimentation, Ubiquitous learning Mobile technologies are more and more present in students' lives. Therefore, it is interesting to see how these technologies enable students to learn beyond their courses. In this paper, the authors describe some ongoing work funded by their institution. The authors are developing a prototype of a project-based learning ubiquitous platform which aims at helping students learn some skills and knowledge about project management. In accordance with project-based learning theories, their platform also teaches students how to collect knowledge and introduces them to lifelong learning skills.
The software is designed to be reused and adapted to various situations of ubiquitous and collaborative learning, for universal clients smartphones, tablets, laptops, PCs, etc. They have designed the technical architecture of the authors' platform so as to make it easily extendable and maintainable.
The technical and pedagogical evaluation of the authors' platform has been done with students in real life conditions, during a period dedicated to a project to create innovative business. At the end of the paper, the authors describe this experimentation and discuss the pros and cons of such a platform. Nous illustrons sa mise en oeuvre sur un prototype d'application dans le domaine du commerce mobile.
Internet of things, Context Management, Multi-scale system Nowadays, context management solutions in ambient networks are well-known. However, with the IoT paradigm, ambient information is not anymore the only source of context. Context management solutions able to address multiple network scales ranging from ambient networks to the Internet of Things IoT are required. We present the INCOME project whose goal is to provide generic software and middleware components to ease the design and development of mass market context-aware applications built above the Internet of Things. In this landscape paper, we identify how INCOME plans to advance the state of the art and we briefly describe its scientific program which consists of three main tasks: Multiplayer mobile games, Latency hiding, Data synchronization, Consistency algorithm In distributed virtual environments such as multiplayer games, where many users interact in real time while communicating through a network, the users may have an inconsistent view of the game world because of the communication delays across the network.
Consistency maintenance algorithms must be used to have a uniform view of the game world. The majority of these algorithms use rollback mechanisms to correct the inconsistencies that occur because of the disorder of the arrival of update messages. These rollbacks are very costly, especially when playing a game, using high-latency wireless networks, on mobile terminals which have limited memory and processing speed. In this paper, we present a dynamic and adaptive approach for reducing the number of rollbacks in distributed virtual environments on wireless mobile devices.
This approach takes into account the underlying network latency and the semantics of the game virtual world to dynamically decide whether a rollback is needed in case inconsistencies have occurred or can be possibly avoided. We evaluate our approach on a simplified version of a Football game on hand-held devices and show that this dynamic rollbacks' reduction approach improves the responsiveness of the game and maintains consistency of the game state while limiting the use of processing power and memory space. MANETs are already a necessary part of wireless systems.
Due to arbitrary node arrivals, departures, crashes and movements, network partitioning may arise resulting in a degradation of the service, but not necessarily in its interruption. In this paper, we propose a distributed system model for partition able systems. We then specify and implement a partition-participant detector that captures the live ness of a partition even if the partition is not completely stable.
Its role is to detect the minimal stability condition to guarantee that eventually all the stable processes in an alpha-Set elect the same leader. Autonomic deployment, Ubiquitous computing, Mobile agents, Middleware Autonomic software deployment in open networked environments such as mobile and ad hoc networks is an open issue.
Some solutions to software deployment exist; but, they are usable only within static topologies of devices. We propose a middleware architecture providing a constraint-based language guiding the deployment process at a high level and an autonomous agent-based system for establishing and maintaining a software deployment according to a deployment plan.
Constraints solver generates the deployment plan from the initial specification and a network discovery service is used to automatically detect the target hosts. This paper presents middleware architecture that considers the challenges of deploying distributed software over mobile and ad hoc networks with minimal human oversight. We also present an implementation of a prototype and provide experimental results in both real environments.
In this article we propose our framework for healthcare self-management that combines ubiquitous and social computing as persuasion media. The framework enables social interactions between the patients, doctors, and other users in their online social community through a web portal as well as through their smartphones.
To help users in adopting healthy behavior, they are monitored for various activities and persuaded using different persuasion strategies that are adaptive and are according to user's behavior. Persuasion strategies are applied using persuasion profile of a user. A behavior model of each user is created that is based on Fogg's behavior model but also encompasses user preferences, health profile and social profile. Nous proposons le protocole des trains: The goal of this PhD thesis is to exploit these tools with a coding viewpoint.
In the first part of this thesis, we focus on data communication and contribute to the total order broadcast domain. We propose trains protocol: Tokens called trains rotate in parallel between participating processes distributed on a virtual ring. Each train contains a logical clock to recover lost train s in case of process es failure.
We prove that trains protocol is a uniform and totally ordered broadcast protocol. Afterwards, we create a new metric: With this metric, we are able to prove that, from a throughput point of view, trains protocol performs better than protocols presented in literature. Moreover, this metric gives the maximal theoretical throughput which can be reached when coding a given protocol. Thus, it is possible to evaluate the quality of the coding of a protocol. Thanks to its throughput performances, in particular for small messages, trains protocol is a remarkable candidate for data sharing between the cores of a processor.
Moreover, thanks to its temperance concerning network usage, it can be worthwhile for data replication between servers in the cloud. Part of this work was implemented inside a control-command and supervision system deployed among several dozens of industrial sites.
In the second part of this thesis, we focus on data sharing and contribute to RFID domain. We propose a distributed shared memory based on RFID tags. Thanks to this memory, we can avoid installing a computerized global network. This is possible because this memory uses vector clocks and relies on the network made by the mobile users of the distributed application.
Thus, the users are able to read the contents of remote RFID tags. This distributed shared memory was implemented in a pervasive game tested by one thousand users. This is particularly true in the recent domain of ambient intelligence where everyday life objects are able to trigger an action or a spontaneous information exchange, without any interaction with the user.
Technical advances in wireless communication, personal mobile devices, sensors and embedded software make context-aware services possible, but concrete applications are still very limited. The solutions proposed in the literature decompose context management into four functions: The differentiating element in these proposals is the quality of the high-level context information obtained by inference and characterising the situation of the user.
The limits of these solutions are the difficulty for composing context information, scalability in terms of the quantity of context information and of the number of client applications, the absence of guarantee on the consistency of context information and the lack of middleware solutions able to free the designer of context-aware applications from the management of context data.
In this thesis, we are interested in the management of the quality of context information QoC in an ambient environment. There are several key issues in QoC management: For this purpose, we have designed the necessary components dedicated to QoC management and we have implemented the mechanisms allowing a fine-grain manipulation of the QoC together with a limitation of the associated overhead. We also propose a design process based on model-driven engineering in order to automatically generate the elements responsible of QoC management.
We validate our contributions through the development of two prototype applications running on mobile phones: The performance tests we have conducted allow to compare the results obtained with and without taking into account the QoC and show the low overhead associated to QoC management with regard to the benefits brought to context-aware applications and services. Adaptation patterns, Mismatches, Abstract applications, Component model Using service-oriented architecture, applications can be defined as an assembly of abstract components that are mapped to a concrete level to fulfill their executions.
However, several problems may be detected during their mapping as well as during their executions, which prevent them to be executed successfully. Thus, there is a need to adapt them according to the given contexts. In this article, we present some situational contexts that may trigger the adaptation of applications at init time or during their execution. Upon detection of certain changes in context, the applications are adapted accordingly.
For this goal, we propose a set of adaptation patterns that provide an extra-functional behavior with respect to the functional behavior of the applications. These patterns are injected into abstract applications if a relevant context is sensed to ensure their mapping as well as their execution.
User preferences, Device selection, User task, Pervasive environments, Network heterogeneity As the number of devices in a pervasive environment is increased, the number of components available on the network also grows rapidly. In such cases, it is possible to compose various applications through a combination of different sets of components. Considering the multifaceted problem of having varying device capabilities supporting a different set of protocols, and each device hosting a number of components providing the same functionality, it becomes very difficult to choose a particular device hosting a required component which can be the best-fit for the user.
This becomes practically impossible when the required components are distributed across various devices in the networked environment. We propose a solution for dynamic user task composition considering user preferences, device capabilities, and heterogeneity of communication protocols. With our proposed approach, a user task can be instantiated in different environments using a different set of devices and components, depending upon their capabilities and user preferences.
We propose mechanisms for modeling device capabilities and user preferences and for modeling the user task as a graph. We then propose algorithms for selection of devices based on user preferences and task requirements. Since the underlying network is also modeled as a graph, we describe an algorithm for mapping of services in the user task on to the components distributed across devices in the pervasive environment. We also give an overview of our initial implementation and some results of our evaluations. Context-awareness, Quality of context, Model driven engineering Context-aware ubiquitous applications are entering everyday life bringing new services to mobile users.
However, their implementation remains challenging as there exist very few models and tools to guide application designers and developers in mastering the complexity of context information. This becomes even more crucial as the context of a user is by nature imperfect since it is collected from sensors with a limited capacity. One way to address this issue is to associate to context information some meta-data representing its quality. We demonstrate its use on a prototype application that we developed for sending flash sale offers to mobile users.
A Flash sale notification comes with indications on how to reach the shop where the offer takes place. The level of details of these indications and their form depend on the QoC of the location information. Through this example, we show how the addition of a context-awareness aspect in an application design process leverages the overall quality of mobile and ubiquitous applications. Context, Quality of context, Location, Uncertainty As location-based services on mobile devices are entering more and more everyday life, we are concerned in this paper with finding ways to master the level of quality of location information in order to take relevant decisions.
Location being a typical example of context information, we manipulate it using the COSMOS framework that we develop for the management of context data and their associated quality meta-data or quality of context QoC. We consider several QoC parameters that are important for location and determine how the QoC can help a location aggregator component to identify the current region where a user is located.
The mechanisms we propose support a pragmatic approach in which application designers or deployers survey an area to demarcate regions surrounding locations, and application users are localized into these regions and are presented with the quality of the estimate. We report on the experimentation we performed on the campus of our institute collecting information from Wi-Fi, 3G networks and GPS signals, and show the accuracy we obtain at no additional infrastructure cost. Context management, Quality of context, QoC reasoning Context-aware applications are becoming commonplace in everyday life thanks to recent advances in mobile devices, sensor capabilities and wireless communication networks.
However, making the manipulation of context information efficient is still an important issue. Taking into account the quality of context data becomes a corner stone of an efficient context management. In this paper, we argue for a fine-grain QoC reasoning. Our approach allows for a better control of the behavior of pervasive applications. Ubiquitous environments are characterized by devices that share information with one another. Such environments can be created dynamically by creating association between devices at runtime.
This association requires selection of services on these devices, a technique known as service composition. The existing service composition approaches are mostly restricted to service matching and consider functional aspects of the association only. We propose a QoS-aware device selection in the ubiquitous environment, but also integrating user-preferences with QoS by taking into account network heterogeneity variety of access technologies.
We search for the nearly optimal solution among a number of candidate solutions of service composition that maximizes QoS parameters and user-preferences specified by user keeping in view network heterogeneity. Component-based task, Resolution, Monitoring, Adaptation, Pervasive environments Using a component-based approach, a user task can be defined as an assembly of abstract components i. For this goal, we propose in this article a task resolution approach that allows for each service of a user task, the best selection of the device and component used for its execution.
Moreover, applications in pervasive environments are challenged by the dynamism of their execution environments. Towards this challenge, we use a monitoring mechanism to detect the changes of environments and we propose an adaptation approach that is based on the reselection of a subset of devices and components.
Some solutions exist, but they are usable only in the context of static architectures. They do not take into account the dynamic changes of QoS, hosts failures, appearance and disappearance of nodes and services occurred in open environments. In this paper we present an original approach, based on our previous research on adaptable mobile agents AMA. The properties autonomy and dynamic adaptation to context of mobile agents allow us to consider building a middleware for deploying applications in the most unstable environments, with minimal human intervention.
It is therefore interesting to see how these technologies enable students to learn beyond their courses. In this paper, we describe an ongoing work funded by our institution. We are developing a prototype of a project-based learning ubiquitous platform which aims at helping students learn some skills and knowledge about project management. In accordance with project-based learning theories, our platform also teaches students how to collect knowledge and introduce them to lifelong learning technologies.
The software is designed to be reused and adapted to various situations of ubiquitous and collaborative learning, for universal clients. Interoperability in pervasive environments. This paper is use case oriented. It relates our experiments and results issued from the PLUG research project. Two middlewares and their main characteristics are presented. UPnP is used as a communication protocol for device interaction in pervasive environments. This chapter will describe UPnP as an enabling technology for device communication. It will explain how UPnP can be used in different scenarios such as for entertainment in home networks.
It will also explain a number of research efforts for integrating UPnP into other technologies for service convergence in pervasive environments. MANETs, Dynamic partitionable systems, Partitionable group membership, Abortable consensus Group membership is a basic building block for group communication systems. It has been shown that the specifications of group membership in partitionable systems have not yet reached the level of maturity of primary-partition specifications. In operational MANETs, the problem becomes even more complex since they are very dynamic networks and can experience a wide amount of churn.
Another problem close to group membership is consensus which can be used to solve group membership in primary-partition systems. We propose to discuss about the interest of designing a solution to group membership in partitionable systems built over MANETs by adapting Paxos. Capacity, Composition, Requirement, Web service This paper presents the concepts, definitions, issues, and solutions that revolve around the adoption of capacity-driven Web services. Because of the intrinsic characteristics of these Web services compared to regular i. Implemented as operations to execute at run-time, the capacities that empower a Web service are selected with respect to requirements put on this Web service such as data quality and network bandwidth, and hence need to be satisfied through these capacities.
In addition, this paper reports on first, the experiments that were conducted to demonstrate the feasibility of capacity-driven Web services and second, the research opportunities that will be pursued in the future. Context-awareness, Model driven engineering, Ubiquitous computing The design process followed to produce traditional applications needs to be enhanced to cope with new context-aware ubiquitous application requirements.
With the popularity of ubiquitous computing, context-aware applications become clearly necessary. This new kind of applications allows mobile users to universally access services in respect to any context including his computing environment. Challenges for the design of such applications are to easily define context collection requirements, context analysis and adaptations of the applications due to changes in its environment.
To face these issues, we propose, in this article, a generic and extensible way to model context-awareness of any application using the model-driven engineering MDE approach. For this purpose, we add a context-awareness aspect to application model views. We illustrate our solution by modeling a context-aware e-commerce application.
The addition of a context-awareness aspect, should ease the definition of mobile applications. Furthermore, context-awareness models open the way to automate context-awareness code production. Framework, Component model, Monitoring, Reconfiguration, UPnP, Transformation Distributed applications can be created using component-based software development. Such applications are defined as an assembly of components requiring services from and providing services to each other.
The existing component models provide a description of functional and non-functional requirements of an application. However, this capability is to be determined at the design time of the application. Once deployed, the application cannot be modified to respond to the changing context. In order to allow creation of such applications that can be transformed dynamically to respond to changing environments, in this article we propose a framework that allows monitoring and dynamic reconfiguration of different components.
These components may be functional components of the user application or other components of the environment on which an application depends. The components of environment may represent the underlying environment i. A component can monitor other components in order to be aware of their changes. Moreover, the components can also be monitored and reconfigured remotely.
If a component is not monitorable or reconfigurable by default, we propose a procedure that transforms it to respond to components requests. In order to simplify the development of agent-based distributed systems, their deployment, and their execution in open and unstable distributed environments, we propose a generic model and an architectural style of adaptive agent. Our approach allows developers to build agent models by assembling finegrained reusable components which implement non-behavioral mechanisms such as communication, mobility or adaptation skills.
Then, at run time, agents can autonomously change one or several of these components. At design time, agent models are defined from the generic agent model in order to fit the requirements of the development, and safety of architectures satisfaction of the dependence constraints between components is checked; then, skeletons of codes are generated and architectures are optimized. Then, agents are configured and can reconfigure themselves at run time; so they are able to react to changes in the execution environment.
The design of an embedded agent and of an agent responsible for deployment of Grid components illustrates our proposal. The existing architectural patterns involving passive tags do not meet simultaneously all of these requirements. Our RFID-based distributed memory does. By associating vector clocks to tags, we replicate a view of this memory on each tag and each handset, and disseminate updates between all of the replicas. Thus a user can locally query the replica hold by their mobile handset without physically moving to a tag.
We have developed a pervasive game as an application example. Using data collected during real game sessions, we evaluate the performance of our distributed memory. Then we discuss staleness and scalability issues. We conclude and give perspectives of our work. After describing RDSM, we present its demonstration: In this paper, we propose a model that characterizes the dynamics of MANETs in the sense that it considers that paths between nodes are dynamically built and the system can have infinitely many processes but the network may present finite stable partitions.
We also propose an algorithm that implements an eventually perfect partition participant detector PD which eventually detects the participant nodes of stable partitions. Adaptation patterns, Adapter template, Abstract application, Mismatch, Pervasive environments Using a component-based approach, applications can be defined as an assembly of abstract components, requiring services from and providing services to each other. At the time of execution, they are mapped to the concrete level after identifying the deployed components. However, several problems can be detected at init time that prevent the mapping to be achieved successfully, e.
Moreover, applications in pervasive environment are challenged by the dynamism of their execution environment due to, e. Both of these problems imply mismatches between abstract and concrete levels detected at init time or during the execution. Therefore, abstract applications have to be adapted to carry out their mapping and their execution. In this article, we propose a new dynamic structural adaptation approach for abstract applications. Our approach is based on adaptation patterns that provide solutions to the captured mismatches between abstract and concrete levels.
We also compare and contrast our approach with the existing ones concluding that our approach is not only generic, but it is also applicable both at init time and at runtime. Component model, Non-functional property, Monitoring, Component transformation Component-based applications are defined as an assembly of components requiring services from and providing services to each other. The current component models provide a description of the functional requirements of an application. However, they do not take into account the requirements of components for properties separately from the functional ones.
In this article, we propose a component model that expresses explicitly the required properties, in addition to the functional requirements, to describe the underlying environment i. The components can monitor these properties in order to be aware of their changes. If a property is not monitorable, we propose a procedure that allows the transformation of the components to make it monitorable. One issue for context-aware applications is to identify without delay situations requiring reactions. The identification of these situations is computed from both dynamic context information and domain specific knowledge.
This identification is the output of a process involving context interpretation, aggregation and deduction. In smart environments, these treatments have to be efficient since they may be partly performed on constrained mobile devices. Two main approaches exist in the literature: In this paper, we claim that they are complementary and we propose an architecture which integrates the two approaches. We show in a scenario how context-aware applications can benefit from this architecture both to scale to numerous mobile users and to identify complex situations.
A pervasive game was designed: First, mobility appears as a way to read and collect information. Lulu 1 June Sold by: Not Enabled Screen Reader: Enabled Average Customer Review: Be the first to review this item Would you like to tell us about a lower price? Customer reviews There are no customer reviews yet. Share your thoughts with other customers. Write a product review. Feedback If you need help or have a question for Customer Service, contact us.
Would you like to report poor quality or formatting in this book? Click here Would you like to report this content as inappropriate? Click here Do you believe that this item violates a copyright? Your recently viewed items and featured recommendations. View or edit your browsing history.