atmm uma ferramenta para gerenciamento de métricas de ... · m etricas, ferramentas para coleta,...
TRANSCRIPT
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
ATMM uma ferramenta para gerenciamento de metricasde teste no contexto de metodos ageis
M.Sc. Andre Abe Vicente, Dr. Marcio Eduardo Delamaro
Instituto de Ciencias Matematicas e de Computacao – ICMCUniversidade de Sao Paulo – USP
Laboratorio de Engenharia de Software – LabES
Workshop Brasileiro de Metodos Ageis (WBMA) - Agile Brazil 2010
Porto Alegre, 24/06/2010
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 1 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Roteiro
1 Motivacao e Objetivos
2 Teste de Software em Metodos Ageis
3 Metricas de SoftwareMetricas de Acompanhamento de TesteFerramenta ATMM
4 Estudo de CasoMetodo e Metricas AvaliadasAnalise dos Resultados
5 Conclusoes e Trabalhos Futuros
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 2 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Introducao e Motivacao
Mudancas: necessidades do cliente (satisfacao). Nao podemafetar: cronograma e orcamento.
Metodos ageis: valores, princıpios e boas praticas dedesenvolvimento e conducao de projeto.
Feedback e melhoria contınua
Testes ageis: Constante feedback do cliente.
Executado com frequencia para detectar defeitos o mais cedo possıvel.
Metricas de teste: Acompanhamento, melhoria do processo e praticas.
Avaliar e estabelecer metas de qualidade (artefatos).Codigo de teste de qualidade → medir de forma eficiente softwareproduzido.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 3 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Introducao e Motivacao
Mudancas: necessidades do cliente (satisfacao). Nao podemafetar: cronograma e orcamento.
Metodos ageis: valores, princıpios e boas praticas dedesenvolvimento e conducao de projeto.
Feedback e melhoria contınua
Testes ageis: Constante feedback do cliente.
Executado com frequencia para detectar defeitos o mais cedo possıvel.
Metricas de teste: Acompanhamento, melhoria do processo e praticas.
Avaliar e estabelecer metas de qualidade (artefatos).Codigo de teste de qualidade → medir de forma eficiente softwareproduzido.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 3 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Trabalhos Relacionados e Objetivos
Trabalhos Relacionados
Abordagens para escolha e utilizacao de metricas em projetos ageis(Sato, 2007; Williams et al., 2004; Hartmann e Dymond, 2006;Crispin e Gregory, 2009).
Metricas de teste: objetivos e fatores que influenciam essasmetricas, ferramentas para coleta, gerenciamento e analise demetricas.
Objetivos
Propor adocao de um conjunto de metricas de acompanhamento de teste.
Objetivo Metricas: melhoria contınua do processo de testes e dosartefatos de teste (problemas ou evolucoes e metas de qualidade).
Validar as Metricas com um estudo de caso.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 4 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Teste de Software em Metodos Ageis
Papel central em atividades de Garantia de Qualidade de Software.
Objetivos: Revelar a presenca de erros ou defeitos no produto eaumentar confianca de que o produto esteja correto (Myers et al.,2004).
Aplicado em varios estagios, com diferentes objetivos.
Teste de Software Agil
Executados frequentemente, procurando detectar defeitos o mais cedopossıvel.
Testando sob o ponto de vista do cliente (aceitacao).
Desenvolvimento Dirigido a Testes (TDD), testes de aceitacao, testesexploratorios, de usabilidade e sistema.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 5 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Metricas de software e Metricas ageis
Metricas de software: padroes quantitativos de medidas de varios aspectosdo projeto de software (Pressman, 2006; Crispin e Gregory, 2009).
Apoiar estimativas e medir progresso.Produtividade da equipe.Controle de qualidade (desvios do objetivo, ou a equipe esta nocaminho correto).Controle do projeto.
Boas Metricas Ageis: Reforcar princıpios ageis (Hartmann e Dymond,2006).
Minimizacao de metricas e facilidade para serem coletadas.Influencias de outras metricas.Feedback frequente e regular.Atualizadas, discutidas e disponibilizadas.Incentivar melhoria e alto nıvel de qualidade.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 6 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Metricas de Acompanhamento de Teste
Metricas de acompanhamento de teste
Metricas de acompanhamento de teste
Criadas a partir de uma lista de verificacao (Hartmann e Dymond,2006).
Objetivo, base da medicao, quando utilizar, tendencia esperada, formasde manipulacao...
Categorias:Apoio ao teste de unidade (4 metricas)Apoio ao teste de aceitacao (3 metricas)Apoio geral (2 metricas)
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 7 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Metricas de Acompanhamento de Teste
Metricas de acompanhamento de teste
Metricas de teste adotadas/propostas
M1. Cobertura de Codigo [1,2]
M2. Fator de Teste [4]
M3. Quantidade de Casos de Teste e Assertivas [1,2]
M4. Porcentagem de Assertivas de Teste de Unidade Passando e Falhando
M5. Quantidade de Testes de Aceitacao por Funcionalidades [3]
M6. Porcentagem de Assertivas de Teste de Aceitacao Passando e Falhando
M7. Funcionalidades Testadas e Entregues (Running Tested Features ou RTF) [4]
M8. Tempo de Execucao de Testes
M9. Quantidade de Defeitos Encontrados [1]
Fonte: [1] XP-EF (Williams et al., 2004), [2] Nagappan et al. (2005), [3] (Nagappan,
2004) e [4] (Sato, 2007).
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 8 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Ferramenta ATMM
Agile Testing Metrics Management (ATMM) (1/3)
Apoiar teste de unidade, gerenciar iteracoes e exibir metricas (codigo e teste).
Metricas implementadas: M1 (Cobertura), M2 (Fator de Teste), M3 (CTs eAssertivas), M4 (Assertivas Passando/Falhando), M8 (Tempo)
Outras metricas: LOC/Classes, Qtde. Historias/Backlog, Duracao Iteracao...
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 9 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Ferramenta ATMM
Agile Testing Metrics Management (ATMM) (2/3)
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 10 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Ferramenta ATMM
Agile Testing Metrics Management (ATMM) (3/3)
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 11 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Estudo de Caso
Objetivo: avaliar a aplicacao das metricas de teste de software propostas.
Kalibro (Metricas): Utilizou metodo XP, desenvolvido pela AgilCoop(IME-USP).
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 12 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Metodo e Metricas Avaliadas
Metodo e Metricas Avaliadas
Fontes de Informacao (Estudo de Caso)
Ferramenta ATMM: metricas de teste e metricas codigo-fonte.
Scripts JaBUTi: cobertura requisitos de teste (fluxo de controle edados)
Ferramenta Kalibro: algumas das metricas (qualidade do codigo) -qualidade dos metodos, coesao e acoplamento.
Questionario (XP-EF): caracterizacao dos projetos (Williams et al.,2004).
Ferramentas, praticas ageis e praticas de teste.Aderencia e maturidade da atividade de teste.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 13 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Analise dos Resultados
Analise dos Resultados - Maturidade e Aderencia
Aderencia atividades de teste (0 a 4):Testes de Unidade Automatizados: 3Testes de Aceitacao com o cliente: 1Desenvolvimento Dirigido a testes (TDD): 2Resultado: nıvel alto teste de unidade, teste de aceitacao e TDD naoutilizados totalmente.
Maturidade da atividade de teste (0 a 5):Teste de Unidade e TDD: 5Processo e Melhoria: 3,75Teste de Aceitacao e Sistema: 2,5Automacao Teste: 2Total Praticas de Teste: 2,1Resultado: Maturidade teste de unidade. preocupacao com processo emelhoria e teste de aceitacao.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 14 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Analise dos Resultados
Analise dos Resultados - Qtde codigo e teste (Kalibro) (1/2)
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 15 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Analise dos Resultados
Analise dos Resultados - Qtde codigo e teste (Kalibro) (2/2)
LOC FACTOR [LOC T / LOC SUT]
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 16 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Analise dos Resultados
Analise dos Resultados - Evolucao dos Testes de Unidade (Kalibro)
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 17 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Analise dos Resultados
Analise dos Resultados - Qualidade do codigo
Metricas de Qualidade
AMLOC (Average Lines per Method)
MMLOC (Max Method LOC)
LCOM4 (Lack of Cohesion in Methods): metodos relacionados.
ACC (Afferent Connections per Class): classe acessa metodo ou atributode outra classe.
CBO (Coupling Between Objects): qtde de classes utilizadas pela classeanalisada.
Resultados
Metodos pequenos (facilita entendimento), metodos com bom grau de coesao,baixo acoplamento entre as classes.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 18 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Analise dos Resultados
Analise dos Resultados - Evolucao Cobertura (Kalibro)
EI - Exception Independent
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 19 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Analise dos Resultados
Analise dos Resultados - Evolucao Cobertura (Kalibro)
ED - Exception Dependent
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 20 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Discussao e Conclusoes
Discussao e Conclusoes
Aderencia e maturidade da atividade de testes
Evolucao do codigo-fonte, testes e cobertura
Iteracoes maior enfase aos testes → aumento cobertura.Framework Fest (GUI) contribuiu para o aumento cobertura.
Qualidade do codigo
Coleta de Metricas de Acompanhamento de Teste
Feedback constante durante as iteracoes.
Utilizar informacoes em reunioes diarias e retrospectivas.Melhoria do processo e tambem dos artefatos produzidos.Detectar problemas ou evolucoes (qualidade dos CTs produzidos).Metodologia para metas de qualidade e intervalos de referencia.
Automacao: rapidez (coleta), saıdas devem ser faceis de serem interpretadas.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 21 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Conclusoes
Contribuicoes
Caracterizacao do processo, estrategias e praticas de teste de softwareem metodos ageis.
Descricao conjunto de metricas (atividade de teste em projetos ageis).
Ferramenta ATMM: gerencia de iteracoes e algumas das metricas de teste.Cenario de uso de como a equipe poderia utilizar a ferramenta em umprojeto agil.
Analise de projeto de software que utilizou o metodo XP.
Questionario info. gerais de um projeto agil baseado no (XP-EF):proposta de novas categorias relacionadas a praticas, aderencia e maturidadeda atividade de teste.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 22 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Conclusoes
Trabalhos Futuros
Validacao mais aprofundada das metricas.
Conduzir outro estudo de caso (valores de referencia e compor novasmetricas).
Aplicacao em projetos reais, durante o seu desenvolvimento.
Melhoria da ferramenta ATMM: outras linguagens, metricas de testede aceitacao, coletar codigo diretamente repositorio, integracaoKalibro (valores de referencia).
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 23 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Conclusoes
FIM
Obrigado...Questoes???e-mail: [email protected]
www: andvicente.wordpress.com
Dakar 2010 on January 1, 2010 in Buenos Aires (Maxi Failla/AFP/Getty Images)Big Picture (http://www.boston.com/bigpicture)
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 24 / 25
Motivacao e Objetivos Teste de Software em Metodos Ageis Metricas de Software Estudo de Caso Conclusoes Referencias
Conclusoes
Referencias I
Crispin, L.; Gregory, J. Agile testing: A practical guide for testers and agile teams.Addison-Wesley Professional, 2009.
Hartmann, D.; Dymond, R. Appropriate agile measurement: Using metrics and diagnostics todeliver business value. In: Proceedings of Agile Conference 2006 (AGILE ’06). Minnesota,USA, Washington, DC, USA: IEEE Computer Society, 2006, p. 126–134.
Nagappan, N. Toward a software testing and reliability early warning metric suite. In: 26thInternational Conference on Software Engineering (ICSE 2004), Edinburgh, United Kingdom,IEEE Computer Society, 2004, p. 60–62.
Nagappan, N.; Williams, L.; Osborne, J.; Vouk, M.; Abrahamsson, P. Providing test qualityfeedback using static source code and automatic test suite metrics. In: 16th IEEEInternational Symposium on Software Reliability Engineering, 2005 (ISSRE 2005), Chicago,IL, USA, IEEE Computer Society, 2005, p. 85–94.
Pressman, R. S. Engenharia de software. 6 ed. Sao Paulo: McGraw-Hill, 2006.
Sato, D. T. Uso eficaz de metricas em metodos Ageis de desenvolvimento de software.Dissertacao de Mestrado, Instituto de Matematica e Estatıstica - Universidade de Sao Paulo,Sao Paulo, SP, Orientador: Prof. Dr. Alfredo Goldman, 2007.
Williams, L.; Krebs, W.; Layman, L.; Anton, A. I.; Abrahamsson, P. Toward a framework forevaluating extreme programming. In: Empirical Assessment in Software Engineering(EASE), Edinburgh, Scotland, 2004, p. 11–20.
Andre Abe Vicente (ICMC-USP) Apresentacao WBMA (Testes) Porto Alegre, 24/06/2010 25 / 25