Pós-Graduação em Ciência da Computação – UFPE
Defesa de Dissertação de Mestrado Nº 2.280
Aluna: Críssia de Santana Marcelino
Orientador: Prof. Breno Alexandro Ferreira de Miranda
Título: Definição de Oráculos Aproximados para Testes de Desempenho com Base em Dados Históricos
Data: 27/03/2026
Hora/Local: 14h – Auditório – Bloco B
Banca Examinadora:
Prof. Jamilson Ramalho Dantas (UFPE / Centro de Informática)
Prof. Silvana Morita Melo (UFGD / Departamento de Ciências da Computação)
Prof. Breno Alexandro Ferreira de Miranda (UFPE / Centro de Informática)
RESUMO:
A constante evolução de software e a adoção de práticas aceleradas, como a Integração Contínua (CI), introduzem um risco significativo na Engenharia de Software contemporânea: a regressão de performance. A regressão ocorre quando um sistema passa a consumir mais recursos ou despende mais tempo para executar ações, comprometendo a satisfação do usuário e aumentando os custos operacionais. Estudos indicam que a maioria das falhas encontradas atualmente está relacionada à performance, e não mais a bugs funcionais. Neste cenário, a identificação objetiva dessas regressões é dificultada pelo desafio metodológico conhecido como Oracle Problem: a dificuldade em automatizar a definição da saída correta/esperada de um teste. Para testes de desempenho, as métricas de rendimento são inerentemente sensíveis à variabilidade ambiental e frequentemente dependem de estimativas informais do testador, o que pode levar a falsos positivos e cobertura insuficiente do sistema. Diante disso, o objetivo principal deste trabalho foi definir um oráculo aproximado para testes de performance a partir de uma margem de tolerância. A pesquisa propôs uma solução inovadora, adaptando o método N-version testing (NVT). Em vez da redundância funcional tradicional, a abordagem utiliza a Redundância Temporal, tratando N versões históricas e bem-sucedidas do mesmo software como uma base de dados redundante e confiável. A nova versão é validada por avaliação quantitativa, comparando-se com a distribuição histórica dentro de uma margem de tolerância adaptativa. Os objetivos específicos incluíram a revisão de literatura, a obtenção dos valores dos dados históricos das versões, a definição da abordagem para criação do oráculo para as aplicações estudadas e a prototipação automática da abordagem. A metodologia indutiva e exploratória foi aplicada em quatro etapas: (1) Definição de Métrica e Coleta de Dados Históricos; (2) Estabelecimento da Referência de performance (baseline); (3) Definição da Margem de Tolerância; e (4) Execução e Comparação de Resultados. Para garantir a adaptabilidade à evolução do software, o conceito de Janela Móvel foi incorporado, atualizando continuamente o histórico de dados e recalibrando a margem de tolerância. Crucialmente, versões onde o erro de performance é confirmado são excluídas do cálculo da baseline para evitar o viés e a ocorrência de falsos negativos. A abordagem foi validada através de cenários experimentais, realizados em um software industrial proprietário de edição de imagens, abrangendo medições pontuais e temporais. Os resultados empíricos validaram a eficácia e a robustez da abordagem, comprovando que o Oráculo Aproximado de Teste de Performance, baseado na adaptação do N-version testing, é capaz de definir uma margem de tolerância objetiva para a detecção de regressões, atendendo assim ao objetivo principal da dissertação. O trabalho demonstrou que a técnica possui alto valor diagnóstico, antecipando falhas e reduzindo a subjetividade do testador humano na definição e verificação das saídas de desempenho. A abordagem também foi bem avaliada, através da aplicação de um SUS, por Engenheiros de testes de software, tendo recebido a nota de 86.9 na usabilidade da abordagem.
Palavras-chave: testes de performance, oráculo aproximado para testes, n-version testing.
Comentários desativados