A modelling proposal for aspect-oriented software architectures

Aspect-oriented programming (AOP) has emerged in recent years as a new paradigm for software development. PRISMA is an approach for developing complex and large software systems. It combines the aspect-oriented software development (AOSD) and the component-based software development (CBSD) in an elegant and novel way achieving a better management of crosscutting-concerns and software reusability. PRISMA approach proposes the separation of concerns from the very beginning of the software life-cycle in order to introduce them as reusable aspects of software architecture. PRISMA provides a framework to guide the development of complex and large software systems. The framework is composed by a modelling tool, a .NET middleware, and a compiler to automatically generate the application source code. In this paper, we present the modeling tool of the PRISMA framework and how it supports the reuse and maintenance improvements of the PRISMA model and its aspect- oriented description language (AOSD). We illustrate our proposal and modelling tool using a real-life case, the TeachMover robot

[1]  Ole Lehrmann Madsen,et al.  Proceedings of the European Conference on Object-Oriented Programming , 1992 .

[2]  Mary Shaw Procedure Calls Are the Assembly Language of Software Interconnection: Connectors Deserve First-Class Status , 1993, ICSE Workshop on Studies of Software Design.

[3]  Jeff Kramer,et al.  Automated support for distributed software design , 1995, Proceedings Seventh International Workshop on Computer-Aided Software Engineering.

[4]  David Garlan,et al.  Introduction to the Special Issue on Software Architecture , 1995, IEEE Trans. Software Eng..

[5]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[6]  Robert L. Nord,et al.  Describing Software Architecture with UML , 1999, WICSA.

[7]  Yoshikazu Yamamoto,et al.  Extending UML with Aspects: Aspect Support in the Design Phase , 1999, ECOOP Workshops.

[8]  David Garlan,et al.  Reconciling the needs of architectural description with object-modeling notations , 2000, Sci. Comput. Program..

[9]  Richard N. Taylor,et al.  A Classification and Comparison Framework for Software Architecture Description Languages , 2000, IEEE Trans. Software Eng..

[10]  Cris Kobryn,et al.  Modeling components and frameworks with UML , 2000, CACM.

[11]  Tzilla Elrad,et al.  On the Requirements for Concurrent Software Architectures to Support Advanced Separation of Concerns , 2000 .

[12]  C. Alves,et al.  A Graphical Representation of COTS-based Software Architectures ∗ , 2000 .

[13]  William G. Griswold,et al.  An Overview of AspectJ , 2001, ECOOP.

[14]  Harold Ossher,et al.  Asymmetrically vs. Symmetrically Organized Paradigms for Software Composition , 2002 .

[15]  Lidia Fuentes,et al.  DAOP-ADL: An Architecture Description Language for Dynamic Component and Aspect-Based Development , 2003, GPCE.

[16]  Tzilla Elrad,et al.  UML PROFILE FOR ASPECT-ORIENTED SOFTWARE DEVELOPMENT , 2003 .

[17]  Mohamed Mancona Kandé,et al.  A concern-oriented approach to software architecture , 2003 .

[18]  Shmuel Katz,et al.  Architectural views of aspects , 2003, AOSD '03.

[19]  Jennifer Pérez,et al.  PRISMA: towards quality, aspect oriented and dynamic software architectures , 2003, Third International Conference on Quality Software, 2003. Proceedings..

[20]  uclm. es Goals and Quality Characteristics : Separating Concerns ∗ , 2004 .

[21]  Michel Wermelinger,et al.  The CommUnity workbench , 2004, Proceedings. 26th International Conference on Software Engineering.

[22]  Pablo de la Fuente,et al.  Architectural Aspects of Architectural Aspects , 2005, EWSA.

[23]  João Araújo,et al.  A Concern-Oriented Requirements Engineering Model , 2005, CAiSE.

[24]  Jennifer Pérez,et al.  Dynamic Evolution in Aspect-Oriented Architectural Models , 2005, EWSA.

[25]  Miguel A. Pérez,et al.  Aspect Modelling at Architecture Design , 2005, EWSA.

[26]  I. Ramos,et al.  Executing Aspect-Oriented Component-Based Software Architectures on . NET Technology , 2005 .