Uma contribuição para a minimização do número de stubs no teste de integração de programas orientados a aspectos

A programação orientada a aspectos é uma abordagem que utiliza conceitos da separação de interesses para modularizar o software de maneira mais adequada. Com o surgimento dessa abordagem vieram também novos desafios, dentre eles o teste de programas orientados a aspectos. Duas estratégias de ord...

Full description

Bibliographic Details
Main Author: Reginaldo Ré
Other Authors: Paulo Cesar Masiero
Language:Portuguese
Published: Universidade de São Paulo 2009
Subjects:
Online Access:http://www.teses.usp.br/teses/disponiveis/55/55134/tde-28042010-114822/
id ndltd-IBICT-oai-teses.usp.br-tde-28042010-114822
record_format oai_dc
collection NDLTD
language Portuguese
sources NDLTD
topic Minimização de stubs de teste
Programação orientada a aspectos
Teses de integração
Aspect-oriented programming
Integration testing
Minimization of the number of stubs
spellingShingle Minimização de stubs de teste
Programação orientada a aspectos
Teses de integração
Aspect-oriented programming
Integration testing
Minimization of the number of stubs
Reginaldo Ré
Uma contribuição para a minimização do número de stubs no teste de integração de programas orientados a aspectos
description A programação orientada a aspectos é uma abordagem que utiliza conceitos da separação de interesses para modularizar o software de maneira mais adequada. Com o surgimento dessa abordagem vieram também novos desafios, dentre eles o teste de programas orientados a aspectos. Duas estratégias de ordenação de classes e aspectos para apoiar o teste de integração orientado a aspectos são propostas nesta tese. As estratégias de ordenação tem o objetivo de diminuir o custo da atividade de teste por meio da diminuição do número de stubs implementados durante o teste de integração. As estratégias utilizam um modelo de dependências aspectuais e um modelo que descreve dependências entre classes e aspectos denominado AORD (Aspect and Oriented Relation Diagram) também propostos neste trabalho. Tanto o modelo de dependências aspectuais como o AORD foram elaborados a partir da sintaxe e semântica da linguagem AspectJ. Para apoiar as estratégias de ordenação, idealmente aplicadas durante a fase de projeto, um processo de mapeamento de modelos de projeto que usam as notações UML e MATA para o AORD é proposto neste trabalho. O processo de mapeamento é composto de regras que mostram como mapear dependências advindas da programação orientada a objetos e também da programação orientada a aspectos. Como uma forma de validação das estratégias de ordenação, do modelo de dependências aspectuais e do AORD, um estudo exploratório de caracterização com três sistemas implementados em AspectJ foi conduzido. Durante o estudo foram coletadas amostras de casos de implementação de stubs e drivers de teste. Os casos de implementação foram analisados e classificados. A partir dessa análise e classificação, um catálogo de stubs e drivers de teste é apresentado === Aspect-oriented programming is an approach that uses principles of separation of concerns to improve the sofware modularization. Testing of aspect-oriented programs is a new challenge related to this approach. Two aspects and classes test order strategies to support integration testing of aspect-oriented programs are proposed in this thesis. The objective of these strategies is to reduce the cost of testing activities through the minimization of the number of implemented stubs during integration test. An aspectual dependency model and a diagram which describes dependencies among classes and aspects called AORD (Aspect and Object Relation Diagram) used by the ordering strategies are also proposed. The aspectual dependency model and the AORD were defined considering the syntax constructions and the semantics of AspectJ. As the proposed estrategies should be applied in design phase of software development, a process to map a desing model using UML and MATA notations into a AORD is proposed in order to support the ordering strategies. The mapping process is composed by rules that show how to map both aspect and object-oriented dependencies. A characterization exploratory study using three systems implemented with AspectJ was conducted to validate the ordering strategies, the aspectual dependency model and the AORD. Interesting samples of stubs implementations were collected during the study conduction. The stubs were analyzed and classified. Based on these analysis and classification a catalog of stubs and drivers is presented
author2 Paulo Cesar Masiero
author_facet Paulo Cesar Masiero
Reginaldo Ré
author Reginaldo Ré
author_sort Reginaldo Ré
title Uma contribuição para a minimização do número de stubs no teste de integração de programas orientados a aspectos
title_short Uma contribuição para a minimização do número de stubs no teste de integração de programas orientados a aspectos
title_full Uma contribuição para a minimização do número de stubs no teste de integração de programas orientados a aspectos
title_fullStr Uma contribuição para a minimização do número de stubs no teste de integração de programas orientados a aspectos
title_full_unstemmed Uma contribuição para a minimização do número de stubs no teste de integração de programas orientados a aspectos
title_sort uma contribuição para a minimização do número de stubs no teste de integração de programas orientados a aspectos
publisher Universidade de São Paulo
publishDate 2009
url http://www.teses.usp.br/teses/disponiveis/55/55134/tde-28042010-114822/
work_keys_str_mv AT reginaldore umacontribuicaoparaaminimizacaodonumerodestubsnotestedeintegracaodeprogramasorientadosaaspectos
AT reginaldore acontributiontotheminimizationofthenumberofstubsduringintegrationtestofaspectorientedprograms
_version_ 1718891572881260544
spelling ndltd-IBICT-oai-teses.usp.br-tde-28042010-1148222019-01-21T22:10:09Z Uma contribuição para a minimização do número de stubs no teste de integração de programas orientados a aspectos A contribution to the minimization of the number of stubs during integration test of aspect-oriented programs Reginaldo Ré Paulo Cesar Masiero Roberto da Silva Bigonha José Carlos Maldonado Rosangela Aparecida Dellosso Penteado Guilherme Horta Travassos Minimização de stubs de teste Programação orientada a aspectos Teses de integração Aspect-oriented programming Integration testing Minimization of the number of stubs A programação orientada a aspectos é uma abordagem que utiliza conceitos da separação de interesses para modularizar o software de maneira mais adequada. Com o surgimento dessa abordagem vieram também novos desafios, dentre eles o teste de programas orientados a aspectos. Duas estratégias de ordenação de classes e aspectos para apoiar o teste de integração orientado a aspectos são propostas nesta tese. As estratégias de ordenação tem o objetivo de diminuir o custo da atividade de teste por meio da diminuição do número de stubs implementados durante o teste de integração. As estratégias utilizam um modelo de dependências aspectuais e um modelo que descreve dependências entre classes e aspectos denominado AORD (Aspect and Oriented Relation Diagram) também propostos neste trabalho. Tanto o modelo de dependências aspectuais como o AORD foram elaborados a partir da sintaxe e semântica da linguagem AspectJ. Para apoiar as estratégias de ordenação, idealmente aplicadas durante a fase de projeto, um processo de mapeamento de modelos de projeto que usam as notações UML e MATA para o AORD é proposto neste trabalho. O processo de mapeamento é composto de regras que mostram como mapear dependências advindas da programação orientada a objetos e também da programação orientada a aspectos. Como uma forma de validação das estratégias de ordenação, do modelo de dependências aspectuais e do AORD, um estudo exploratório de caracterização com três sistemas implementados em AspectJ foi conduzido. Durante o estudo foram coletadas amostras de casos de implementação de stubs e drivers de teste. Os casos de implementação foram analisados e classificados. A partir dessa análise e classificação, um catálogo de stubs e drivers de teste é apresentado Aspect-oriented programming is an approach that uses principles of separation of concerns to improve the sofware modularization. Testing of aspect-oriented programs is a new challenge related to this approach. Two aspects and classes test order strategies to support integration testing of aspect-oriented programs are proposed in this thesis. The objective of these strategies is to reduce the cost of testing activities through the minimization of the number of implemented stubs during integration test. An aspectual dependency model and a diagram which describes dependencies among classes and aspects called AORD (Aspect and Object Relation Diagram) used by the ordering strategies are also proposed. The aspectual dependency model and the AORD were defined considering the syntax constructions and the semantics of AspectJ. As the proposed estrategies should be applied in design phase of software development, a process to map a desing model using UML and MATA notations into a AORD is proposed in order to support the ordering strategies. The mapping process is composed by rules that show how to map both aspect and object-oriented dependencies. A characterization exploratory study using three systems implemented with AspectJ was conducted to validate the ordering strategies, the aspectual dependency model and the AORD. Interesting samples of stubs implementations were collected during the study conduction. The stubs were analyzed and classified. Based on these analysis and classification a catalog of stubs and drivers is presented 2009-03-31 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/doctoralThesis http://www.teses.usp.br/teses/disponiveis/55/55134/tde-28042010-114822/ por info:eu-repo/semantics/openAccess Universidade de São Paulo Ciências da Computação e Matemática Computacional USP BR reponame:Biblioteca Digital de Teses e Dissertações da USP instname:Universidade de São Paulo instacron:USP