Spelling suggestions: "subject:"desenvolvimento orientado a aspectos"" "subject:"desenvolvimento orientado a spectos""
1 |
CrossMDA2: Uma abordagem para minimizar o problema da fragilidade de pointcuts na evolu??o de sistemas orientados a aspectosFernandes, Victor Hugo de Carvalho 19 August 2009 (has links)
Made available in DSpace on 2014-12-17T15:47:54Z (GMT). No. of bitstreams: 1
VitorHCF_DISSERT.pdf: 1785877 bytes, checksum: f2ffb41b74e619df077cce589a2a45d2 (MD5)
Previous issue date: 2009-08-19 / 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
|
2 |
Frameworks transversais: definições, classificações, arquitetura e utilização em um processo de desenvolvimento de software / Crosscutting framweorks: definitions, classifications, architecture and using in a software development processCamargo, Valter Vieira de 25 September 2006 (has links)
O paradigma orientado a objetos não dispõe de abstrações adequadas à modularização de interesses transversais - interesses cuja implementação encontra-se entrelaçada e espalhada por todos os módulos de um sistema. Com o surgimento da Programação Orientada a Aspectos e a disponibilidade de abstrações adequadas à modularização de interesses transversais, o reúso desses interesses foi facilitado. Nesta tese são apresentados alguns resultados de esforços de pesquisa que visam a tornar o reúso de interesses transversais mais efetivo. Definições e classificações para frameworks desenvolvidos no contexto da POA - frameworks transversais - são apresentadas com o objetivo de facilitar a comunicação entre usuários e pesquisadores. Uma arquitetura de referência para o projeto e implementação de frameworks transversais, que torna sua estrutura mais clara e facilita a integração de vários frameworks quando a intenção é criar um repositório de aspectos reusáveis, é proposta. Três famílias de frameworks transversais: de persistência, de segurança e de regras de negócio foram desenvolvidas. Cada família de frameworks transversais constitui uma linha de produtos de software, em que membros podem ser configurados com características (features) distintas. Um processo de desenvolvimento, denominado ProFT/PU, baseado no Processo Unificado (PU), que considera as famílias de frameworks ao longo de todo o processo é apresentado, juntamente com um exemplo de sua utilização para uma aplicação típica. Um estudo de caso para comparar o tempo requerido para reusar um framework transversal de persistência e um framework orientado a objetos de persistência é também apresentado e discutido. / The object-oriented paradigm does not provide adequate abstractions to modularize crosscutting concerns - concerns whose implementation end up tangling and spreading throughout the modules of a system. With the emerging of Aspect-Oriented Programming (AOP) and the availability of abstractions suitable to modularize crosscutting concerns, the reuse of such concerns is facilitated. In this thesis, some results of research efforts to make the reuse of crosscutting concerns more effective are presented. Definitions and classifications for frameworks developed in the context of AOP - crosscutting frameworks - with the objective of improving understanding and communication among users and researchers are presented. An architecture specifically to design and implement this type of framework, which makes its structure clearer and facilitates the integration of several frameworks, is proposed. Three families of crosscutting frameworks for persistence, security and business rules, were developed. Each crosscutting framework family is a software product line, in which members can be instantiated with distinct characteristics. A development process, named ProFT/PU, based on Unifed Process (UP), which takes into account the families during the process, is presented, along with an example of its use for a typical application. A case study to compare the time required to reuse a persistence crosscutting framework and a persistence object-oriented framework is also presented and discussed.
|
3 |
Uma estrat?gia dirigida a modelos e baseada em linguagem de descri??o arquitetural para linhas de produtos de softwareMedeiros, Ana Luisa Ferreira de 30 July 2012 (has links)
Made available in DSpace on 2014-12-17T15:47:00Z (GMT). No. of bitstreams: 1
AnaLFM_TESE.pdf: 3970701 bytes, checksum: 513ce9d2a22c9323df778dcf23fb1033 (MD5)
Previous issue date: 2012-07-30 / Model-oriented strategies have been used to facilitate products customization in the
software products lines (SPL) context and to generate the source code of these
derived products through variability management. Most of these strategies use an
UML (Unified Modeling Language)-based model specification. Despite its wide
application, the UML-based model specification has some limitations such as the fact
that it is essentially graphic, presents deficiencies regarding the precise description of
the system architecture semantic representation, and generates a large model, thus
hampering the visualization and comprehension of the system elements. In contrast,
architecture description languages (ADLs) provide graphic and textual support for
the structural representation of architectural elements, their constraints and
interactions. This thesis introduces ArchSPL-MDD, a model-driven strategy in which
models are specified and configured by using the LightPL-ACME ADL. Such
strategy is associated to a generic process with systematic activities that enable to
automatically generate customized source code from the product model. ArchSPLMDD
strategy integrates aspect-oriented software development (AOSD), modeldriven
development (MDD) and SPL, thus enabling the explicit modeling as well as
the modularization of variabilities and crosscutting concerns. The process is
instantiated by the ArchSPL-MDD tool, which supports the specification of domain
models (the focus of the development) in LightPL-ACME. The ArchSPL-MDD uses
the Ginga Digital TV middleware as case study. In order to evaluate the efficiency,
applicability, expressiveness, and complexity of the ArchSPL-MDD strategy, a
controlled experiment was carried out in order to evaluate and compare the
ArchSPL-MDD tool with the GingaForAll tool, which instantiates the process that is
part of the GingaForAll UML-based strategy. Both tools were used for configuring
the products of Ginga SPL and generating the product source code / Estrat?gias dirigidas a modelos t?m sido usadas para facilitar a customiza??o de
produtos no contexto de Linhas de Produtos de Software (LPS) e gera??o de c?digo
fonte desses produtos derivados atrav?s do gerenciamento de variabilidades. A
maioria dessas estrat?gias faz uso da especifica??o de modelos baseados em UML
(Unified Modeling Language), que apesar de ser amplamente aplicada, possui algumas
limita??es por ser essencialmente gr?fica, apresentar defici?ncia em descrever
precisamente a sem?ntica da representa??o da arquitetura do sistema e gerar um
modelo extenso, o que dificulta a visualiza??o e compreens?o dos elementos do
sistema. J? as linguagens de descri??o arquiteturais (ADLs) oferecem suporte textual
e gr?fico para representa??o estrutural dos elementos arquiteturais, suas restri??es e
intera??es. Essa tese apresenta ArchSPL-MDD, uma estrat?gia dirigida a modelos
especificados e configurados usando a ADL LightPL-ACME. Tal estrat?gia est?
associada a um processo gen?rico com atividades sistem?ticas que permitem a
gera??o autom?tica do c?digo fonte customizados a partir do modelo do produto. A
estrat?gia ArchSPL-MDD integra o desenvolvimento orientado a aspectos (DSOA),
desenvolvimento dirigido a modelos (DDM), e LPS, o que permite a modelagem
expl?cita e modulariza??o de variabilidades e caracter?sticas transversais. O processo
? instanciado pela ferramenta ArchSPL-MDD, que oferece suporte para a
especifica??o, em LightPL-ACME dos modelos de dom?nio que s?o o foco do
desenvolvimento. O ArchSPL-MDD usa como estudo de caso o middleware de TV
Digital Ginga. De forma a avaliar a efici?ncia, aplicabilidade, expressividade e
complexidade da estrat?gia ArchSPL-MDD, foi realizado um experimento controlado
que avalia e compara a ferramenta ArchSPL-MDD, com a ferramenta GingaForAll,
que instancia o processo que faz parte da estrat?gia GingaForAll, baseada em UML.
Ambas as ferramentas foram usadas para configura??o do produto da LPS do do
middlelare Ginga e gera??o de c?digo fonte do produto
|
4 |
MaRISA-AOCode: uma abordagem gen?rica para gera??o de c?digo orientado a aspectosGuimar?es, Everton Tavares 04 March 2010 (has links)
Made available in DSpace on 2014-12-17T15:47:52Z (GMT). No. of bitstreams: 1
EvertonTG_DISSERT.pdf: 4234791 bytes, checksum: c40151c48849ad62c0cc34be8c3b56eb (MD5)
Previous issue date: 2010-03-04 / Currently there are several aspect-oriented approaches that are related to different stages of software development process. These approaches often lack integration with each other and their models and artifacts are not aligned in a coherent process. The integration of Aspect-Oriented Software development (AOSD) and Model-Driven Development (MDD) enables automatic propagation of models from one phase to another, avoiding loss of important information and decisions established in each. This paper presents a model driven approach, called Marisa-AOCode, which supports the processing of detailed design artifacts to code in different Aspect-Oriented Programming languages. The approach proposed by Maris- AOCode defines transformation rules between aSideML, a modeling language for aspectoriented
detailed design, and Metaspin, a generic metamodel for aspect-oriented programming languages. The instantiation of the generic metamodel (Metaspin) provided by the approach
of Maris-AOCode is illustrated by the transformation of Metaspin for two languages: AspectLua and CaesarJ. We illustrate the approach with a case study based on the Health
Watcher System / Atualmente existem diversas abordagens orientadas a aspectos que est?o relacionadas ?s diferentes fases do processo de desenvolvimento de software. Essas abordagens geralmente n?o possuem integra??o entre si e seus modelos e artefatos n?o est?o alinhados dentro de um processo coerente. A integra??o entre o desenvolvimento de software orientado a aspectos (DSOA) e o desenvolvimento dirigido a modelos (MDD) permite propaga??o autom?tica entre modelos de uma fase para outra, evitando perda de informa??es e decis?es importantes estabelecidas em cada uma delas. Este trabalho apresenta uma abordagem dirigida a modelos, denominada MaRiSA-AOCode, que suporta a transforma??o de artefatos de projeto detalhado em c?digo para diferentes linguagens de Programa??o Orientada a Aspectos. A abordagem proposta por MaRiSA-AOCode define regras de transforma??o entre aSideML, uma linguagem de modelagem para projeto detalhado orientado a aspectos, e Metaspin, um
metamodelo gen?rico para linguagens de programa??o orientadas a aspectos. A instancia??o do metamodelo gen?rico (Metaspin) provido pela abordagem de MaRiSA-AOCode ? ilustrada atrav?s da transforma??o do Metaspin para duas linguagens: AspectLua e CaesarJ. Ilustramos a abordagem com um estudo de caso baseado no sistema Health Watcher
|
5 |
Frameworks transversais: definições, classificações, arquitetura e utilização em um processo de desenvolvimento de software / Crosscutting framweorks: definitions, classifications, architecture and using in a software development processValter Vieira de Camargo 25 September 2006 (has links)
O paradigma orientado a objetos não dispõe de abstrações adequadas à modularização de interesses transversais - interesses cuja implementação encontra-se entrelaçada e espalhada por todos os módulos de um sistema. Com o surgimento da Programação Orientada a Aspectos e a disponibilidade de abstrações adequadas à modularização de interesses transversais, o reúso desses interesses foi facilitado. Nesta tese são apresentados alguns resultados de esforços de pesquisa que visam a tornar o reúso de interesses transversais mais efetivo. Definições e classificações para frameworks desenvolvidos no contexto da POA - frameworks transversais - são apresentadas com o objetivo de facilitar a comunicação entre usuários e pesquisadores. Uma arquitetura de referência para o projeto e implementação de frameworks transversais, que torna sua estrutura mais clara e facilita a integração de vários frameworks quando a intenção é criar um repositório de aspectos reusáveis, é proposta. Três famílias de frameworks transversais: de persistência, de segurança e de regras de negócio foram desenvolvidas. Cada família de frameworks transversais constitui uma linha de produtos de software, em que membros podem ser configurados com características (features) distintas. Um processo de desenvolvimento, denominado ProFT/PU, baseado no Processo Unificado (PU), que considera as famílias de frameworks ao longo de todo o processo é apresentado, juntamente com um exemplo de sua utilização para uma aplicação típica. Um estudo de caso para comparar o tempo requerido para reusar um framework transversal de persistência e um framework orientado a objetos de persistência é também apresentado e discutido. / The object-oriented paradigm does not provide adequate abstractions to modularize crosscutting concerns - concerns whose implementation end up tangling and spreading throughout the modules of a system. With the emerging of Aspect-Oriented Programming (AOP) and the availability of abstractions suitable to modularize crosscutting concerns, the reuse of such concerns is facilitated. In this thesis, some results of research efforts to make the reuse of crosscutting concerns more effective are presented. Definitions and classifications for frameworks developed in the context of AOP - crosscutting frameworks - with the objective of improving understanding and communication among users and researchers are presented. An architecture specifically to design and implement this type of framework, which makes its structure clearer and facilitates the integration of several frameworks, is proposed. Three families of crosscutting frameworks for persistence, security and business rules, were developed. Each crosscutting framework family is a software product line, in which members can be instantiated with distinct characteristics. A development process, named ProFT/PU, based on Unifed Process (UP), which takes into account the families during the process, is presented, along with an example of its use for a typical application. A case study to compare the time required to reuse a persistence crosscutting framework and a persistence object-oriented framework is also presented and discussed.
|
Page generated in 0.1163 seconds