Título: | ALINHANDO PREOCUPAÇÕES DE QUALIDADE DE DESENVOLVEDORES A APLICAÇÕES DE REFATORAÇÕES E SEUS EFEITOS | ||||||||||||
Autor: |
VINICIUS PASSOS DE OLIVEIRA SOARES |
||||||||||||
Colaborador(es): |
ALESSANDRO FABRICIO GARCIA - Orientador |
||||||||||||
Catalogação: | 25/NOV/2021 | 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=56164&idi=1 [en] https://www.maxwell.vrac.puc-rio.br/projetosEspeciais/ETDs/consultas/conteudo.php?strSecao=resultado&nrSeq=56164&idi=2 |
||||||||||||
DOI: | https://doi.org/10.17771/PUCRio.acad.56164 | ||||||||||||
Resumo: | |||||||||||||
Mesmo com o processo de refatoração sendo investigado cada vez mais
nos últimos anos, muitas de suas características se mantém pouco compreendidas.
Refatoração de software é o processo de melhorar a manutenibilidade
de um sistema por meio de mudanças estruturais que não alteram seu comportamento.
Estudos recentes revelaram que projetos de software frequentemente
recebem refatorações compostas. Em tais refatorações, desenvolvedores aplicam
uma série de transformações únicas em conjunção e em um único commit,
e se espera que estas refatorações tenham um efeito maior e mais positivo do
que refatorações singulares. Porém, refatorações frequentemente causam mudanças
que ou mantém a qualidade do software da mesma forma, ou causam
a piora do mesmo, levando trabalhos recentes a procurar causas em potencial
para este comportamento. Porém, o porquê da complexidade destas mudanças
compostas frequentemente afetarem seus resultados de alguma forma positiva
ou (inesperadamente) negativa continua não investigado. O mesmo ocorre com
o potencial efeito das preocupações dos desenvolvedores durante a aplicação
de refatorações. Sobre estas preocupações, alguns trabalhos anteriores foram
desenvolvidos em torno da caracterização e detecção de discussões de desenvolvedores
relacionadas a refatorações. Porém, não se sabe se e como estas
preocupações de desenvolvedores com refatorações, tornando-se explícitas em
tais discussões, podem influenciar os efeitos de refatorações em um sistema.
Portanto, este trabalho apresenta dois estudos com o objetivo de preencher a
lacuna no conhecimento de que causas levam aos efeitos não-positivos frequentemente
encontrados em refatorações, procurando entender: (i) se refatorações
mais complexas realmente são mais efetivas do que refatorações simples, como
esperado; (ii) em que situações desenvolvedores tendem a explicitar suas preocupações
com refatoração do código; e (iii) qual é o impacto de tais preocupações
na efetividade de uma refatoração em melhorar a qualidade estrutural
do código. Nós analisamos estas características e atingimos os seguintes
resultados: Primeiro, conforme a complexidade das refatorações aumenta, a
efetividade das mesmas aumenta conjuntamente. Segundo, há uma relação entre
a efetividade de refatorações e preocupações explícitas com refatorações,
onde a possibilidade de efeitos negativos é menor quando desenvolvedores estão
explicitamente preocupados com refatoração. Finalmente, desenvolvedores
tendem a explicitar mais frequentemente suas preocupações com o processo de
refatoração quando deparados com tarefas de refatoração mais complexas.
|
|||||||||||||
|