Teste estrutural de integração contextual de programas orientados a objetos e a aspectos / Contextual integration structural testing of object-oriented and aspect-oriented programs

Paradigmas e técnicas de desenvolvimento como a programação Orientada a Objetos (OO) e a programação Orientada a Aspectos (OA) procuram melhorar os níveis de reuso e manutenibilidade na produção de software. Contudo, com a introdução de mecanismos com maior poder de expressividade e, consequentemente, a possível introdução de novos tipos de defeitos, a utilização de linguagens OO e OA pode se tornar um obstáculo ao invés de um auxílio ao desenvolvimento de software. Para lidar com esse problema, nesta dissertação é proposta uma abordagem de teste estrutural de integração para programas orientados a objetos e a aspectos implementados em Java e AspectJ. É definido um modelo de fluxo de controle e de dados baseado no bytecode Java { chamado Grafo Def-Uso Contextual (ou Contextual Def-Use graph) - que é uma abstração formada pela integração dos grafos Def-Uso Orientados a Aspectos (AODU) da unidade sob teste com todas as unidades que interagem direta ou indiretamente com ela até um nível de profundidade de interação máximo ou definido pelo testador. São defiidos três critérios de teste: todos-nós-integrados-Nd, todas-arestas-integradas-Nd e todos-usos-integrados-Nd. Para automatizar o uso do modelo e critérios propostos, a ferramenta JaBUTi/AJ foi estendida. Exemplos de usos são discutidos e, por meio de um estudo experimental, uma análise de aplicabilidade da abordagem proposta é apresentada / Development paradigms and techniques such as Object-Oriented (OO) programming and Aspect-Oriented (AO) programming aim at improving reuse levels and maintenability in the software production. However, due to the introduction of mechanisms to support a greater power of expressiveness and, consequently, possible introduction of new type of faults, the use of OO and AO languages might become an obstacle instead of a benefit in the software development. To deal with these problems, in this dissertation is presented an integration structural testing approach for objectand aspect-oriented software based on Java and AspectJ. It is defined a control- and data- ow model based on Java bytecode { called Contextual Def-Use graph { that is an abstraction composed by the integration of Aspect-Oriented Def-Use graphs (AODU) of the unit under testing with the units triggered by the execution of the unit under testing considering either a maximum interaction depth level or an interaction depth level previously defined by the tester. Three testing criteria are also defined: all-integrated-nodes-Nd, all-integrated-edges-Nd and all-integrated-uses-Nd. To automate the use of the model and the testing criteria, the JaBUTi/AJ tool was extended. Usage examples are discussed to explain the approach and an exploratory study is conducted to evaluate the applicability of the proposed approach

Identiferoai:union.ndltd.org:usp.br/oai:teses.usp.br:tde-12082011-103432
Date15 July 2011
CreatorsCafeo, Bruno Barbieri de Pontes
ContributorsMasiero, Paulo Cesar
PublisherBiblioteca Digitais de Teses e Dissertações da USP
Source SetsUniversidade de São Paulo
LanguagePortuguese
Detected LanguagePortuguese
TypeDissertação de Mestrado
Formatapplication/pdf
RightsLiberar o conteúdo para acesso público.

Page generated in 0.0164 seconds