Detalhes bibliográficos
Ano de defesa: |
2021 |
Autor(a) principal: |
Lima, Bruno Santos de |
Orientador(a): |
Não Informado pela instituição |
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Dissertação
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
por |
Instituição de defesa: |
Universidade Estadual Paulista (Unesp)
|
Programa de Pós-Graduação: |
Não Informado pela instituição
|
Departamento: |
Não Informado pela instituição
|
País: |
Não Informado pela instituição
|
Palavras-chave em Português: |
|
Link de acesso: |
http://hdl.handle.net/11449/202649
|
Resumo: |
Dívida Técnica é uma metáfora que descreve a relação custo-benefício entre adiar atividades técnicas de desenvolvimento e suas consequências a longo prazo. A falta de gestão da Dívida Técnica diminui a qualidade interna do software e torna complexa e custosa sua manutenção. Instâncias de Dívida Técnica são denominadas Dívida Técnica Auto-Admitida (DTAA) quando são cometidas de modo intencional e documentadas pelo engenheiro de software por meio de comentários no código-fonte. Diversos estudos exploram a identificação de DTAA, porém faltam abordagens para apoiar a etapa de pagamento, em particular, abordagens que indiquem quais instâncias de DTAA devem ser pagas prioritariamente. Este trabalho apresenta uma abordagem para apoiar a atividade de priorização no pagamento de DTAA. A Abordagem de Priorização desenvolvida concentra-se na criação de associações entre instâncias de DTAA e problemas encontrados no código-fonte, identificados por Análise Estática Automática de código. Os resultados indicam que a utilização dos problemas presentes no código-fonte em conjunto com a descrição dos comentários DTAA possuem maior precisão para estabelecer prioridade entre instâncias de DTAA, se comparado com o uso apenas da descrição dos comentários DTAA. Além disso, a Abordagem de Priorização foi aplicada em diferentes projetos de software por meio de um Estudo Experimental que indicou que a abordagem pode ser utilizada como guia de priorização para a tomada de decisão por parte dos desenvolvedores. |