Pós-Graduação em Ciência da Computação – UFPE
Defesa de Dissertação de Mestrado Nº 2.034

Aluno: Késsia Thais Cavalcanti Nepomuceno
Orientador: Prof. Ricardo Bastos Cavalcante Prudencio
Título: A Machine Learning Approach to Escaped Defect Analysis
Data: 11/08/2022
Hora/Local: 9h – Virtual – Interessados em assistir entrar em contato com a aluna
Banca Examinadora:
Prof. Alexandre Cabral Mota (UFPE / Centro de Informática)
Prof. André Câmara Alves do Nascimento (UFRPE / DEINFO)
Prof. Ricardo Bastos Cavalcante Prudêncio (UFPE / Centro de Informática)

RESUMO:

Encontrar defeitos em sistemas ou aplicações computacionais é uma das
principais atividades na indústria de software. Isso impacta diretamente a
qualidade e performance do produto final, gerando consequências para o
usuário e o fornecedor. Uma das situações atreladas às atividades de
detectar defeitos, é quando o defeito não é percebido na etapa que ele
deveria ser detectado, e então é incorporado ao produto. Chamamos este
acontecimento de defeito escapado, uma vez que o defeito foi escapado pelo
testador daquela etapa. A fim de mitigar ou eliminar os defeitos escapados,
é comum se ter um setor responsável pelas suas análises. Esse setor analisa
e avalia os bugs perdidos com o intuito de entender o contexto em que eles
estão inseridos e corrigir as falhas. Assim a falha não volta a acontecer e
temos um ganho na qualidade do produto e performance dos testes.
A análise de defeitos escapados também é uma forma de medir o desempenho da
equipe de testes, bem como o lançamento de novos produtos e serviços.
Entretanto, apesar de ser uma atividade importante, ela exige recursos como
tempo, equipamentos, treinamentos e outros. Portanto, nem sempre é possível
ser aplicada de forma constante e precisa.
Neste trabalho, construímos um sistema de aprendizagem de máquina para
automatizar o processo de análise de defeitos escapados. Utilizamos Bug
Reports reais da indústria como dados históricos no nosso modelo. Esses
documentos de Bug Report representam os defeitos rotulados como defeito
escapado e defeito não escapado. Os dados dos campos do Bug Report foram
coletados, tratados e utilizados como entrada pro nosso modelo, o qual
utilizou o Random Forest como classificador principal. Como resultado,
obtivemos o ranking dos Bug Reports com maior probabilidade de ser um
defeito escapado. Com isso, é possível que os testadores da indústria de
software concentrem e direcionem os esforços nos Bugs Reports com maior ou
menor chance de ser um defeito escapado. Dessa forma, eles conseguem
otimizar recursos de operação de trabalho.
Para medir o desempenho do classificador, utilizamos a Curva ROC e uma nova
métrica que propomos, a curva de custo-benefício. Em ambas as métricas,
obtivemos resultados significativos e promissores.

Palavras-chave: Análise de Defeitos Escapados. Ranking. Automação.
Aprendizagem de Máquina.

Comentários desativados