Apoio computacional para auxiliar a reengenharia de sistemas legados Java para AspectJ.
AUTOR(ES)
Daniel Kawakami
DATA DE PUBLICAÇÃO
2007
RESUMO
Diretrizes para conduzir a reengenharia de sistemas legados implementados em linguagem Java para linguagem orientada a aspectos, AspectJ, preservando a funcionalidade original, foram propostas na abordagem Aspecting. A partir de estudos de caso realizados com essa abordagem, inferiu-se que poderia haver redução de esforços se um apoio computacional fosse criado. A Lista de Indícios (candidatos a aspectos) originalmente criada na Aspecting usava análise léxica para a identificação de interesses transversais no código legado Java. Assim, um Modelo de Indícios foi criado neste trabalho, para identificação de interesses transversais em códigos legados com base em análise sintática, por meio de AST (Abstract Syntax Tree) e para reestruturação do código Java para AspectJ. O sistema resultante apresenta melhorias em sua estrutura interna, devido à separação de interesses transversais e eliminação de problemas de espalhamento e de entrelaçamento em código, refletindo em um sistema mais modular, legível e manutenível. Um apoio computacional que automatiza parte das diretrizes envolvidas na reengenharia do sistema foi criado para viabilizar esse processo de reengenharia. Esse apoio computacional é denominado ReJAsp (apoio computacional para Reengenharia de sistemas Java para AspectJ) e foi construído como um plug-in do ambiente de desenvolvimento integrado Eclipse. Para avaliação do ReJAsp foram conduzidos estudos de caso a partir de sistemas implementados em Java da Internet e outros desenvolvidos em disciplinas de cursos de graduação da UFSCar.
ASSUNTO(S)
apoio computacional interesses transversais engenharia de software reengenharia orientada a aspectos engenharia de software sistema legado
ACESSO AO ARTIGO
http://www.bdtd.ufscar.br/htdocs/tedeSimplificado//tde_busca/arquivo.php?codArquivo=1711Documentos Relacionados
- Structuring adaptive applications using AspectJ
- Detecting bad smells in aspectJ
- "Teste de programas orientados a aspectos: uma abordagem estrutural para AspectJ"
- Structural integration testing of aspect-oriented programs: a pointcut-based approach for AspectJ
- Uma estratégia de refatoração para AspectJ utilizando leis de programação e XML