Resumen:
|
Increasingly, software needs to dynamically adapt its behavior at run-time in response
to changing conditions in the supporting computing infrastructure and in
the surrounding physical environment. Adaptability is emerging ...[+]
Increasingly, software needs to dynamically adapt its behavior at run-time in response
to changing conditions in the supporting computing infrastructure and in
the surrounding physical environment. Adaptability is emerging as a necessary underlying
capability, particularly for highly dynamic systems such as context-aware
or ubiquitous systems.
By automating tasks such as installation, adaptation, or healing, Autonomic
Computing envisions computing environments that evolve without the need for human
intervention. Even though there is a fair amount of work on architectures
and their theoretical design, Autonomic Computing was criticised as being a \hype
topic" because very little of it has been implemented fully. Furthermore, given that
the autonomic system must change states at runtime and that some of those states
may emerge and are much less deterministic, there is a great challenge to provide
new guidelines, techniques and tools to help autonomic system development.
This thesis shows that building up on the central ideas of Model Driven Development
(Models as rst-order citizens) and Software Product Lines (Variability
Management) can play a signi cant role as we move towards implementing the key
self-management properties associated with autonomic computing. The presented
approach encompass systems that are capable of modifying their own behavior with
respect to changes in their operating environment, by using variability models as if
they were the policies that drive the system's autonomic recon guration at runtime.
Under a set of recon guration commands, the components that make up the architecture
dynamically cooperate to change the con guration of the architecture to a
new con guration.
This work also provides the implementation of a Model-Based Recon guration
Engine (MoRE) to blend the above ideas. Given a context event, MoRE queries the variability models to determine how the system should evolve, and then it provides
the mechanisms for modifying the system.
[-]
|