Título: | ANALYZING EXCEPTION FLOWS OF ASPECT-ORIENTED PROGRAMS | |||||||
Autor: |
ROBERTA DE SOUZA COELHO |
|||||||
Colaborador(es): |
ARNDT VON STAA - Orientador |
|||||||
Catalogação: | 15/JAN/2009 | Língua(s): | ENGLISH - UNITED STATES |
|||||
Tipo: | TEXT | Subtipo: | THESIS | |||||
Notas: |
[pt] Todos os dados constantes dos documentos são de inteira responsabilidade de seus autores. Os dados utilizados nas descrições dos documentos estão em conformidade com os sistemas da administração da PUC-Rio. [en] All data contained in the documents are the sole responsibility of the authors. The data used in the descriptions of the documents are in conformity with the systems of the administration of PUC-Rio. |
|||||||
Referência(s): |
[pt] https://www.maxwell.vrac.puc-rio.br/projetosEspeciais/ETDs/consultas/conteudo.php?strSecao=resultado&nrSeq=12968&idi=1 [en] https://www.maxwell.vrac.puc-rio.br/projetosEspeciais/ETDs/consultas/conteudo.php?strSecao=resultado&nrSeq=12968&idi=2 |
|||||||
DOI: | https://doi.org/10.17771/PUCRio.acad.12968 | |||||||
Resumo: | ||||||||
It has been empirically observed that aspect-oriented (AO)
decompositions
promote the modularity and the design stability of software
systems containing
crosscutting concerns. However, most of this existing
empirical research has focused
on the positive and negative impacts of AO programming in
the modularization of
crosscutting concerns in the context of normal control flow
of programs.
Consequently, most of these works do not account for the
exceptions that may flow
from aspects: when an aspect adds a new functionality to
specific points in the code,
this additional behavior may also bring new exceptions. An
aspect also has the ability
to handle exceptions that were previously handled inside the
base code. Moreover, the
exceptions that escape form aspects also flow inside the
program, and may lead to
unexpected error-prone scenarios, such as: unintended
handler actions and uncaught
exceptions. This thesis presents an empirical study to
evaluate the impact of aspects on
the exception flow of programs. To support the reasoning
about the flow of exceptions
on AO programs, a static analysis tool called SAFE (Static
Analysis for the Flow of
Exceptions) was implemented. Based on data empirically
collected during the study we
characterized a catalogue of bug patterns related to the
exception handling code of AO
programs. To help AO developers to check the reliability of
the exception handling
code, this work presents verification approach - supported
by the SAFE tool - which
provides guidelines to counter these bug patterns. Our
findings show that the exception
handling code in aspect-oriented programs tends to be
error-prone, but that a
verification approach based on static analysis can lead to
significant improvements.
|
||||||||