On the modular representation of architectural aspects

  • Authors:
  • Alessandro Garcia;Christina Chavez;Thais Batista;Claudio Sant'anna;Uirá Kulesza;Awais Rashid;Carlos Lucena

  • Affiliations:
  • Computing Department, Lancaster University, United Kingdom;Computer Science Department, Federal University of Bahia, Brazil;Computer Science Department, Federal University of Rio Grande do Norte, Brazil;Computer Science Department, Pontifical Catholic University of Rio de Janeiro, Brazil;Computer Science Department, Pontifical Catholic University of Rio de Janeiro, Brazil;Computing Department, Lancaster University, United Kingdom;Computer Science Department, Pontifical Catholic University of Rio de Janeiro, Brazil

  • Venue:
  • EWSA'06 Proceedings of the Third European conference on Software Architecture
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

An architectural aspect is a concern that cuts across architecture modularity units and cannot be effectively modularized using the given abstractions of conventional Architecture Description Languages (ADLs). Dealing with crosscutting concerns is not a trivial task since they affect each other and the base architectural decomposition in multiple heterogeneous ways. The lack of ADL support for modularly representing such aspectual heterogeneous influences leads to a number of architectural breakdowns, such as increased maintenance overhead, reduced reuse capability, and architectural erosion over the lifetime of a system. On the other hand, software architects should not be burdened with a plethora of new ADL abstractions directly derived from aspect-oriented implementation techniques. However, most aspect-oriented ADLs rely on a heavyweight approach that mirrors programming languages concepts at the architectural level. In addition, they do not naturally support heterogeneous architectural aspects and proper resolution of aspect interactions. This paper presents AspectualACME, a simple and seamless extension of the ACME ADL to support the modular representation of architectural aspects and their multiple composition forms. AspectualACME promotes a natural blending of aspects and architectural abstractions by employing a special kind of architectural connector, called Aspectual Connector, to encapsulate aspect-component connection details. We have evaluated the applicability and scalability of the AspectualACME features in the context of three case studies from different application domains.