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