Computing devices are becoming computing platforms. Not the operating system and hardware charact... more Computing devices are becoming computing platforms. Not the operating system and hardware characteristics will determine the footprint of an application, but the resources that are available at runtime. To function well in both high and low resource availability situations, applications have to adapt themselves at runtime. This paper presents a light-weight mechanism for specifying timing driven adaptation at the architectural level. A key contribution is the introduction of architectural quality reflection and adaptation points. Reflection points encapsulate end-2-end monitoring of timing constraints. Adaptation points offer run-time adaptation based on component and component group reconfigurations. Because of the clear separation of reflection and adaptation, the logic that links constraint violations to adaptation actions can work on two different levels. Constraint violations can be explicitly linked to adaptation actions for inter-application adaptation, or they can trigger ad...
This document 1 describes two practices that improve the agility of embedded software development... more This document 1 describes two practices that improve the agility of embedded software development. These practices represent current research topics that help cope with and embrace change and maintain a stable development pace. The practices are component-based development and agile Quality-of-Service constraints. While this research is focused on the development of embedded systems, we believe the practices can also be applied in a broader software development context. However, due to the lack of tool support, we do not expect the industry to apply the practices in the near future.
This paper introduces a contract-driven resource manage-ment process and supporting middleware fr... more This paper introduces a contract-driven resource manage-ment process and supporting middleware framework. We aim at supporting mobile computing tasks as they appear in the areas of Ambient Intelligence (AmI). As available resources in AmI environments fluctuate frequently, the resource usage of AmI tasks must be extremely flexible. The presented component based methodology permits an optimal flexibility in resource distribution and allocation through the use of resource contracts. User tasks specify their QoS needs in parameterized contract propositions that are used as the basis for a ne-gotiation process. Once a contract has been validated and signed by the middleware, it can be monitored. The sup-porting decision logic is built around a Java-based expert system. Negotiation and monitoring rules detect misbehav-ing tasks and environmental changes. Renegotiations result in task adaptations or more drastic measures, such as partial task relocation. KEY WORDS ambient intelligence, co...
This paper introduces a contract-driven resource manage-ment process and supporting middleware fr... more This paper introduces a contract-driven resource manage-ment process and supporting middleware framework. We aim at supporting mobile computing tasks as they appear in the areas of Ambient Intelligence (AmI). As available resources in AmI environments fluctuate frequently, the resource usage of AmI tasks must be extremely flexible. The presented component based methodology permits an optimal flexibility in resource distribution and allocation through the use of resource contracts. User tasks specify their QoS needs in parameterized contract propositions that are used as the basis for a ne-gotiation process. Once a contract has been validated and signed by the middleware, it can be monitored. The sup-porting decision logic is built around a Java-based expert system. Negotiation and monitoring rules detect misbehav-ing tasks and environmental changes. Renegotiations result in task adaptations or more drastic measures, such as partial task relocation. KEY WORDS ambient intelligence, co...
Computing devices are becoming computing platforms. Not the operating system and hardware charact... more Computing devices are becoming computing platforms. Not the operating system and hardware characteristics will determine the footprint of an application, but the resources that are available at runtime. To function well in both high and low resource availability situations, applications have to adapt themselves at runtime. This paper presents a light-weight mechanism for specifying timing driven adaptation at the architectural level. A key contribution is the introduction of architectural quality reflection and adaptation points. Reflection points encapsulate end-2-end monitoring of timing constraints. Adaptation points offer run-time adaptation based on component and component group reconfigurations. Because of the clear separation of reflection and adaptation, the logic that links constraint violations to adaptation actions can work on two different levels. Constraint violations can be explicitly linked to adaptation actions for inter-application adaptation, or they can trigger ad...
This document 1 describes two practices that improve the agility of embedded software development... more This document 1 describes two practices that improve the agility of embedded software development. These practices represent current research topics that help cope with and embrace change and maintain a stable development pace. The practices are component-based development and agile Quality-of-Service constraints. While this research is focused on the development of embedded systems, we believe the practices can also be applied in a broader software development context. However, due to the lack of tool support, we do not expect the industry to apply the practices in the near future.
This paper introduces a contract-driven resource manage-ment process and supporting middleware fr... more This paper introduces a contract-driven resource manage-ment process and supporting middleware framework. We aim at supporting mobile computing tasks as they appear in the areas of Ambient Intelligence (AmI). As available resources in AmI environments fluctuate frequently, the resource usage of AmI tasks must be extremely flexible. The presented component based methodology permits an optimal flexibility in resource distribution and allocation through the use of resource contracts. User tasks specify their QoS needs in parameterized contract propositions that are used as the basis for a ne-gotiation process. Once a contract has been validated and signed by the middleware, it can be monitored. The sup-porting decision logic is built around a Java-based expert system. Negotiation and monitoring rules detect misbehav-ing tasks and environmental changes. Renegotiations result in task adaptations or more drastic measures, such as partial task relocation. KEY WORDS ambient intelligence, co...
This paper introduces a contract-driven resource manage-ment process and supporting middleware fr... more This paper introduces a contract-driven resource manage-ment process and supporting middleware framework. We aim at supporting mobile computing tasks as they appear in the areas of Ambient Intelligence (AmI). As available resources in AmI environments fluctuate frequently, the resource usage of AmI tasks must be extremely flexible. The presented component based methodology permits an optimal flexibility in resource distribution and allocation through the use of resource contracts. User tasks specify their QoS needs in parameterized contract propositions that are used as the basis for a ne-gotiation process. Once a contract has been validated and signed by the middleware, it can be monitored. The sup-porting decision logic is built around a Java-based expert system. Negotiation and monitoring rules detect misbehav-ing tasks and environmental changes. Renegotiations result in task adaptations or more drastic measures, such as partial task relocation. KEY WORDS ambient intelligence, co...
Uploads
Papers by Andrew Wils