Skip navigation
Universidade Federal da Bahia |
Repositório Institucional da UFBA
Use este identificador para citar ou linkar para este item: https://repositorio.ufba.br/handle/ri/41548
Tipo: Tese
Título: On the interplay between developer knowledge diversity and test code quality: understanding and addressing test smells in software development.
Título(s) alternativo(s): Sobre a interação entre a diversidade do conhecimento do desenvolvedor e a qualidade do código de teste: entendendo e abordando os cheiros de teste no desenvolvimento de software.
Autor(es): Silva, Denivan do Carmo Campos da
Primeiro Orientador: Machado, Ivan do Carmo
metadata.dc.contributor.referee1: Machado, Ivan do Carmo
metadata.dc.contributor.referee2: Dias Canedo, Edna
metadata.dc.contributor.referee3: Shuenemann, Carla Taciana Lima Lourenco Silva
metadata.dc.contributor.referee4: Coutinho, Emanuel Ferreira
metadata.dc.contributor.referee5: Mendonça Neto, Manoel Gomes de
Resumo: Projetos de software open-source resultam de contribuições de pessoas com todos os níveis de habilidade. O desenvolvimento de software é uma atividade colaborativa, social e intensiva em conhecimento, e aspectos centrados no ser humano, como comunicação e personalidade, podem impactar projetos de software. Esses fatores são essenciais para a diversidade da equipe. Existem três tipos de diversidade de equipe: diversidade informacional (ou de conhecimento), social e de valores. Nesse contexto, temos notado muito interesse na comunidade de Engenharia de Software sobre a relação entre fatores humanos e a qualidade do código. Investigar se a diversidade de conhecimento (aspectos humanos) afeta a qualidade do código de teste é importante. A literatura apresenta vários estudos que investigam a qualidade do código de teste. Ainda assim, existem poucas evidências empíricas sobre os efeitos da diversidade de conhecimento (por exemplo, formação educacional, nível de experiência profissional, expertise e habilidades) e a qualidade do código de teste. Se considerarmos a prevalência de ``test smells'' na pesquisa atual de testes de software, o número é ainda mais limitado. Test smells são implementações ruins inseridas por desenvolvedores e podem prejudicar a compreensibilidade e a manutenibilidade dos conjuntos de testes. Estudos recentes discutem as percepções dos desenvolvedores sobre test smells e seu impacto na melhoria da qualidade, mas há pouca evidência acerca dos efeitos da diversidade de conhecimento nessa direção, especialmente no que diz respeito à colaboração interdisciplinar e à troca de experiências entre equipes. Neste contexto, esta tese tem como objetivo reunir evidências empíricas sobre a relação entre a diversidade de conhecimento dos desenvolvedores e a qualidade do código de teste, particularmente o efeito que os test smells podem trazer na qualidade do software. Inicialmente, construímos uma base de conhecimento considerando os principais conceitos de testes de software, manutenção, evolução, test smells, refatoração de software, classificação de desenvolvedores e suporte ferramental. Em seguida, para alcançar nosso objetivo de pesquisa, utilizamos uma abordagem de métodos mistos, que englobou o planejamento e a execução de surveys, entrevistas e mineração de repositórios do GitHub. Organizamos as descobertas como um conjunto de diretrizes para apoiar os desenvolvedores na prevenção da inserção de test smells durante a criação de casos de teste de unidade.
Abstract: Software development is a collaborative, social, knowledge-intensive activity, and human-centered aspects such as communication and personality can impact software projects. These factors are essential for team diversity. There are three types of team diversity: informational (or knowledge), social, and values diversity. In this context, we have noticed a lot of interest in the software engineering community about the relationship between human factors and code quality. Investigating if knowledge diversity (human aspects) affects test code quality is important. The literature has brought up several studies investigating test code quality. Still, little empirical evidence exists on the effects of knowledge diversity (e.g., educational background, level of professional experience, expertise, and skills) and test code quality. Whether we consider the prevalence of test smells in current software testing research, the number is way more limited. Test smells are bad implementations inserted by developers and can harm the comprehensibility and maintainability of test suites. Recent studies discuss developers’ perceptions of test smells and their impact on quality improvement, but there is little evidence regarding the effects of knowledge diversity in this direction, especially concerning interdisciplinary collaboration and the exchange of experiences between teams. This thesis aims to gather empirical evidence on the relationship between developer knowledge diversity and test code quality, particularly the effect test smells can bring on software quality. Initially, we built a knowledge base by considering the main concepts of software testing, maintenance, evolution, test smells, software refactoring, developer classification, and tool support. Next, to accomplish our research objective, we used a mixed-methods approach (e.g., surveys, interviews, and mining of GitHub repositories). We organized the findings as a set of guidelines to support developers in preventing the insertion of test smells during the creation of unit test cases.
Palavras-chave: Manutenção de software
Testes de software
Test smells
Engenharia de software baseados em evidências
CNPq: CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Idioma: eng
País: Brasil
Editora / Evento / Instituição: Universidade Federal da Bahia
Sigla da Instituição: UFBA
metadata.dc.publisher.department: Instituto de Computação - IC
metadata.dc.publisher.program: Programa de Pós-Graduação em Ciência da Computação (PGCOMP) 
Citação: SILVA, Denivan do Carmo Campos da. On the Interplay between Developer' Experience and Test Code Quality: a practical guidelines to avoiding test smells in software development. 2024. 200 f. Tese (Doutorado em Ciência da Computação.) - Instituto de Computação, Universidade Federal da Bahia, Salvador (Bahia), 2024.
Tipo de Acesso: Acesso Aberto
URI: https://repositorio.ufba.br/handle/ri/41548
Data do documento: 19-Out-2024
Aparece nas coleções:Tese (PGCOMP)

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
Tese_Denivan_Campos.pdf26,11 MBAdobe PDFVisualizar/Abrir
Mostrar registro completo do item Visualizar estatísticas


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.