Ambient assisted living (AAL) applications are intended to allow elderly people to stay at home while connected to their family and medical staff. These applications involve several services as health-care services or infotainment, which are executed on different environments such as hospital, proximity doctor, family homes. These environments constitute a distributed, heterogeneous, highly dynamic infrastructure that makes it necessary to build AAL applications as adaptive software including the necessary mechanisms to dynamically modify their behavior. In this paper we propose a multi-level model to build context-aware self-adaptive entities: the basic level defines the mandatory functionalities for adaptive entities, while upper-levels define how to coordinate adaptation of primitive or composite entities. The generic nature of the model is illustrated by its use when building a self-adaptive distributed data management service for an AAL application.