AECM: an aspect enabled component model

In this paper, we propose a new component model called AECM that combines CBSD and AOSD and proposes a component definition language and an assembly definition language to improve reusability of components and aspects. In this component model, aspects are kinds of component and all component concepts are applicable to them. AECM categorizes aspects of a component to two categories: built-in or extension aspects, inter-components aspects or intra-component aspects, and supports them in different ways. AECM supports definition of weave time and runtime aspect application rules and supports application and component reconfiguration at deployment time and during runtime.