MODELACIÓN DE LA ORIENTACIÓN A ASPECTOS / Aspect Oriented Modeling - Losavio, Francisca; Matteo, Alfredo; Morantes, Patricia (Revista de la Facultad de Ingeniería UCV, 2010)
El desarrollo de software orientado a aspectos (DSOA) representa un nuevo enfoque dentro de la Ingeniería del software. Está basado en la programación orientada a aspectos (POA) y centrado en la separación de incumbencias transversales o crosscuting concerns. Muchos conceptos y/o elementos de modelación se utilizan durante las diferentes etapas del DSOA, sin embargo, se presentan ambigüedades en cuanto a su semántica, no es claro cuál de ellos debe ser utilizado en cuál etapa. Este trabajo presenta un núcleo o Core UML (lenguaje de modelado unificado), para el DSOA, que engloba diferentes elementos de modelación definidos en la literatura, focalizándose particularmente en el documento de ontología DSOA de la comunidad europea y en diferentes extensiones UML. En el Core UML presentado, cada notación es identificada, clarificada, presentada por autor y asociada a una etapa del desarrollo. Los resultados contribuyen al establecimiento de los estándares para una terminología unificada en el DSOA, favoreciendo el entendimiento, la comunicación y facilitando el diseño arquitectónico orientado a aspecto. ABSTRACT Aspect Oriented Software Development (AOSD) is an emerging discipline in Software Engineering based on the Aspect Oriented Programming (AOP) paradigm, and focused on the separation of tangled and scattered concerns (crosscutting concerns). Many concepts and mechanisms have been proposed to handle properly the crosscutting concerns; however, terms are in general semantically slightly different according to the development phase in which they have been defined, causing misunderstanding and confusion. This paper presents an AOSD UML Core (Unified Modeling Language) to integrate different modeling elements defined in the literature, focusing in particular on the AOSD ontology of the European Community and some UML profiles proposed by other authors. In this UML Core, each notation is identified, clarified, presented by author and related to a development phase. This result, on the one hand contributes to the establishment of standards for a unified AOSD terminology, favoring understanding and communication; on the other hand, it facilitates aspect-oriented architectural design. Keywords: Software modeling, Early aspects, AOP, AOSD, UML