2012 qualificacao-rodrigo-2012

  • Published on
    04-Jul-2015

  • View
    176

  • Download
    0

Embed Size (px)

Transcript

<ul><li> 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</li></ul> <p> 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 =&gt; NEW conrmaotriagem localizaoProcesso decorreoCorreo deDefeitos vericao 8 11. UNCONFIRMED =&gt; NEW conrmao DUPLICATE WONTFIX triagemWORKSFORMEINVALIDlocalizaoProcesso de correoCorreo deDefeitosvericao8 12. UNCONFIRMED =&gt; NEW conrmao DUPLICATE WONTFIX triagemWORKSFORMEINVALIDlocalizaoProcesso de correoCorreo deDefeitosvericao8 13. UNCONFIRMED =&gt; NEW conrmao DUPLICATE WONTFIX triagemWORKSFORMEINVALIDlocalizaoProcesso deFIXEDcorreoCorreo deDefeitosvericao8 14. UNCONFIRMED =&gt; 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 vericao somais ecazes do que outras no sentido de evitar reaberturas? (em andamento) 58 88. 4 olhos 59 89. 4 olhos Hiptese: bugs vericados por outra pessoa(4 olhos) esto menos sujeitos a seremreabertos (depois da vericao) 59 90. 4 olhos Hiptese: bugs vericados por outra pessoa(4 olhos) esto menos sujeitos a seremreabertos (depois da vericao) Dados: 34 subprojetos do Eclipse 59 91. 4 olhos Hiptese: bugs vericados por outra pessoa(4 olhos) esto menos sujeitos a seremreabertos (depois da vericao) Dados: 34 subprojetos do Eclipse Mtodo: teste exato de Fisher 59 92. 4 olhos Hiptese: bugs vericados por outra pessoa(4 olhos) esto menos sujeitos a seremreabertos (depois da vericao) Dados: 34 subprojetos do Eclipse Mtodo: teste exato de Fisher Resultado: inconclusivo 59 93. Exemplo de tabela de contingncianoreabriureabriu2 olhos1985 1084 olhos11366125 94. A chance de o bug ser reaberto aps avericao menor quando... ... a vericao feita pelo time de QA?inconclusivo ... a vericao feita durante a fase devericao?sim (em 2/4 dos projetos) ... uma determinada tcnica de vericao empregada (testes, inspeo etc.)?sim, no caso de inspeo de cdigo noEclipse/Platform61 95. Cronograma62 96. Atividades Concludas Requisitos do programa Crditos de disciplinas (112%) Estgio docncia (1 semestre, 2 turmas) Pesquisa 1 objetivo especco publicao no MSR 2012 97. Atividades Previstas1. Caracterizar a reabertura de defeitos2. Escrever artigo sobre a caracterizao3. Investigar a inuncia do processo de vericao na reabertura de defeitos4. Escrever a tese5. Apresentar a tese6. Escrever artigo com os resultados nais64 98. 1. Caracterizar a reabertura de defeitos2. Escrever artigo sobre a caracterizao3. Investigar a inuncia do processo de vericao na reabertura de defeitos4. Escrever a tese5. Apresentar a tese6. Escrever artigo com os resultados naisx65 99. 2. Escrever artigo sobre a caracterizao66 100. 6. Escrever artigo com os resultados naisPeridicos IEEE Transactions on Software Engineering Empirical Software Engineering Information and Software Technology Software Practice and Experience Journal of Systems and Software 67 101. Consideraes Finais 68 102. Proposta do trabalho: estudar a reabertura dedefeitos corrigidos caractersticas, custo emeios de preveni-la. rea de pesquisa recente. 69 103. Espera-se determinar que prticas podemser usadas para diminuir a quantidade dedefeitos reabertos e seus impactos negativos Esse conhecimento, se aplicado, ajuda areduzir o custo de desenvolvimento eaumentar a qualidade do software70 104. Referncias 71 105. [Almossawi 2012] Almossawi, A. (2012). Investigating the architectural drivers of defects inopen-source software systems: an empirical study of defects and reopened defects in gnome.[Jongyindee et al. 2011] Jongyindee, A., Ohira, M., Ihara, A., and Matsumoto, K.-i. (2011).Good or bad committers? a case study of committers cautiousness and the conse- quences onthe bug xing process in the eclipse project. In Proceedings of the 2011 Joint Conference ofthe 21st International Workshop on Software Measurement and the 6th InternationalConference on Software Process and Product Measurement, IWSM- MENSURA 11, pages116125, Washington, DC, USA. IEEE Computer Society.[Park et al. 2012] Park, J., Kim, M., Ray, B., and Bae, D.-H. (2012). An empirical study ofsupplementary bug xes. In Lanza, M., Penta, M. D., and Xi, T., editors, MSR, pages 4049.IEEE.[Shihab et al. 2010] Shihab, E., Ihara, A., Kamei, Y., Ibrahim, W. M., Ohira, M., Adams, B.,Hassan, A. E., and Matsumoto, K.-i. (2010). Predicting re-opened bugs: A case study on theeclipse project. In Proceedings of the 2010 17th Working Conference on Reverse Engineering,WCRE 10, pages 249258, Washington, DC, USA. IEEE Computer Society.[Zimmermann et al. 2012] Zimmermann, T., Nagappan, N., Guo, P. J., and Murphy, B.(2012). Characterizing and predicting which bugs get reopened. In Proceedings of the 2012International Conference on Software Engineering, ICSE 2012, pages 1074 1083,Piscataway, NJ, USA. IEEE Press.</p>