Skip to Main Content
A heterogeneous environment consists of a number of dissimilar networks, computing devices, end users, applications, and environmental conditions. Traditional distributed applications are generally not aware of the heterogeneities of the environment. In this paper we present "AwareWare", which is a middleware that facilitates applications to be more adaptive in such a heterogeneous environment. AwareWare addresses five types of heterogeneities and advocates dynamic component reconfiguration as a unified approach for both architectural and application level adaptation. AwareWare includes environment measurement tools, an adaptation decision module that is separated from other constructions of the application, and reconfiguration mechanisms for component based distributed applications. Prototype examples are presented that demonstrate the potential use of the middleware.