CrossMDA2: Uma abordagem para minimizar o problema da fragilidade de pointcuts na evolução de sistemas orientados a aspectos
Contribuinte(s) |
Delicatto, Flávia Coimbra CPF:00569663342 http://lattes.cnpq.br/2750902479388486 CPF:39900533100 Pires, Paulo de Figueiredo CPF:84384921772 http://lattes.cnpq.br/1304174767727101 Kulesza, Uira CPF:02219235432 http://lattes.cnpq.br/0189095897739979 Ribeiro, Cláudia Maria Fernandes Araújo CPF:24213519368 http://lattes.cnpq.br/4724141474353962 Borba, Paulo Henrique Monteiro CPF:68396597472 http://lattes.cnpq.br/9395715443254344 |
---|---|
Data(s) |
17/12/2014
05/12/2011
17/12/2014
19/08/2009
|
Resumo |
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 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 |
Formato |
application/pdf |
Identificador |
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. http://repositorio.ufrn.br:8080/jspui/handle/123456789/18016 |
Idioma(s) |
por |
Publicador |
Universidade Federal do Rio Grande do Norte BR UFRN Programa de Pós-Graduação em Sistemas e Computação Ciência da Computação |
Direitos |
Acesso Aberto |
Palavras-Chave | #Desenvolvimento orientado a aspectos #CrossMDA #MDA #CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO |
Tipo |
Dissertação |