Título: | IDENTIFICAÇÃO E REFATORAÇÃO DE PROBLEMAS DE PROJETO EM SISTEMAS DE SOFTWARE | ||||||||||||
Autor: |
WILLIAN NALEPA OIZUMI |
||||||||||||
Colaborador(es): |
ALESSANDRO FABRICIO GARCIA - Orientador |
||||||||||||
Catalogação: | 27/OUT/2022 | Língua(s): | INGLÊS - ESTADOS UNIDOS |
||||||||||
Tipo: | TEXTO | Subtipo: | TESE | ||||||||||
Notas: |
[pt] Todos os dados constantes dos documentos são de inteira responsabilidade de seus autores. Os dados utilizados nas descrições dos documentos estão em conformidade com os sistemas da administração da PUC-Rio. [en] All data contained in the documents are the sole responsibility of the authors. The data used in the descriptions of the documents are in conformity with the systems of the administration of PUC-Rio. |
||||||||||||
Referência(s): |
[pt] https://www.maxwell.vrac.puc-rio.br/projetosEspeciais/ETDs/consultas/conteudo.php?strSecao=resultado&nrSeq=60990&idi=1 [en] https://www.maxwell.vrac.puc-rio.br/projetosEspeciais/ETDs/consultas/conteudo.php?strSecao=resultado&nrSeq=60990&idi=2 |
||||||||||||
DOI: | https://doi.org/10.17771/PUCRio.acad.60990 | ||||||||||||
Resumo: | |||||||||||||
Sistemas impactados por Problemas de Projeto (PPs) podem se tornar
difíceis de manter e evoluir. A identificação de PPs pode ocorrer por
meio de múltiplos sintomas, tais como code smells. Após tal identificação,
pode-se remover os PPs por meio de refatorações. No entanto, decidir onde
e como refatorar é uma tarefa desafiadora. Assim, técnicas de recomendação
de refatoração têm sido propostas. Apesar disso, ainda há pouco consenso
sobre quais requisitos devem ser atendidos por elas. Nesta tese, estamos
propondo quatro requisitos empiricamente identificados que tais técnicas
devem seguir. Primeiro, cada PP geralmente está relacionado a vários tipos
de sintomas no código-fonte e eles devem ser considerados juntos para gerar
recomendações. Além disso, uma técnica de recomendação deve permitir a
seleção de contextos específicos para refatoração. Quarto, também deve-se
considerar as funcionalidades modificadas para criar recomendações úteis.
Finalmente, os desenvolvedores nem sempre conduzem as refatorações mais
eficazes na prática, muitas vezes inconscientemente, resultando na remoção
incompleta de PPs. Assim, eles precisam de assistência para remover
os PPs. Existem apenas técnicas que atendem parcialmente aos requisitos
mencionados. Sendo assim, nós propomos a técnica OrganicRef. OrganicRef
destina-se a ajudar os desenvolvedores na remoção de PPs em seus contextos
de interesse. OrganicRef encontra as funcionalidades dos elementos
de código usando um algoritmo de modelagem de tópicos. Em seguida, ele
coleta múltiplos tipos de sintomas que afetam os elementos do código. Para
recomendar refatorações, OrganicRef combina heurísticas baseadas em regras
e baseadas em funcionalidades. OrganicRef também aplica otimização
baseada em busca para derivar várias recomendações possíveis. Para avaliar
o OrganicRef, realizamos um estudo experimental com seis projetos de
software. Os resultados mostraram que as recomendações do OrganicRef
melhoram significativamente a qualidade dos elementos refatorados.
|
|||||||||||||
|