Use este identificador para citar ou linkar para este item: https://repositorio.ufrn.br/handle/123456789/18016
Título: CrossMDA2: Uma abordagem para minimizar o problema da fragilidade de pointcuts na evolução de sistemas orientados a aspectos
Autor(es): Fernandes, Victor Hugo de Carvalho
Orientador: Delicatto, Flávia Coimbra
Palavras-chave: Desenvolvimento orientado a aspectos;CrossMDA;MDA
Data do documento: 19-Ago-2009
Editor: Universidade Federal do Rio Grande do Norte
Referência: FERNANDES, Victor Hugo de Carvalho. CrossMDA2: Uma abordagem para minimizar o problema da fragilidade de pointcuts na evolução de sistemas orientados a aspectos. 2009. 99 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal do Rio Grande do Norte, Natal, 2009.
Resumo: Este trabalho propõe uma abordagem baseada em modelos para minimizar o problema da fragilidade de pointcuts na evolução de sistemas desenvolvidos segundo o paradigma de orientação a aspectos. A abordagem proposta, denominada pointcuts baseados em visões conceituais, é motivada pela constatação das deficiências das abordagens tradicionais de definição de pointcuts, as quais em geral fazem referência direta a estrutura e/ou comportamento do software, tendendo assim a criar um acoplamento com o código. Tal acoplamento acarreta o problema denominado problema da fragilidade de pointcuts e dificulta a evolução dos sistemas orientados a aspectos. Este problema ocorre quando todos os pointcuts de cada aspecto devem ser revisados, devido a qualquer modificação/evolução no software, para garantir que eles continuam válidos mesmo após as alterações realizadas no software. Nossa abordagem é centrada na definição de pointcuts com base em um modelo conceitual, que possui definições da estrutura do sistema em um nível mais abstrato do o modelo de negócios. O modelo conceitual consiste de classificações em entidades denominadas visões conceituais dos elementos do modelo de negócio com base em características comuns. E relacionamentos entre essas visões. Desta forma, as definições dos pointcuts são criadas com base no modelo conceitual e não mais referenciando diretamente o modelo base da aplicação. Além disso, o modelo conceitual contém um conjunto de relacionamentos que permite que seja verificado automaticamente se as classificações existentes no modelo conceitual continuam válidas mesmo após uma evolução do software. Para tal, todo o desenvolvimento utilizando a abordagem de pointcuts baseados em visões conceituais é apoiado por um arcabouço denominado CrossMDA2 e por um processo de desenvolvimento baseado em MDA, ambos também propostos neste trabalho. Como prova de conceito, apresentamos duas versões de um estudo de caso, configurando um cenário de evolução que mostra como o uso de pointcuts baseados em visões conceituais auxilia na detecção e minimização da fragilidade de pointcuts. Para avaliação da proposta é usada a técnica de avaliação Goal/Question/Metric (GQM) juntamente com métricas para análise da eficiência na definição dos pointcuts
Abstract: This work proposes a model based approach for pointcut management in the presence of evolution in aspect oriented systems. The proposed approach, called conceptual visions based pointcuts, is motivated by the observation of the shortcomings in traditional approaches pointcuts definition, which generally refer directly to software structure and/or behavior, thereby creating a strong coupling between pointcut definition and the base code. This coupling causes the problem known as pointcut fragility problem and hinders the evolution of aspect-oriented systems. This problem occurs when all the pointcuts of each aspect should be reviewed due to any software changes/evolution, to ensure that they remain valid even after the changes made in the software. Our approach is focused on the pointcuts definition based on a conceptual model, which has definitions of the system's structure in a more abstract level. The conceptual model consists of classifications (called conceptual views) on entities of the business model elements based on common characteristics, and relationships between these views. Thus the pointcuts definitions are created based on the conceptual model rather than directly referencing the base model. Moreover, the conceptual model contains a set of relationships that allows it to be automatically verified if the classifications in the conceptual model remain valid even after a software change. To this end, all the development using the conceptual views based pointcuts approach is supported by a conceptual framework called CrossMDA2 and a development process based on MDA, both also proposed in this work. As proof of concept, we present two versions of a case study, setting up a scenario of evolution that shows how the use of conceptual visions based pointcuts helps detecting and minimizing the pointcuts fragility. For the proposal evaluation the Goal/Question/Metric (GQM) technique is used together with metrics for efficiency analysis in the pointcuts definition
URI: https://repositorio.ufrn.br/jspui/handle/123456789/18016
Aparece nas coleções:PPGSC - Mestrado em Sistemas e Computação

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
VitorHCF_DISSERT.pdf1,74 MBAdobe PDFThumbnail
Visualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.