Effective Language Support for Aspectual Behavior Decomposition

Date of Submission: 
April 4, 2005
Report Number: 
Report PDF: 
Aspects have been proposed as a new program abstraction to achieve better separation of concerns during software design. Although many aspect-oriented programing (AOP) techniques have been proposed to support the use of aspects, the conceptual framework for characterizing the design problems that can be solved using aspects is not well formulated. The lack of a well-formulated framework makes it difficult for software developers to identify the places where aspects can be best used; it also makes it difficult to evaluate and to improve the techniques that support aspects. In this paper, we propose to formulate a conceptual framework with the concept of collaborating behaviors. Based on this perspective, we discuss the concept of aspectual behavior decomposition and the limitations with the existing AOP techniques in supporting such a decomposition strategy. We also give a brief overview of a new AOP technique that illustrates how some of these limitations can be overcome.