Return to search

Uma Linguagem de Aspectos para QVT.

Submitted by Maria Medeiros (maria.dilva1@ufcg.edu.br) on 2018-05-21T12:15:51Z
No. of bitstreams: 1
CARLOS ARTUR NASCIMENTO VIEIRA - DISSERTAÇÃO (PPGCC) 2016.pdf: 1877609 bytes, checksum: 86c3c3659b1ee15c0e906fc7298d37ae (MD5) / Made available in DSpace on 2018-05-21T12:15:51Z (GMT). No. of bitstreams: 1
CARLOS ARTUR NASCIMENTO VIEIRA - DISSERTAÇÃO (PPGCC) 2016.pdf: 1877609 bytes, checksum: 86c3c3659b1ee15c0e906fc7298d37ae (MD5)
Previous issue date: 2016 / Capes / MDA, ou Model-driven Architecture, é um padrão definido pelo Object Management Group (OMG) que permite a geração de modelos por outros modelos por meio das Transformações MDA, um conjunto de operações que relacionam elementos de um ou mais modelos de entrada e saída. As transformações podem ser escritas por meio de linguagens como Query/View/Transformation (QVT), outro padrão do OMG. Como em linguagens de programação, pode-se fazer necessária a adição de funcionalidades que acabam se cruzando no código (como logging e rastreio, por exemplo), podendo resultar em cross-cutting concerns na transformação. Esse problema pode então ser enfrentado por meio do Paradigma Orientado a Aspectos. Presentemente, não encontramos soluções que aplicam, especificamente, aspectos para a solução de cross-cutting concerns em transformações escritas na linguagem QVT. Assim, nós propomos e desenvolvemos uma linguagem de aspectos para QVT, de nome AQVT, além de um compilador que realiza o weaving do código AQVT com o código original QVT. Utilizando-se de métricas sobre os programas QVT e a execução das transformações AQVT, realizamos um estudo empírico sobre a linguagem AQVT proposta. Identificamos nesse estudo que ocorre uma melhora fraca na qualidade de leitura e uma boa melhora na modularidade dos código QVT e AQVT, se comparado com uma transformação equivalente escrita puramente em QVT. Contudo, não foi possível realizar uma implementação completa de todas as funções do Paradigma de Aspectos e de alguns elementos da linguagem QVT em AQVT, deixando essas atividades como trabalhos futuros. / MDA (Model-Driven Architecture) is a standard specified by the Object Management group (OMG) that allows a developer to generate models from models by means of MDA Transformations, a set of functions that match and bind elements between source and target models. Transformations can be written in languages such as Query/View/Transformations Language (QVT), another OMG standard. As with programming languages, the addition of features in the code that cut through it (like logging and tracing) may cause cross-cutting concerns in the transformation. This problem can then be addressed through the use of the Aspect Oriented Paradigm. Currently, we could not find solutions that used Aspects for the specific problem of crosscutting concerns within QVT transformations. We proposed and developed an aspects language for QVT, named AQVT, along with a compiler that weaves both the QVT and AQVT codes into a single program. With the assistance of metrics applied to the QVT programs and the execution of AQVT code, we have performed an empirical research for the proposed QVT language. We identified that the quality of reading improved slightly and the modularity of the program increased, when comparing the code between two equivalent transformations (one with an AQVT module and the other without it). However, we were not able to completely implement all of the functions from the Aspects Paradigm nor some of the elements from the QVT language into AQVT and propose those activities as our future work.

Identiferoai:union.ndltd.org:IBICT/oai:localhost:riufcg/748
Date21 May 2018
CreatorsVIEIRA, Carlos Artur Nascimento.
ContributorsRAMALHO, Franklin de Souza.
PublisherUniversidade Federal de Campina Grande, PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO, UFCG, Brasil, Centro de Engenharia Elétrica e Informática - CEEI
Source SetsIBICT Brazilian ETDs
LanguagePortuguese
Detected LanguageEnglish
Typeinfo:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis
Sourcereponame:Biblioteca de Teses e Dissertações da UFCG, instname:Universidade Federal de Campina Grande, instacron:UFCG
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0117 seconds