Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em...

33
Benchmarks para experimentos em localização de defeitos Higor Amario de Souza IME-USP [email protected] Workshop do Núcleo de Apoio à Pesquisa em Soſtware Livre São Carlos, 16 a 17 de Outubro de 2014.

Transcript of Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em...

Page 1: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Benchmarks para experimentos em localização de defeitos

Higor Amario de SouzaIME-USP

[email protected]

Workshop do Núcleo de Apoio à Pesquisa em Software Livre

São Carlos, 16 a 17 de Outubro de 2014.

Page 2: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Depuração de programas

• Depuração: localização + correção

• Tarefa custosa

• Inicia-se a partir da identificação de falhas

• Processo manual e ad-hoc

Page 3: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Localização de defeitos

• Automatização

• Testes automatizados

• Cobertura de código

• Heurísticas

• Indicar trechos de código mais suspeitos

– Blocos, comandos, predicados

Page 4: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Exemplo: max [1]

Page 5: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Conjunto de teste

Page 6: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Matriz de cobertura

Page 7: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Matriz de cobertura

Page 8: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Matriz de cobertura

Page 9: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Matriz de cobertura

Page 10: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Coeficientes de cobertura

Page 11: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Matriz de cobertura

Page 12: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Tarantula [2]

Page 13: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Matriz de cobertura

Page 14: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Matriz de cobertura

Page 15: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Localização de defeitos

Page 16: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Benchmarks

• Software livre

• Conjunto de teste

• Poucas linhas de código

• Defeitos semeados

• Um defeito por versão

Page 17: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

SIR

• Software-artifact Infrastructure Repository [3]

• http://sir.unl.edu

Page 18: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

SIR

Page 19: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Benchmarks mais usados

Page 20: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Siemens suite

Page 21: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Unix suite

Page 22: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

grep, gzip, make

Page 23: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Benchmarks maiores

Page 24: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Criação de novos benchmarks

Objetivos:

– Diversidade

– Conjuntos de teste com qualidades diferentes

– Defeitos múltiplos

– Defeitos reais

Page 25: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Novos benchmarks

• Identificados com o apoio do NAPSoL

Page 26: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Criação de novos benchmarks

Page 27: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Criação de novos benchmarks

Page 28: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Criação de novos benchmarks

Page 29: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Criação de novos benchmarks

Page 30: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Criação de novos benchmarks

Page 31: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Desafios

• Melhorar a avaliação das técnicas de localização de defeitos:

– Características dos defeitos

– Qualidade dos conjuntos de teste

– Presença de defeitos múltiplos

Page 32: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Agradecimentos

• Fapesp: 2013/24992-2

• NAPSoL

Obrigado!

Page 33: Título da apresentaçãonapsol.icmc.usp.br/sites/default/files/eventos/Benchmarks...Pesquisa em Software Livre São Carlos, 16 a 17 de Outubro de 2014. Depuração de programas •

Referências

[1] CHAIM, M.L.; ANDRIOLI, R.P. An efficient bitwise algorithm for intra-procedural data-flow testing coverage. Information Processing Letters Journal, v. 113, n. 8, p. 293-300, Abril 2013.

[2] JONES, J.A.; HARROLD, M.J.; STASKO, J. Visualization of test information to assist fault localization. In: Proceedings of the 24th international conference on software engineering. (ICSE '02). p. 467-477. 2002.

[3] DO, H.; ELBAUM, S.; ROTHERMEL, G. Supporting controlled experimentation with testing techniques: an infrastructure and its potential impact. Empirical Software Engineering, v. 10, n. 4, p. 405-435, 2005.