2012 qualificacao-rodrigo-2012

  • Published on
    04-Jul-2015

  • View
    177

  • Download
    0

Embed Size (px)

Transcript

  • 1. Reabertura de Defeitos Corrigidos: Impactos e Preveno(Exame de Qualicao)Rodrigo Rocha G. e Souza Orientadora: Christina von Flach Garcia ChavezCo-Orientador: Roberto Almeida BittencourtLaboratrio de Engenharia de Software (LES)Universidade Federal da Bahia (UFBA)3 de dezembro de 2012 1

2. Introduo Contexto e Motivao.Estado da Arte e Limitaes. 2 3. Durante o desenvolvimento de software,defeitos so relatados em sistemas deacompanhamento de defeitosArtefato: relatrio de defeito ou tquete3 4. Criao de Tquete4 5. 5 6. 6 7. 7 8. FIXED / DUPLICATE / WONTFIX / WORKSFORME / INVALID 7 9. conrmao triagemlocalizaoProcesso de correoCorreo deDefeitosvericao8 10. UNCONFIRMED => NEW conrmaotriagem localizaoProcesso decorreoCorreo deDefeitos vericao 8 11. UNCONFIRMED => NEW conrmao DUPLICATE WONTFIX triagemWORKSFORMEINVALIDlocalizaoProcesso de correoCorreo deDefeitosvericao8 12. UNCONFIRMED => NEW conrmao DUPLICATE WONTFIX triagemWORKSFORMEINVALIDlocalizaoProcesso de correoCorreo deDefeitosvericao8 13. UNCONFIRMED => NEW conrmao DUPLICATE WONTFIX triagemWORKSFORMEINVALIDlocalizaoProcesso deFIXEDcorreoCorreo deDefeitosvericao8 14. UNCONFIRMED => NEW conrmao DUPLICATE WONTFIX triagemWORKSFORMEINVALIDlocalizaoProcesso deFIXEDcorreoCorreo deDefeitosVERIFIEDvericao8 15. Caractersticasconrmaoque resolues so empregadas?triagem localizao feita pelo responsvel pela triagem?correoexiste uma fase de vericao? vericaoetc. 9 16. Reabertura de Defeitos Depois de marcado como resolvido, otquete reaberto. 10 17. conrmao triagem Quando odefeito podelocalizaoser reaberto correovericao 11 18. conrmaoDUPLICATEWONTFIXtriagem WORKSFORME Quando o INVALIDdefeito podelocalizaoser reaberto correovericao11 19. conrmao DUPLICATE WONTFIXtriagemWORKSFORME Quando oINVALIDdefeito pode localizaoser reaberto FIXEDcorreo vericao 11 20. conrmao DUPLICATE WONTFIXtriagemWORKSFORME Quando oINVALIDdefeito pode localizaoser reabertoFIXED correo VERIFIEDvericao 11 21. S 2% dos defeitoscorrigidos so reabertos(Fonte: Almossawi, 2012) 12 22. Porm, defeitosreabertos... 13 23. levam mais tempo paraser corrigidos(Fonte: Shihab et al., 2010) 14 24. envolvem maisdesenvolvedores (Fonte: Park et al., 2012) 15 25. podem atrasar olanamento de novasverses 16 26. podem ser descobertosaps o lanamento17 27. + reabertura =- produtividade- qualidadeA reabertura dedefeitos deve ser evitada18 28. Qual o estadoda arte sobrereabertura de defeitos? 19 29. Mtodos Minerao de repositrios de software(relatrios de defeito, cdigo-fonte) Minerao de dados, estatstica Questionrios 30. Estado da Arte Por que os defeitos so reabertos? Em que defeitos reabertos diferem dosdemais? Qual o custo da reabertura de defeitos? 31. Por que os defeitos so reabertos? Zimmermann et al., 2012: Diculdade de se reproduzir o defeito Causa raiz do defeito no identicada Avaliao incorreta da prioridade(wontx) Correo incompleta Problemas de integrao de cdigo22 32. Por que os defeitos so reabertos? Almossawi, 2012 (apenas defeitos xed): 68%: o defeito reapareceu 16%: erros humanos, falhas na colaborao(ex.: esquecer de anexar o patch) 7%: o defeito regrediu por causa de outrasalteraes 9%: causas diversas 23 33. Em que defeitos reabertosdiferem dos demais? Shihab et al., 2010 Palavras usadas na descrio e noscomentrios (ex.: depurao,plataformas). Tempo para a primeira correo. Componente onde o defeito foiencontrado. 24 34. Em que defeitos reabertosdiferem dos demais? Zimmermann et al., 2012: Como foram encontrados: reviso decdigo e ferramentas de anlise vs.usurios e teste de sistema. Maior severidade. 25 35. Em que defeitos reabertosdiferem dos demais? Desenvolvedores mais ativos (em cdigo-fonte) tendem a fornecer correesdenitivas. (Jongyindee et al., 2011) Defeitos corrigidos e reabertos estoassociados a cdigo-fonte com altacomplexidade ciclomtica. (Almossawi, 2012)26 36. Qual o custo dareabertura de defeitos? Considerando apenas defeitos corrigidos, ataxa de reabertura de 2,15% no GNOME,1,35% no Evolution e 3,88% no GTK+.(Almossawi, 2012) 27 37. Qual o custo dareabertura de defeitos? Defeitos reabertos tm ciclo de vida... 2x mais longo (Shihab et al., 2010) 56 a 91% mais longo (Park et al., 2012) Defeitos reabertos envolvem a participaode 21 a 62% mais desenvolvedores. (Park etal., 2012) 28 38. Qual o custo dareabertura de defeitos? Nem todas as reaberturas representamcusto adicional signicativo. s vezesdefeitos so fechados de propsito paraserem resolvidos no futuro. (Jongyindee etal., 2011) 29 39. Observaes sobre oestado da arte 40. rea recente: 2010 31 41. Caracterizao epredio de reabertura32 42. Predio Preveno 33 43. Reabertura aps triagemvs.Reabertura aps correo 34 44. Conhecimentolimitado sobre oimpacto da reabertura35 45. PropostaObjetivos. Questesde Pesquisa. Mtodos 36 46. Objetivo Geral Avaliar que caractersticas doprocesso de correo de defeitos(sobretudo vericao) contribuem para evitar areabertura de defeitos corrigidos ou reduzir seus impactos37 47. Objetivo Geral Avaliar que caractersticas doprocesso de correo de defeitos(sobretudo vericao) contribuem para evitar areabertura de defeitos corrigidos ou reduzir seus impactos38 48. Objetivo Geral Avaliar que caractersticas doprocesso de correo de defeitos(sobretudo vericao) foco em contribuem para evitar a prevenoreabertura de defeitos corrigidos ou reduzir seus impactos 38 49. Objetivo Geral Avaliar que caractersticas doprocesso de correo de defeitos(sobretudo vericao) foco em contribuem para evitar a prevenoreabertura de defeitos corrigidos ou foco em defeitos impactos reduzir seus corrigidos38 50. Objetivo Geral Avaliar que caractersticas doprocesso de correo de defeitos(sobretudo vericao) foco em contribuem para evitar a prevenoreabertura de defeitos corrigidos ou foco em defeitos impactos reduzir seus corrigidosfoco em38impactos 51. Objetivo Especco 1. Caracterizar o processo devericao a partir de relatrios de defeito39 52. Questes de Pesquisa 40 53. Questes de Pesquisa RQ1.1: Quando a vericao realizadadentro do ciclo de vida de lanamentos? 40 54. Questes de Pesquisa RQ1.1: Quando a vericao realizadadentro do ciclo de vida de lanamentos? RQ1.2: Quem realiza a vericao? H umaequipe dedicada? 40 55. Questes de Pesquisa RQ1.1: Quando a vericao realizadadentro do ciclo de vida de lanamentos? RQ1.2: Quem realiza a vericao? H umaequipe dedicada? RQ1.3: Que tcnicas so empregadas para avericao? 40 56. Questes de Pesquisa RQ1.1: Quando a vericao realizadadentro do ciclo de vida de lanamentos? RQ1.2: Quem realiza a vericao? H umaequipe dedicada? RQ1.3: Que tcnicas so empregadas para avericao? RQ1.4: Que ameaas existem ao seinvestigar as questes RQ1.{1,2,3} atravs daminerao de repositrios de software? 40 57. Objetivo Especco2. Caracterizar a reabertura dedefeitos (ocorrncia e custo*) * tempo 41 58. Questes de Pesquisa 42 59. Questes de Pesquisa RQ2.1: Como a reabertura de defeitos sedistribui em relao ao tempo, aosdesenvolvedores etc.? 42 60. Questes de Pesquisa RQ2.1: Como a reabertura de defeitos sedistribui em relao ao tempo, aosdesenvolvedores etc.? RQ2.2: Qual o custo de defeitos reabertos(em relao a no-reabertos), em termos detempo de desenvolvimento? 42 61. Objetivo Especco3. Investigar a inuncia doprocesso de vericao na ocorrncia e no custo dereaberturas 43 62. Questes de Pesquisa 44 63. Questes de Pesquisa RQ3.1: Qual o impacto do instante davericao na reabertura de defeitos?44 64. Questes de Pesquisa RQ3.1: Qual o impacto do instante davericao na reabertura de defeitos? RQ3.2: Qual o impacto da equipe dequalidade na reabertura de defeitos?44 65. Questes de Pesquisa RQ3.1: Qual o impacto do instante davericao na reabertura de defeitos? RQ3.2: Qual o impacto da equipe dequalidade na reabertura de defeitos? RQ3.3: Qual o impacto da tcnica devericao na reabertura de defeitos?44 66. Mtodo45 67. Mtodo Minerao de repositrios de software 45 68. Mtodo Minerao de repositrios de software Dados: relatrios de defeitos 45 69. Mtodo Minerao de repositrios de software Dados: relatrios de defeitos Ameaas 45 70. Mtodo Minerao de repositrios de software Dados: relatrios de defeitos Ameaas nem toda a coordenao entredesenvolvedores est registrada 45 71. Mtodo Minerao de repositrios de software Dados: relatrios de defeitos Ameaas nem toda a coordenao entredesenvolvedores est registrada o defeito pode ter sido resolvido antesmesmo de ser relatado 45 72. Mtodo Minerao de repositrios de software Dados: relatrios de defeitos Ameaas nem toda a coordenao entredesenvolvedores est registrada o defeito pode ter sido resolvido antesmesmo de ser relatado pode haver edies em massa 45 73. Mtodo Anlise exploratria*: levantamento devariveis de interesse Classicao automtica Anlise exploratria*: validao Caracterizao ou inferncia* quantitativa e qualitativa 74. Mtodo(objetivo especco 3) Mtodo: teste exato de Fisher (associaoentre variveis) Desao: isolar variveis de confuso (ex.:severidade, componente...) Estraticao Regresso47 75. Projetos Estudados 76. Resultados Parciais 49 77. Como aproveitar relatriosde defeito para minerar oprocesso de vericao?H rudo nos dados? (Objetivo Especco 1) 50 78. h rudos nos dados? (RQ1.4)quando feita a vericao? (RQ1.1)quem faz a vericao? (RQ1.2)como feita a vericao? (RQ1.3)51 79. h rudos nos dados?vericaes em massa 52 80. h rudos nos dados?No Eclipse Modelling Framework,VERIFIED signica que o patch est disponvel em uma build.53 81. quando feita a vericao? fase de vericao 54 82. quem faz a vericao? time de QA1055 83. 20% dos desenvolvedoresquem faz a vericao? time de QA1055 84. 20% dos desenvolvedores quem faz a vericao?time deQA80% das verificaes1055 85. como feita a vericao?A maioria dos comentrios no traz informao sobre a tcnica empregada. 56 86. Resumo Fase de vericao Time de QA Comentrios raramente mencionam tcnica de vericao. Cuidado com vericaes em massa.57 87. Ser que determinadasprticas de ve