Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso

Detalhes bibliográficos
Autor(a) principal: Rapeli, Leide Rachel Chiusi
Data de Publicação: 2005
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFSCAR
Texto Completo: https://repositorio.ufscar.br/handle/ufscar/626
Resumo: This dissertation presents a study case on object-oriented systems refactoring. Systems developed according to the object-oriented paradigm may contain reusable code, even though not always have been designed for it. Systems maintenance is not an easy task, even for object-oriented systems. Software design patterns favour the implementation of efficient solutions for recurrent problems, easing reusability and maintainability. In cases of systems not designed using design patterns, it is possible to refactor the system using them, without altering the system functionality. This prospective study refers to the search for guidelines to help the software engineer to conduct this type of refactoring. For that purpose, seven systems implemented in Java, that were available in the Web, have been used. The study has three phases: the first refers to existing system functionality and class model recovery; so that, in the second phase, applicable software design patterns can be implemented; and the class model previously obtained can be updated with the software design patterns applied. In the third phase, the new system functionality is verified by tests, to confirm that the conducted refactoring has not altered it. The refactored system usually presents an increase in the LOC number, but becomes more maintainable due to better structuring and cohesion. Reuse is also eased. One restriction of this research is that the case study has been conducted only for small-scale information systems.
id SCAR_db96914591599811d553b46a752ca57c
oai_identifier_str oai:repositorio.ufscar.br:ufscar/626
network_acronym_str SCAR
network_name_str Repositório Institucional da UFSCAR
repository_id_str 4322
spelling Rapeli, Leide Rachel ChiusiPenteado, Rosângela Aparecida Dellossohttp://lattes.cnpq.br/40619460801362864691329b-ae47-4001-bd5b-8f9103b8c33c2016-06-02T19:06:28Z2007-08-092016-06-02T19:06:28Z2005-12-19RAPELI, Leide Rachel Chiusi. Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso.. 2005. 130 f. Dissertação (Mestrado em Ciências Exatas e da Terra) - Universidade Federal de São Carlos, São Carlos, 2005.https://repositorio.ufscar.br/handle/ufscar/626This dissertation presents a study case on object-oriented systems refactoring. Systems developed according to the object-oriented paradigm may contain reusable code, even though not always have been designed for it. Systems maintenance is not an easy task, even for object-oriented systems. Software design patterns favour the implementation of efficient solutions for recurrent problems, easing reusability and maintainability. In cases of systems not designed using design patterns, it is possible to refactor the system using them, without altering the system functionality. This prospective study refers to the search for guidelines to help the software engineer to conduct this type of refactoring. For that purpose, seven systems implemented in Java, that were available in the Web, have been used. The study has three phases: the first refers to existing system functionality and class model recovery; so that, in the second phase, applicable software design patterns can be implemented; and the class model previously obtained can be updated with the software design patterns applied. In the third phase, the new system functionality is verified by tests, to confirm that the conducted refactoring has not altered it. The refactored system usually presents an increase in the LOC number, but becomes more maintainable due to better structuring and cohesion. Reuse is also eased. One restriction of this research is that the case study has been conducted only for small-scale information systems.Esta dissertação apresenta um estudo de caso de refatoração de sistemas orientados a objetos. Sistemas desenvolvidos de acordo com o paradigma de orientação a objetos podem conter código reusável, apesar de nem sempre terem sido projetados para isso. Manutenção de sistemas não é uma tarefa fácil, nem mesmo para sistemas orientados a objetos. Padrões de projeto de software favorecem a implementação de soluções eficientes para problemas recorrentes, facilitando a reusabilidade e manutenibilidade. Nos casos dos sistemas não projetados com o seu uso, é possível refatorar o sistema usando-os, sem alterar a sua funcionalidade. Este estudo prospectivo refere-se à busca de diretrizes para auxiliar o engenheiro de software a conduzir esse tipo de refatoração. Para isso, sete sistemas implementados em Java que estavam disponíveis na Web foram usados. O estudo tem três etapas: a primeira refere-se à recuperação da funcionalidade e do modelo de classes do sistema existente de modo que, na segunda etapa, padrões de projeto de software aplicáveis possam ser implementados; e o modelo de classes previamente obtido possa ser atualizado com os padrões de projeto de software aplicados. Na terceira etapa, a funcionalidade do novo sistema é verificada por testes, para confirmar que a refatoração conduzida não a alterou. O sistema refatorado, usualmente, apresenta um aumento no número de LOC, mas torna-se mais manutenível, devido a melhor estruturação e coesão. O reuso é também facilitado. Uma restrição desta pesquisa é que o estudo de caso foi conduzido apenas para sistemas de informação de pequeno porte.application/pdfporUniversidade Federal de São CarlosPrograma de Pós-Graduação em Ciência da Computação - PPGCCUFSCarBRManutenção de programasPadrões de projetoEngenharia reversaReengenharia orientada a objetosRefatoraçãoCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAORefatoração de sistemas Java utilizando padrões de projeto: um estudo de casoinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis-1-11adfa464-f35e-4e3e-a518-19b72240f0f9info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFSCARinstname:Universidade Federal de São Carlos (UFSCAR)instacron:UFSCARORIGINALDissLRCR.pdfapplication/pdf1289177https://repositorio.ufscar.br/bitstream/ufscar/626/1/DissLRCR.pdf0d5c30e3a6fab66cbd1251a5fc2211d1MD51THUMBNAILDissLRCR.pdf.jpgDissLRCR.pdf.jpgIM Thumbnailimage/jpeg6979https://repositorio.ufscar.br/bitstream/ufscar/626/2/DissLRCR.pdf.jpgdf09c17e30bef20ce8fe97183423b1d1MD52ufscar/6262023-09-18 18:30:38.512oai:repositorio.ufscar.br:ufscar/626Repositório InstitucionalPUBhttps://repositorio.ufscar.br/oai/requestopendoar:43222023-09-18T18:30:38Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)false
dc.title.por.fl_str_mv Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso
title Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso
spellingShingle Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso
Rapeli, Leide Rachel Chiusi
Manutenção de programas
Padrões de projeto
Engenharia reversa
Reengenharia orientada a objetos
Refatoração
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
title_short Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso
title_full Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso
title_fullStr Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso
title_full_unstemmed Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso
title_sort Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso
author Rapeli, Leide Rachel Chiusi
author_facet Rapeli, Leide Rachel Chiusi
author_role author
dc.contributor.author.fl_str_mv Rapeli, Leide Rachel Chiusi
dc.contributor.advisor1.fl_str_mv Penteado, Rosângela Aparecida Dellosso
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/4061946080136286
dc.contributor.authorID.fl_str_mv 4691329b-ae47-4001-bd5b-8f9103b8c33c
contributor_str_mv Penteado, Rosângela Aparecida Dellosso
dc.subject.por.fl_str_mv Manutenção de programas
Padrões de projeto
Engenharia reversa
Reengenharia orientada a objetos
Refatoração
topic Manutenção de programas
Padrões de projeto
Engenharia reversa
Reengenharia orientada a objetos
Refatoração
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
dc.subject.cnpq.fl_str_mv CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
description This dissertation presents a study case on object-oriented systems refactoring. Systems developed according to the object-oriented paradigm may contain reusable code, even though not always have been designed for it. Systems maintenance is not an easy task, even for object-oriented systems. Software design patterns favour the implementation of efficient solutions for recurrent problems, easing reusability and maintainability. In cases of systems not designed using design patterns, it is possible to refactor the system using them, without altering the system functionality. This prospective study refers to the search for guidelines to help the software engineer to conduct this type of refactoring. For that purpose, seven systems implemented in Java, that were available in the Web, have been used. The study has three phases: the first refers to existing system functionality and class model recovery; so that, in the second phase, applicable software design patterns can be implemented; and the class model previously obtained can be updated with the software design patterns applied. In the third phase, the new system functionality is verified by tests, to confirm that the conducted refactoring has not altered it. The refactored system usually presents an increase in the LOC number, but becomes more maintainable due to better structuring and cohesion. Reuse is also eased. One restriction of this research is that the case study has been conducted only for small-scale information systems.
publishDate 2005
dc.date.issued.fl_str_mv 2005-12-19
dc.date.available.fl_str_mv 2007-08-09
2016-06-02T19:06:28Z
dc.date.accessioned.fl_str_mv 2016-06-02T19:06:28Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv RAPELI, Leide Rachel Chiusi. Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso.. 2005. 130 f. Dissertação (Mestrado em Ciências Exatas e da Terra) - Universidade Federal de São Carlos, São Carlos, 2005.
dc.identifier.uri.fl_str_mv https://repositorio.ufscar.br/handle/ufscar/626
identifier_str_mv RAPELI, Leide Rachel Chiusi. Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso.. 2005. 130 f. Dissertação (Mestrado em Ciências Exatas e da Terra) - Universidade Federal de São Carlos, São Carlos, 2005.
url https://repositorio.ufscar.br/handle/ufscar/626
dc.language.iso.fl_str_mv por
language por
dc.relation.confidence.fl_str_mv -1
-1
dc.relation.authority.fl_str_mv 1adfa464-f35e-4e3e-a518-19b72240f0f9
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal de São Carlos
dc.publisher.program.fl_str_mv Programa de Pós-Graduação em Ciência da Computação - PPGCC
dc.publisher.initials.fl_str_mv UFSCar
dc.publisher.country.fl_str_mv BR
publisher.none.fl_str_mv Universidade Federal de São Carlos
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFSCAR
instname:Universidade Federal de São Carlos (UFSCAR)
instacron:UFSCAR
instname_str Universidade Federal de São Carlos (UFSCAR)
instacron_str UFSCAR
institution UFSCAR
reponame_str Repositório Institucional da UFSCAR
collection Repositório Institucional da UFSCAR
bitstream.url.fl_str_mv https://repositorio.ufscar.br/bitstream/ufscar/626/1/DissLRCR.pdf
https://repositorio.ufscar.br/bitstream/ufscar/626/2/DissLRCR.pdf.jpg
bitstream.checksum.fl_str_mv 0d5c30e3a6fab66cbd1251a5fc2211d1
df09c17e30bef20ce8fe97183423b1d1
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)
repository.mail.fl_str_mv
_version_ 1813715504255205376