O Impacto de Pares na Identificação de Anomalias de
Código: Um Experimento Controlado
Roberto F. de Oliveira – [email protected]
LES | DI |PUC-Rio - Brazil
OPUS Research Group
Sumário








Introdução
Questão Central de Pesquisa
Background
Procedimentos Metodológicos
Resultados
Ameaças a validade
Conclusões
Trabalhos Futuros
Jul - 2013
[email protected]
2
Introdução

Anomalias de Código


Problemas Estruturais
Melhorias



Dificuldades de Detecção


Jul - 2013
Modularidade
Manutenabilidade
Inexperiência
Intrínseca desta atividade
[email protected]
3
Questão Central de Pesquisa

Questão de Pesquisa

Jul - 2013
Qual o impacto dos pares como meio de identificação de
anomalias de código?
[email protected]
4
Bakground

Programação em Pares



Driver
Observer
Equação da Precisão

Jul - 2013
Precisão é a proporção de um conjunto de objetos retornados
que é realmente relevante [10].
[email protected]
5
Procedimentos Metodológicos
Jul - 2013
[email protected]
6
Procedimentos Metodológicos

Características da Amostra

16 acadêmicos




Jul - 2013
Suscetíveis a mudança
Comprometidos com o experimento
2 Universidades
4 tipos de anomalias
[email protected]
7
Procedimentos Metodológicos

Descrição do Experimento
Jul - 2013
[email protected]
8
Procedimentos metodológicos
H1 - Em pares os participantes identificam número maior de anomalias de código
em comparação a indivíduos.
Verificação de H1 - Se o número de anomalias identificadas na modalidade em pares
for maior que na modalidade individual, então esta hipótese será confirmada.
H2 - Pares reduzem o número de falsos positivos em relação a indivíduos.
Verificação de H2 - Se o número de falsos positivos na modalidade em pares for
menor que na modalidade individual, esta hipótese será confirmada..
H3 - Em pares possui uma precisão de acertos na identificação de anomalias em
relação a indivíduos?
Verificação de H3 - Se a média global referente ao índice de precisão em pares for
maior que na modalidade individual, esta hipótese será confirmada.
Jul - 2013
[email protected]
9
Resultados

Perfil dos Participantes
Jul - 2013
[email protected]
10
Resultados

Identificação individual


Jul - 2013
Eficácia
Precisão
11
Resultados

Identificação em Pares


Jul - 2013
Eficácia
Precisão
12
Resultados

Confirma a H1 – Pares identificam um número maior
Participantes
Participante 1
Participante 2
Participante 3
Participante 4
Participante 5
Participante 6
Participante 7
Participante 8
Participante 9
Modalidade
Individual
QS
QA FP
2
1
1
5
3
2
2
2
0
8
6
2
2
2
0
4
3
1
3
3
0
6
4
2
4
3
1
Participantes

Eficácia
Jul - 2013
1e4
5e2
8e7
3e6
9 e14
Modalidade
Individual
QS QA QFP
3
3
0
2
2
0
7
4
3
4
4
0
5
2
3
6
3
3
3
3
0
66 48
18
4,1 3,0
1,1
Participantes
Participante 10
Participante 11
Participante 12
Participante 13
Participante 14
Participante 15
Participante 16
Total
Média
Modalidade em Pares
QS
QA
QFP
7
5
2
12
8
4
11
9
2
8
7
1
9
5
4
Participa
ntes
11 e 10
12 e 13
16 e 15
Total
Média
[email protected]

Eficácia
Modalidade em Pares
QS
QA
QFP
12
10
2
8
5
3
10
8
2
77
57
20
9,6
7,1
2,5
13
Resultados

H2 não é confirmada – Pares identificam um número FP
Participantes
Participante 1
Participante 2
Participante 3
Participante 4
Participante 5
Participante 6
Participante 7
Participante 8
Participante 9
Modalidade
Individual
QS
QA FP
2
1
1
5
3
2
2
2
0
8
6
2
2
2
0
4
3
1
3
3
0
6
4
2
4
3
1
Participantes

Eficácia
Jul - 2013
1e4
5e2
8e7
3e6
9 e14
Participantes
Participante 10
Participante 11
Participante 12
Participante 13
Participante 14
Participante 15
Participante 16
Total
Média
Modalidade em Pares
QS
QA
QFP
7
5
2
12
8
4
11
9
2
8
7
1
9
5
4
Modalidade
Individual
QS QA QFP
3
3
0
2
2
0
7
4
3

4
4
0
5
2
3
6
3
3
3
3
0
66 48
18
4,1 3,0
1,1
Participa
ntes
11 e 10
12 e 13
16 e 15
Total
Média
[email protected]
Eficácia
Modalidade em Pares
QS
QA
QFP
12
10
2
8
5
3
10
8
2
77
57
20
9,6
7,1
2,5
14
Resultados

H3 não é confirmada – Precisão em Pares é menor


Precisão
Precisão
Jul - 2013
15
Resultados

Questionário Pós-Experimento
Jul - 2013
16
Ameaças a Validade


Questionário Pré-experimento
 Participantes não desejam desenvolver atividades relacionadas a
programação;
Questionário Pós-Experimento
 Treinamento não foi suficiente
Jul - 2013
17
Conclusões

Por intermédio de Pares:
 Identificar um número maior de anomalias.
 Apresentar um número maior de falsos positivos
 Aumento 15%.
 A precisão de acertos é menor quando em pares;
Jul - 2013
18
Trabalhos Futuros




(i) replicar o estudo envolvendo programadores profissionais, a fim de verificar a aceitação
da técnica para esta atividade de identificação de anomalias.
(ii) reproduzir a referida pesquisa, utilizando-se da estratégia automatizada de detecção de
anomalias;
(iii) investigar se o critério de definição dos pares pode influência na identificação de
anomalias de código;
(iv) buscar inquirir se através da programação em pares é possível minimizar o tempo gasto
no processo de identificação de anomalias;
Jul - 2013
19
Dúvidas
Jul - 2013
20
Download

- PUC-Rio