Addressing aspect interactions in an industrial setting: experiences, problems and solutions
- Autores
- Zambrano Polo y La Borda, Arturo Federico
- Año de publicación
- 2013
- Idioma
- inglés
- Tipo de recurso
- tesis doctoral
- Estado
- versión aceptada
- Colaborador/a o director/a de tesis
- Fabry, Johan
Gordillo, Silvia Ethel - Descripción
- Aspect oriented programming (AOP) introduces new and powerful modularization constructs. The aspect module is used to encapsulate crosscutting concerns, which otherwise would remain tangled and scattered. The idea of encapsulating crosscutting concerns rapidly expanded to earlier phases in the development cycle, including requirement analysis (aspect oriented requirement engineering, AORE) and design (aspect oriented modeling, AOM). The overall application of aspect orientation concepts is known as aspect oriented software development (AOSD). AOP is not yet a mainstream practice. Particularly AOSD is still in its early stages. This is reflected in the lack of reports of full development cycles using aspect oriented approaches, especially using industrial case studies. Furthermore, the power of aspects comes at the price of new challenges, one of them is that systems built using aspects are more difficult to understand. The crosscutting nature of aspects allows them to alter the behavior of many other modules. As a result, aspects may interact in unintended and unanticipated ways. This problem is known as aspect interactions. In this work we deal with the aspect interaction problem in the context of an industrial domain: slots machines. We perform a complete development cycle of the slot machine software. This is, to the best of our knowledge, the first complete industrial case of study of aspect orientation. Through this experience we discovered the limitations with regard to aspect interactions, of some emblematic aspect oriented approaches for requirement engineering, design and implementation. The contribution of this work is threefold. Firstly, we contribute with the evaluation and extensions to some of AORE and AOM approaches, in order to provide explicit support for aspect interactions in requirement analysis and design phases. We also evaluate the implementation of interactions using a static and a dynamic AOP language, and propose an AspectJ extension that copes with aspect interactions. Secondly, this work is the first report of a complete aspect oriented development cycle of an industrial case study. Thirdly, this work provides a complex case study that presents several business logic crosscutting concerns, which in turn exhibit numerous aspect interactions, that serves as a challenging test bed for upcoming AOSD approaches.
Doctor en Ciencias Informáticas
Universidad Nacional de La Plata
Facultad de Informática - Materia
-
Ciencias Informáticas
PROGRAMMING TECHNIQUES
Industrial automation
Requirements/Specifications
software engineering
aspect oriented programming
aspects dependencies and interactions
industrial case - Nivel de accesibilidad
- acceso abierto
- Condiciones de uso
- http://creativecommons.org/licenses/by-sa/2.5/ar/
- Repositorio
- Institución
- Universidad Nacional de La Plata
- OAI Identificador
- oai:sedici.unlp.edu.ar:10915/35861
Ver los metadatos del registro completo
id |
SEDICI_4fee1682a33c59685a7cc5a66cbaf683 |
---|---|
oai_identifier_str |
oai:sedici.unlp.edu.ar:10915/35861 |
network_acronym_str |
SEDICI |
repository_id_str |
1329 |
network_name_str |
SEDICI (UNLP) |
spelling |
Addressing aspect interactions in an industrial setting: experiences, problems and solutionsZambrano Polo y La Borda, Arturo FedericoCiencias InformáticasPROGRAMMING TECHNIQUESIndustrial automationRequirements/Specificationssoftware engineeringaspect oriented programmingaspects dependencies and interactionsindustrial caseAspect oriented programming (AOP) introduces new and powerful modularization constructs. The aspect module is used to encapsulate crosscutting concerns, which otherwise would remain tangled and scattered. The idea of encapsulating crosscutting concerns rapidly expanded to earlier phases in the development cycle, including requirement analysis (aspect oriented requirement engineering, AORE) and design (aspect oriented modeling, AOM). The overall application of aspect orientation concepts is known as aspect oriented software development (AOSD). AOP is not yet a mainstream practice. Particularly AOSD is still in its early stages. This is reflected in the lack of reports of full development cycles using aspect oriented approaches, especially using industrial case studies. Furthermore, the power of aspects comes at the price of new challenges, one of them is that systems built using aspects are more difficult to understand. The crosscutting nature of aspects allows them to alter the behavior of many other modules. As a result, aspects may interact in unintended and unanticipated ways. This problem is known as aspect interactions. In this work we deal with the aspect interaction problem in the context of an industrial domain: slots machines. We perform a complete development cycle of the slot machine software. This is, to the best of our knowledge, the first complete industrial case of study of aspect orientation. Through this experience we discovered the limitations with regard to aspect interactions, of some emblematic aspect oriented approaches for requirement engineering, design and implementation. The contribution of this work is threefold. Firstly, we contribute with the evaluation and extensions to some of AORE and AOM approaches, in order to provide explicit support for aspect interactions in requirement analysis and design phases. We also evaluate the implementation of interactions using a static and a dynamic AOP language, and propose an AspectJ extension that copes with aspect interactions. Secondly, this work is the first report of a complete aspect oriented development cycle of an industrial case study. Thirdly, this work provides a complex case study that presents several business logic crosscutting concerns, which in turn exhibit numerous aspect interactions, that serves as a challenging test bed for upcoming AOSD approaches.Doctor en Ciencias InformáticasUniversidad Nacional de La PlataFacultad de InformáticaFabry, JohanGordillo, Silvia Ethel2013-06-05info:eu-repo/semantics/doctoralThesisinfo:eu-repo/semantics/acceptedVersionTesis de doctoradohttp://purl.org/coar/resource_type/c_db06info:ar-repo/semantics/tesisDoctoralapplication/pdfhttp://sedici.unlp.edu.ar/handle/10915/35861https://doi.org/10.35537/10915/35861enginfo:eu-repo/semantics/openAccesshttp://creativecommons.org/licenses/by-sa/2.5/ar/Creative Commons Attribution-ShareAlike 2.5 Argentina (CC BY-SA 2.5)reponame:SEDICI (UNLP)instname:Universidad Nacional de La Platainstacron:UNLP2025-09-03T10:32:09Zoai:sedici.unlp.edu.ar:10915/35861Institucionalhttp://sedici.unlp.edu.ar/Universidad públicaNo correspondehttp://sedici.unlp.edu.ar/oai/snrdalira@sedici.unlp.edu.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:13292025-09-03 10:32:10.063SEDICI (UNLP) - Universidad Nacional de La Platafalse |
dc.title.none.fl_str_mv |
Addressing aspect interactions in an industrial setting: experiences, problems and solutions |
title |
Addressing aspect interactions in an industrial setting: experiences, problems and solutions |
spellingShingle |
Addressing aspect interactions in an industrial setting: experiences, problems and solutions Zambrano Polo y La Borda, Arturo Federico Ciencias Informáticas PROGRAMMING TECHNIQUES Industrial automation Requirements/Specifications software engineering aspect oriented programming aspects dependencies and interactions industrial case |
title_short |
Addressing aspect interactions in an industrial setting: experiences, problems and solutions |
title_full |
Addressing aspect interactions in an industrial setting: experiences, problems and solutions |
title_fullStr |
Addressing aspect interactions in an industrial setting: experiences, problems and solutions |
title_full_unstemmed |
Addressing aspect interactions in an industrial setting: experiences, problems and solutions |
title_sort |
Addressing aspect interactions in an industrial setting: experiences, problems and solutions |
dc.creator.none.fl_str_mv |
Zambrano Polo y La Borda, Arturo Federico |
author |
Zambrano Polo y La Borda, Arturo Federico |
author_facet |
Zambrano Polo y La Borda, Arturo Federico |
author_role |
author |
dc.contributor.none.fl_str_mv |
Fabry, Johan Gordillo, Silvia Ethel |
dc.subject.none.fl_str_mv |
Ciencias Informáticas PROGRAMMING TECHNIQUES Industrial automation Requirements/Specifications software engineering aspect oriented programming aspects dependencies and interactions industrial case |
topic |
Ciencias Informáticas PROGRAMMING TECHNIQUES Industrial automation Requirements/Specifications software engineering aspect oriented programming aspects dependencies and interactions industrial case |
dc.description.none.fl_txt_mv |
Aspect oriented programming (AOP) introduces new and powerful modularization constructs. The aspect module is used to encapsulate crosscutting concerns, which otherwise would remain tangled and scattered. The idea of encapsulating crosscutting concerns rapidly expanded to earlier phases in the development cycle, including requirement analysis (aspect oriented requirement engineering, AORE) and design (aspect oriented modeling, AOM). The overall application of aspect orientation concepts is known as aspect oriented software development (AOSD). AOP is not yet a mainstream practice. Particularly AOSD is still in its early stages. This is reflected in the lack of reports of full development cycles using aspect oriented approaches, especially using industrial case studies. Furthermore, the power of aspects comes at the price of new challenges, one of them is that systems built using aspects are more difficult to understand. The crosscutting nature of aspects allows them to alter the behavior of many other modules. As a result, aspects may interact in unintended and unanticipated ways. This problem is known as aspect interactions. In this work we deal with the aspect interaction problem in the context of an industrial domain: slots machines. We perform a complete development cycle of the slot machine software. This is, to the best of our knowledge, the first complete industrial case of study of aspect orientation. Through this experience we discovered the limitations with regard to aspect interactions, of some emblematic aspect oriented approaches for requirement engineering, design and implementation. The contribution of this work is threefold. Firstly, we contribute with the evaluation and extensions to some of AORE and AOM approaches, in order to provide explicit support for aspect interactions in requirement analysis and design phases. We also evaluate the implementation of interactions using a static and a dynamic AOP language, and propose an AspectJ extension that copes with aspect interactions. Secondly, this work is the first report of a complete aspect oriented development cycle of an industrial case study. Thirdly, this work provides a complex case study that presents several business logic crosscutting concerns, which in turn exhibit numerous aspect interactions, that serves as a challenging test bed for upcoming AOSD approaches. Doctor en Ciencias Informáticas Universidad Nacional de La Plata Facultad de Informática |
description |
Aspect oriented programming (AOP) introduces new and powerful modularization constructs. The aspect module is used to encapsulate crosscutting concerns, which otherwise would remain tangled and scattered. The idea of encapsulating crosscutting concerns rapidly expanded to earlier phases in the development cycle, including requirement analysis (aspect oriented requirement engineering, AORE) and design (aspect oriented modeling, AOM). The overall application of aspect orientation concepts is known as aspect oriented software development (AOSD). AOP is not yet a mainstream practice. Particularly AOSD is still in its early stages. This is reflected in the lack of reports of full development cycles using aspect oriented approaches, especially using industrial case studies. Furthermore, the power of aspects comes at the price of new challenges, one of them is that systems built using aspects are more difficult to understand. The crosscutting nature of aspects allows them to alter the behavior of many other modules. As a result, aspects may interact in unintended and unanticipated ways. This problem is known as aspect interactions. In this work we deal with the aspect interaction problem in the context of an industrial domain: slots machines. We perform a complete development cycle of the slot machine software. This is, to the best of our knowledge, the first complete industrial case of study of aspect orientation. Through this experience we discovered the limitations with regard to aspect interactions, of some emblematic aspect oriented approaches for requirement engineering, design and implementation. The contribution of this work is threefold. Firstly, we contribute with the evaluation and extensions to some of AORE and AOM approaches, in order to provide explicit support for aspect interactions in requirement analysis and design phases. We also evaluate the implementation of interactions using a static and a dynamic AOP language, and propose an AspectJ extension that copes with aspect interactions. Secondly, this work is the first report of a complete aspect oriented development cycle of an industrial case study. Thirdly, this work provides a complex case study that presents several business logic crosscutting concerns, which in turn exhibit numerous aspect interactions, that serves as a challenging test bed for upcoming AOSD approaches. |
publishDate |
2013 |
dc.date.none.fl_str_mv |
2013-06-05 |
dc.type.none.fl_str_mv |
info:eu-repo/semantics/doctoralThesis info:eu-repo/semantics/acceptedVersion Tesis de doctorado http://purl.org/coar/resource_type/c_db06 info:ar-repo/semantics/tesisDoctoral |
format |
doctoralThesis |
status_str |
acceptedVersion |
dc.identifier.none.fl_str_mv |
http://sedici.unlp.edu.ar/handle/10915/35861 https://doi.org/10.35537/10915/35861 |
url |
http://sedici.unlp.edu.ar/handle/10915/35861 https://doi.org/10.35537/10915/35861 |
dc.language.none.fl_str_mv |
eng |
language |
eng |
dc.rights.none.fl_str_mv |
info:eu-repo/semantics/openAccess http://creativecommons.org/licenses/by-sa/2.5/ar/ Creative Commons Attribution-ShareAlike 2.5 Argentina (CC BY-SA 2.5) |
eu_rights_str_mv |
openAccess |
rights_invalid_str_mv |
http://creativecommons.org/licenses/by-sa/2.5/ar/ Creative Commons Attribution-ShareAlike 2.5 Argentina (CC BY-SA 2.5) |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:SEDICI (UNLP) instname:Universidad Nacional de La Plata instacron:UNLP |
reponame_str |
SEDICI (UNLP) |
collection |
SEDICI (UNLP) |
instname_str |
Universidad Nacional de La Plata |
instacron_str |
UNLP |
institution |
UNLP |
repository.name.fl_str_mv |
SEDICI (UNLP) - Universidad Nacional de La Plata |
repository.mail.fl_str_mv |
alira@sedici.unlp.edu.ar |
_version_ |
1842260168303181824 |
score |
13.13397 |