Grupo de Grupo de Otimização em Otimização em Engenharia de Software da UECEEngenharia de Software da UECE
TarcianeTarcianeTarcianeTarcianeTarcianeTarcianeTarcianeTarciane de Castro Andradede Castro Andradede Castro Andradede Castro Andradede Castro Andradede Castro Andradede Castro Andradede Castro Andrade
Fabrício Fabrício Fabrício Fabrício Fabrício Fabrício Fabrício Fabrício Gomes de Gomes de Gomes de Gomes de Gomes de Gomes de Gomes de Gomes de FreitasFreitasFreitasFreitasFreitasFreitasFreitasFreitas
Priorização daPriorização daCorressão de DefeitosCorressão de DefeitosPriorização daPriorização daCorressão de DefeitosCorressão de Defeitos
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Roteiro
IntroduçãoIntrodução11
O O ProblemaProblema PCDPCD22
AbordagemAbordagem PropostaProposta33
ExperimentosExperimentos e e ResultadosResultados44
ConclusõesConclusões55
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Introdução
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
�A atividade de Teste de Software objetiva a identificação dos defeitos
Introdução
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
�Como resultado, determina-se uma listade defeitos:
Introdução
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
�Para garantir a qualidade do sistema, os defeitos encontrados devem ser corrigidos.
�Asim, o clienteterá o sistemacomo desejado.
Introdução
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
�Além disso, quanto antes um defeito é corrigido, menor é o seu impacto no projeto.
Introdução
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
�Assim, os defeitos mais “pioritários” devem ser corrigidos com antecedência.
�Com a correção desses defeitos de forma antecipada, consegue-se maior melhoriano impacto no projeto.
�Além disso, garantimos a correção dos mais importantes na ocorrência de faltade recursos (tempo, pessoal, …).
Introdução
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
O Problema PCD
�O Problema da Priorização da Correção de Defeitos (PCD) trata da determinação da ordem (sequência) de defeitos paracorreção.
�Para resolver o PCD, buscaremos umaordem que melhor satisfaça três aspectos:
• Severidade
• Importância
• Frequência
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
O Problema PCD
�Os significados dos três aspectos são:
• Visão técnica
• Impacto do defeito no sistema
• Visão técnica
• Impacto do defeito no sistema
SeveridadeSeveridade
• Visão de negócio
• Impacto do defeito para o Cliente
• Visão de negócio
• Impacto do defeito para o Cliente
ImportânciaImportância
• Definido de acordo com a ocorrência do defeito• Definido de acordo com a ocorrência do defeito
FrequênciaFrequência
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
O Problema PCD
�Desejamos que os defeitos com maiores valoresestejam nas primeiras posições (serão corrigidos
primeiro).
Defeito D Defeito B Defeito C Defeito A Defeito F Defeito E
Sev eridade
55Sev eridade
44Sev eridade
44Sev eridade
33Sev eridade
22Sev eridade
11
Defeito A B C D E F
Severidade 3 4 4 5 1 2
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Defeito A B C D E F
Severidade 3 4 4 5 1 2
Importância 2 3 4 3 1 1
Frequência 2 4 4 1 5 1
O Problema PCD
�Desejamos que os defeitos com maiores valoresestejam nas primeiras posições (serão corrigidos
primeiro).
Defeito D Defeito B Defeito C Defeito A Defeito F Defeito E
Sev eridade
55Sev eridade
44Sev eridade
44Sev eridade
33Sev eridade
22Sev eridade
11
Defeito A B C D E F
Severidade 3 4 4 5 1 2
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Defeito A B C D E F
Severidade 3 4 4 5 1 2
Importância 2 3 4 3 1 1
Frequência 2 4 4 1 5 1
O Problema PCD
Defeito A B C D E F
Severidade 3 4 4 5 1 2
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Abordagem Proposta
�Para priorizar, vamos agregar “pesos” a cadadefeito.
�Os valores de peso estarão
inversamente relacionados à posição do defeito na ordem.
Menor posição
Maior peso
Defeito A
Defeito B
Defeito C
Defeito D
Defeito E
Defeito F
Posição : 1 2 3 4 5 6
“Peso”: 6 5 4 3 2 1
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Abordagem Proposta
�Cada defeito contribuirá para o somatório total da ordem de acordo com a fórmula:
� Ao final, maximizamos o somatório.
Valor do defeito (D) no aspecto
“Posição inversa” de D na ordem
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Abordagem Proposta
Para Para conseguirconseguir maximizarmaximizar o o somatór iosomatór io , , o sos maio resmaio res pesos pesos devemdevem ser ser agregadosagregados aosaosdefeitosdefeitos com com maio resmaio res valo resvalo res..
E starEstar com com comcom osos maio resmaio respesos pesos representarepresenta terter as as menoresmenores posiçõesposições..
O prob lema fo i reso lvido !O prob lema fo i reso lvido !
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Abordagem Proposta
�A formulaçaõ final do problema é:
Maximizar “Severidade”
Maximizar “Importância”
Maximizar “Frequência”
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Experimentos e Resultados
�Testes foram realizados com três instâncias:
Instâncias
20 defeitos
100 defeitos
300 defeitos
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Experimentos e Resultados
�Para comparação, foram analisadas três técnicas:
• Soma dos valores nos três aspectos• Ordenação decrescente dos valores• Soma dos valores nos três aspectos• Ordenação decrescente dos valores
Soma
• Produto dos valores nos três aspectos• Ordenação decrescente dos valores• Produto dos valores nos três aspectos• Ordenação decrescente dos valores
Produto
• Ordenação efetuada de forma randômica• Ordenação efetuada de forma randômica
Aleatório
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Experimentos e Resultados
�Exemplo:
Defeito A B C D E F
Severidade 3 4 4 5 1 2
Importância 2 3 4 3 1 1
Frequência 2 4 4 1 5 1
Soma 7 11 12 9 7 4
Produto 12 48 64 15 5 2
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Experimentos e Resultados
�A resolução do problema foi realizada com a metaheurística multiobjetiva NSGA-II.
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Experimentos e Resultados
�20 defeitos:
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Experimentos e Resultados
�100 defeitos:
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Experimentos e Resultados
�100 defeitos:
GOES.UECEPriorização da Priorização da CorreçãoCorreção de Defeitosde Defeitos
Conclusões
�A formulaçaõ proposta de fato representa osdesejado.
�A abordagem utilizada apresentou resultados
melhores que outras técnicas.
Grupo de Grupo de Otimização em Otimização em Engenharia de Software da UECEEngenharia de Software da UECE
goes.comp.uece.br