Aspect Oriented Software Architecture: a Structural Perspective1
چکیده
The positive results obtained by researchers on aspect-oriented programming during the last few years are promoting the aim to export their ideas to the whole software development process. One of the stages in which Aspect Oriented Software Development (AOSD) techniques can be introduced is software architectural design. This would make design of complex systems an easier task whilst cost development, cost maintenance, reuse, etc., would be improved. However, integrating both architectural design and aspect orientation is a non-trivial task. The different nature of the aspects that can be involved in an application and the different requirements that applications impose on the treatment of aspects make it difficult to handle aspects in a uniform way while at the same time preserving the simplicity of the design process. In this study the structure of the problem of separation of crosscutting concerns in the architectural design based on the aspect oriented approach is analysed. The analysis will identify the kind of changes that must be made in the current technology to manage this sort of integration. In particular, this paper focuses on how aspects separation can be handled by Architecture Description Languages and architectural styles. The aim of this article is not to propose a particular solution but to propose some general guidelines on which solutions can be based.