Interacciones entre aspectos: estudio sobre un caso industrial

Si bien la orientación a aspectos es aceptada como un mecanismo efectivo para la separación de crosscutting concerns, la característica de obliviousness entre aspectos donde el programa base desconoce la existencia de los mismos, hace que el comportamiento del sistema sea mucho más difícil de compre...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autor principal: Álvarez, Alejandro Nicolás
Otros Autores: Gordillo, Silvia Ethel
Formato: Tesis Tesis de grado
Lenguaje:Español
Publicado: 2013
Materias:
Acceso en línea:http://sedici.unlp.edu.ar/handle/10915/46835
Aporte de:
Descripción
Sumario:Si bien la orientación a aspectos es aceptada como un mecanismo efectivo para la separación de crosscutting concerns, la característica de obliviousness entre aspectos donde el programa base desconoce la existencia de los mismos, hace que el comportamiento del sistema sea mucho más difícil de comprender. Además, debido al hecho de que los aspectos afectan varios elementos de la aplicación, es probable que los mismos interfieran entre sí de alguna manera. Esto da lugar a que se produzcan interacciones entre los aspectos, necesarias para lograr la funcionalidad final esperada. Las interacciones entre aspectos son un tema abierto de investigación. Sanen et al. presentan un estudio sobre las interacciones, donde los autores clasifican las mismas en las siguientes categorías: dependency, conflict, mutex y reinforcement. El presente Trabajo de Grado propone estudiar las interacciones entre aspectos sobre una implementación de complejidad considerable, que involucre varios aspectos funcionales. Para esto, se implementó un software complejo como es el de las máquinas tragamonedas, dominio en el cual hemos trabajado por 3 años. En este estudio se reportan casos concretos de interacciones y se presentan implementanciones para el tratamiento de las mismas. En algunos casos mediante mecanimos adhoc y en otros casos con una solución genérica, aplicable a otros dominios.