Spelling suggestions: "subject:"crosscutting concerns"" "subject:"crosscuting concerns""
1 |
Uma Linguagem de Aspectos para QVT.VIEIRA, Carlos Artur Nascimento. 21 May 2018 (has links)
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.
|
2 |
以靜態織入方法實現剖面導向工作流程 / Design and Implementation of a Static Weaver for Aspectual Workflow許朝傑, Hsu, Chao Chieh Unknown Date (has links)
現今的應用系統中常會有橫跨性(Cross-Cutting)的程式模組存在,這類程式模組包括:日誌記錄、授權認證、資料永存性等,而這種程式模組在系統中若沒有被區分抽離出來,常常會導致系統重複出現與主要功能需求無關的程式碼,除此之外,這些橫跨性需求的程式碼還會與主要功能需求程式碼糾結在一起,造成程式碼夾雜不清的現象。在工作流程(Workflow)的開發過程中也有著相同的問題。為了解決上述的問題,本研究以JBoss jBPM(Java Business Process Manage- ment)為基礎平台,將剖面導向程式設計(Aspect-Oriented Progra- mming)的觀念與技術運用在工作流程的領域中,使流程設計人員能夠利用AOP的方式來解決橫跨性需求的模組化問題,並且利用靜態織入方法,改善jBPM工作流程引擎進行剖面流程在織入時的效能。 / Cross-cutting concerns are those system design issues that cut across the various modules of an application and are typically foundational system services that we need to consider before diving into building an application. Most common among these are logging, authentication, authorization, and persistence. Cross-cutting concerns always cause program code to be scattered and tangled, and therefore make it harder to understand and maintain. Similar problem also occurs in the field of workflow. In our research, we apply the concept of aspect-oriented programming(AOP) to the field of workflow system, and implement a static weaver for jBPM. With static weaver, process designer can use the facilities of AOP, and the performance is also improved via static weaving .
|
Page generated in 0.0642 seconds