Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso
Autor(a) principal: | |
---|---|
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 |