"PARFAIT: uma contribuição para a reengenharia de software baseada em linguagens de padrões e frameworks"

A necessidade de evolução de sistemas legados tem aumentado significativamente com o surgimento de novas tecnologias. Para apoiar essa tendência, diversos métodos de reengenharia têm sido propostos. No entanto, poucos possuem apoio computacional efetivo, alguns utilizam padrões de projeto ou pa...

Full description

Bibliographic Details
Main Author: Maria Istela Cagnin
Other Authors: José Carlos Maldonado
Language:Portuguese
Published: Universidade de São Paulo 2005
Subjects:
Online Access:http://www.teses.usp.br/teses/disponiveis/55/55134/tde-08092005-152316/
id ndltd-IBICT-oai-teses.usp.br-tde-08092005-152316
record_format oai_dc
collection NDLTD
language Portuguese
sources NDLTD
topic Evolução de Framework
Framework
Linguagem de padrões
Processo ágil de reengenharia
Reúso de Teste
Agile Reengineering Process
Framework
Framework Evolution
Pattern Language
Testing Reuse
spellingShingle Evolução de Framework
Framework
Linguagem de padrões
Processo ágil de reengenharia
Reúso de Teste
Agile Reengineering Process
Framework
Framework Evolution
Pattern Language
Testing Reuse
Maria Istela Cagnin
"PARFAIT: uma contribuição para a reengenharia de software baseada em linguagens de padrões e frameworks"
description A necessidade de evolução de sistemas legados tem aumentado significativamente com o surgimento de novas tecnologias. Para apoiar essa tendência, diversos métodos de reengenharia têm sido propostos. No entanto, poucos possuem apoio computacional efetivo, alguns utilizam padrões de projeto ou padrões específicos de reengenharia, e nenhum utiliza framework baseado em linguagem de padrões. Este trabalho está inserido no domínio de Sistemas de Informação. Propõe a elaboração de um arcabouço de reengenharia ágil baseado em framework, que realiza a engenharia reversa do sistema legado com o apoio de linguagem de padrões de análise, fornecendo entendimento e documentação necessários para instanciar o framework. O entendimento do sistema legado também é apoiado pela sua execução, por meio de casos de teste. Esses casos de teste são utilizados posteriormente para validar o sistema alvo. O framework, cuja construção é baseada em linguagem de padrões, é utilizado para obter o projeto e a implementação do sistema alvo. Para permitir a reengenharia com o apoio do arcabouço definido, um processo ágil de reengenharia foi criado. Como no desenvolvimento de software, grande parte do tempo da reengenharia é despendido com atividades de VV&T. Para minimizar esse problema, uma abordagem de reúso de teste é proposta. Essa abordagem agrega recursos de teste aos padrões da linguagem de padrões de análise, permitindo o reúso, não somente das soluções de análise, como também dos recursos de testes associados. O uso de framework na reengenharia de software colabora para a sua evolução, pois o domínio ao qual pertence pode evoluir, já que nem todos os requisitos do domínio do framework podem ter sido elicitados durante o seu desenvolvimento. Assim, nesta tese é proposto também um processo de evolução de frameworks de aplicação. Os processos e a abordagem propostos são associados ao arcabouço definido para apoiar sua efetividade. Além disso, para avaliar o processo ágil de reengenharia, que fornece reúso em diversos níveis de abstração, um pacote de experimentação também é parcialmente definido. Estudos de caso e exemplos de uso foram conduzidos com os produtos definidos. Ressalta-se que outros estudos devem ser conduzidos para permitir a determinação de resultados com significância estatística. === The need to evolve legacy systems has increased significantly with the advent of new technologies. To support this tendency, several reengineering methods have been proposed. However, few have effective computing support, some use design patterns or reengineering specific patterns and none use pattern language-based frameworks. This thesis's theme belongs to the Information Systems domain. An agile framework based reengineering infrastructure is proposed for the legacy system reverse engineering with the support of an analysis pattern language; also provided the understanding and documentation necessary for framework instantiation. The legacy system understanding is also supported by its execution with test cases. These are also subsequently used to validate the target system. The framework, whose construction is based on the analysis pattern language, is used to obtain the target system design and implementation. To allow the reengineering with the infrastructure support, an agile reengineering process has been created. As in software development, a large portion of the reengineering time is spent with VV&T activities. To minimize this problem, a testing reuse approach is proposed in this thesis. This approach aggregates test resources to the patterns of the analysis pattern language allowing reuse, not only of the analysis solutions, but also of the associated test resources. The framework used in software reengineering contributes to its evolution, as the domain to which they belong may evolve, and some of the framework domain requirements might not have been elicited during its development. Thus, in this thesis, a process for application framework evolution is also proposed. The processes and the approach are associated to the infrastructure defined to support its effectiveness. Furthermore, to evaluate the agile reengineering process that provides reuse at several abstraction levels, an experimentation package is also partially defined. Case studies and examples of use have been conducted with the products defined. We stress that other studies have to be done to enable the determination of results with statistical significance.
author2 José Carlos Maldonado
author_facet José Carlos Maldonado
Maria Istela Cagnin
author Maria Istela Cagnin
author_sort Maria Istela Cagnin
title "PARFAIT: uma contribuição para a reengenharia de software baseada em linguagens de padrões e frameworks"
title_short "PARFAIT: uma contribuição para a reengenharia de software baseada em linguagens de padrões e frameworks"
title_full "PARFAIT: uma contribuição para a reengenharia de software baseada em linguagens de padrões e frameworks"
title_fullStr "PARFAIT: uma contribuição para a reengenharia de software baseada em linguagens de padrões e frameworks"
title_full_unstemmed "PARFAIT: uma contribuição para a reengenharia de software baseada em linguagens de padrões e frameworks"
title_sort "parfait: uma contribuição para a reengenharia de software baseada em linguagens de padrões e frameworks"
publisher Universidade de São Paulo
publishDate 2005
url http://www.teses.usp.br/teses/disponiveis/55/55134/tde-08092005-152316/
work_keys_str_mv AT mariaistelacagnin parfaitumacontribuicaoparaareengenhariadesoftwarebaseadaemlinguagensdepadroeseframeworks
AT mariaistelacagnin parfaitancontributionforthesoftwarereengineeringbasedonpatternslanguagesandframeworks
_version_ 1718900723154944000
spelling ndltd-IBICT-oai-teses.usp.br-tde-08092005-1523162019-01-21T23:01:28Z "PARFAIT: uma contribuição para a reengenharia de software baseada em linguagens de padrões e frameworks" "PARFAIT: an contribution for the software reengineering based on patterns languages and frameworks" Maria Istela Cagnin José Carlos Maldonado Robert Carlisle Burnett Renata Pontin de Mattos Fortes Mario Jino Claudia Maria Lima Werner Evolução de Framework Framework Linguagem de padrões Processo ágil de reengenharia Reúso de Teste Agile Reengineering Process Framework Framework Evolution Pattern Language Testing Reuse A necessidade de evolução de sistemas legados tem aumentado significativamente com o surgimento de novas tecnologias. Para apoiar essa tendência, diversos métodos de reengenharia têm sido propostos. No entanto, poucos possuem apoio computacional efetivo, alguns utilizam padrões de projeto ou padrões específicos de reengenharia, e nenhum utiliza framework baseado em linguagem de padrões. Este trabalho está inserido no domínio de Sistemas de Informação. Propõe a elaboração de um arcabouço de reengenharia ágil baseado em framework, que realiza a engenharia reversa do sistema legado com o apoio de linguagem de padrões de análise, fornecendo entendimento e documentação necessários para instanciar o framework. O entendimento do sistema legado também é apoiado pela sua execução, por meio de casos de teste. Esses casos de teste são utilizados posteriormente para validar o sistema alvo. O framework, cuja construção é baseada em linguagem de padrões, é utilizado para obter o projeto e a implementação do sistema alvo. Para permitir a reengenharia com o apoio do arcabouço definido, um processo ágil de reengenharia foi criado. Como no desenvolvimento de software, grande parte do tempo da reengenharia é despendido com atividades de VV&T. Para minimizar esse problema, uma abordagem de reúso de teste é proposta. Essa abordagem agrega recursos de teste aos padrões da linguagem de padrões de análise, permitindo o reúso, não somente das soluções de análise, como também dos recursos de testes associados. O uso de framework na reengenharia de software colabora para a sua evolução, pois o domínio ao qual pertence pode evoluir, já que nem todos os requisitos do domínio do framework podem ter sido elicitados durante o seu desenvolvimento. Assim, nesta tese é proposto também um processo de evolução de frameworks de aplicação. Os processos e a abordagem propostos são associados ao arcabouço definido para apoiar sua efetividade. Além disso, para avaliar o processo ágil de reengenharia, que fornece reúso em diversos níveis de abstração, um pacote de experimentação também é parcialmente definido. Estudos de caso e exemplos de uso foram conduzidos com os produtos definidos. Ressalta-se que outros estudos devem ser conduzidos para permitir a determinação de resultados com significância estatística. The need to evolve legacy systems has increased significantly with the advent of new technologies. To support this tendency, several reengineering methods have been proposed. However, few have effective computing support, some use design patterns or reengineering specific patterns and none use pattern language-based frameworks. This thesis's theme belongs to the Information Systems domain. An agile framework based reengineering infrastructure is proposed for the legacy system reverse engineering with the support of an analysis pattern language; also provided the understanding and documentation necessary for framework instantiation. The legacy system understanding is also supported by its execution with test cases. These are also subsequently used to validate the target system. The framework, whose construction is based on the analysis pattern language, is used to obtain the target system design and implementation. To allow the reengineering with the infrastructure support, an agile reengineering process has been created. As in software development, a large portion of the reengineering time is spent with VV&T activities. To minimize this problem, a testing reuse approach is proposed in this thesis. This approach aggregates test resources to the patterns of the analysis pattern language allowing reuse, not only of the analysis solutions, but also of the associated test resources. The framework used in software reengineering contributes to its evolution, as the domain to which they belong may evolve, and some of the framework domain requirements might not have been elicited during its development. Thus, in this thesis, a process for application framework evolution is also proposed. The processes and the approach are associated to the infrastructure defined to support its effectiveness. Furthermore, to evaluate the agile reengineering process that provides reuse at several abstraction levels, an experimentation package is also partially defined. Case studies and examples of use have been conducted with the products defined. We stress that other studies have to be done to enable the determination of results with statistical significance. 2005-06-17 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/doctoralThesis http://www.teses.usp.br/teses/disponiveis/55/55134/tde-08092005-152316/ 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