Universidade Federal de Pernambuco Tópicos Avançados em Engenharia de Software 3 TMM Modelo de Maturidade para Teste José Diogenes Rodrigues Accioly [email protected] Roteiro Motivação Origem Definição Fases do TMM Benefícios TMM-AM (Modelo de Avaliação) Motivação - - - O Software tem papel importante no ambiente econômico e social. Software sem qualidade pode causar a perda de vida ou de propriedade isso não é mais aceitável. Falhas podem resultar em perdas catastróficas. Origem Desenvolvido pelo Instituto de Tecnologia de Ilinois em 1996 Complementa o CMM Nível de Maturidade Melhorar Procedimento Boas Práticas Definição - Modelo de maturidade com foco em teste. Descreve o processo, que é básico em um pedido para assegurar o ótimo planejamento e controle da parte de teste de um projeto. Composto por 5 niveis de maturidade Inicial - - - Sem Objetivos Processo de teste caótico Documentação para especificação do comportamento de software quase que não existe. Os testes são desenvolvidos ad hoc Estrutura Interna Definição - O processo de testes é definido e claramente separado da depuração - O sistema está de acordo com os requisitos - Estratégias são determinadas para atingir os objetivos estabelecidos Definição - Objetivos - Desenvolver teste e eliminar erros; - - Iniciar o processo de teste de forma planejada; - - Separação de Teste e depuração Alocação de responsabilidades para testes unitário e etc. Institucionalizar métodos e técnicas básicas de teste Integração - Objetivos - Estabelecer uma organização de teste de software; - - Estabelecer um programa de treinamento técnico; - - Planjamento, execução, registro de teste, etc. Identificar, coletar, analisar metricas. Integrar teste no ciclo de vida do software; - - Controle e monitoramento do teste Gerência e Medida - Objetivos - Estabelecer um programa de revisão organizacional Estabelecer um programa de medição para teste - - Processo de teste, qualidade de software, satisfação do cliente, produtividade do testador, eficácia do projeto de teste e melhoria do processo de teste. Avaliação de qualidade do software Otimização/Prevenção de Defeitos e Controle de Qualidade - Objetivos Otimização do processo de teste - Controle da qualidade - Aplicação de um processo de dados para prevenção de defeitos - Modelo Level 5:Optimization/Defect Prevention and Quality Control •Test Process Optimization •Quality Control •Application of process data for defect prevention Level 4: Management and Measurement •Software quality evaluation •Establish test measurement program •Establish na organizationwide review program Level 3: Integration •Control and Monitor the Testing Process •Integration testing into the Software life cycle •Establish a technical training program •Establish a software test organization Level 2: Phase Definition •Institutionalize basic testing techniques and methods •Initiate a test planning process •Develop testing and debugging goals Level 1:Initial Benefícios - - - - Testadores Inteligentes Software de Qualidade A habilidade de encontrar o orçamento e os objetivos agendados. Plano melhorado O objetivo do teste possa ser medido. TMM-AM - Modelo de avaliação sobre o TMM que visa ajudar as organizações a avaliar e melhorar o seus processos de testes. Objetivo - - - Derterminar o nível de maturidade do processo Identificar os pontos fortes e fracos do processo de verificação; Desenvolver plano de ação para o processo de melhoria de teste. Componentes Principais - - Seleção e treinamento da equipe; O procedimento da avaliação; E o instrumento da avaliação (questionário); Seleção e Treinamento Equipe - - Montar uma equipe 4-8; Necessário um líder tenha perícia técnica e gerencial na avaliação TMM; Os membros do mesmo projeto a ser avaliado ou de outros projeto; Seleção e Treinamento Equipe - - - introdução aos modelos de melhoria de processo; Uma visão geral do TMM; Técnicas para entrevistar; Planejamento da avaliação; Análise de dados; Procedimento de Avaliação - - - Suporte para o perfil de desenvolvimento de teste e determinação de um nivel do TMM Guiar a organização em planos de ação para melhoria do processo de teste; Assegura que a avaliação esta sendo executada com a utilização eficiente dos recursos da organização; Procedimento de Avaliação - - - Preparação Conduzir a avaliação Reportar resultados da avaliação Análise dos resultados da avaliação Planejamento de Ação Implementar Melhorias Questionário Satisfeito = yes Insatisfeito=no Questionário % de respostas = “SIM” Classificação da satisfação do objetivo secundário Grau de satisfação > 90 Satisfeito Muito Alto 71 - 90 Satisfeito Alto 51 - 70 Satisfeito Medio 30 - 50 Não Satisfeito Baixo < 30 Não Satisfeito Muito Baixo Modelo de Avaliação Referência Burnstein, 2002] Burnstein I.; Pratical Software Testing; 2002 [Salviano, 2003] Salviano, Uma Metodologia para testes de software no contexto da melhoria do processo, 2003. [Sommerville, 2003] Sommerville, I. Engenharia de Software. 6 ª ed. São Paulo, Addison Wesley, 2003 Universidade Federal de Pernambuco Tópicos Avançados em Engenharia de Software 3 TMM Modelo de Maturidade para Teste José Diogenes Rodrigues Accioly [email protected]