Elaboração de Planos de Medição para Apoiar a Melhoria Reinaldo Cabral [email protected] Objetivos de Aprendizagem Ao final, todos devem estar aptos: Elaborar um plano de medição para sua unidade organizacional Executar o plano de medição Interpretar os resultados a partir das medições realizadas Roteiro 1. Notas Introdutórias 2. Uso do GQM na Elaboração do Plano de Medição: Planejamento Definição Coleta de Dados Interpretação e Análise 3. Medição e Análise no CMMI 1. Notas Introdutórias Medição Recursos Ambiente Processos Mensura Produtos Organização Armazena Analisa e Interpreta Repositório de Medidas 1. Notas Introdutórias Métrica Medida Unidade de medida Escala Medição Produtos Desempenho Taxa de defeitos Processos Tempo de execução Número de inadequações Recursos Disponibilidade da infraestrutura Taxa de utilização dos recursos Experiência da equipe (Fenton e Pfleeger, 1997) 1. Notas Introdutórias Métrica Medida Unidade de medida Escala Medição Valor coletado automaticamente ou manualmente a partir da entidade que está sendo caracterizada 1. Notas Introdutórias Métrica Medida Unidade de medida Escala Medição Agrega informação à medida. Ex.: cm, metros, minutos, 1. Notas Introdutórias Métrica Medida Unidade de medida Escala Medição Nominal Ordinal Intervalo Racional 1. Notas Introdutórias Métrica Medida Unidade de medida Escala Medição Ato de coletar e registrar medidas. Ex.: Contagem e registro de discrepâncias encontradas em um documento de requisitos; Extração do tempo total investido em uma determinada atividade, etc 1. Notas Introdutórias GQM Paradigm Origem: Nasa – 1994, Basili e Rombach Objetivo Alcançado Objetivo Questão Definição Resposta Métrica Medição Coleta de Dados Coleta de Dados Planejamento Interpretação 2. Uso do GQM - Planejamento Objetivo Alcançado Objetivo Questão Definição Resposta Métrica Medição Coleta de Dados Coleta de Dados Planejamento Interpretação 2. Uso do GQM - Planejamento Objetivos Coletar todas as informações requeridas Preparar e motivar os participantes do programa de medição Definir objetivos, procedimentos e cronograma para o programa de medição 2. Uso do GQM - Planejamento Passo 2: Identificar a área para melhoria Deve-se considerar os objetivos de melhoria do negócio, geralmente, levando em conta fatores como custo, tempo, risco e qualidade. Alguns mecanismos de apoio: entrevistas, brainstorming e condução de avaliações preliminares. Após identificar a área deve-se descrever: O problema ou área de melhoria, processos e produtos envolvidos, influências (tecnológicas, ambientais, organizacionais e outras), pessoas envolvidas e relatar se estas pessoas possuem alguma experiência com medição e GQM. 2. Uso do GQM - Planejamento Passo 3: Selecionar o projeto e sua equipe No projeto, a equipe selecionada irá realizar as atividades de medição. Ela é responsável pelo programa de medição e seus resultados. Comprometimento, motivação e entusiasmos são fatores vitais para o sucesso no programa de medição. A equipe de projeto deve ter um canal de comunicação eficiente com a equipe GQM para discutir propostas para alterações no programa de medição. 2. Uso do GQM - Planejamento Passo 4: Criar o plano do projeto Deve conter: uma apresentação geral do plano, introdução, caracterização do plano, cronograma detalhado, organização, processo de gerenciamento, treinamento e atividades para divulgação dos resultados. Deve-se dar ênfase na análise custo-benefício e na lista dos marcos e datas limites associadas aos respectivos subprodutos que devem ser produzidos. A equipe do projeto deve participar e se comprometer com a execução do plano. 2. Uso do GQM - Planejamento Passo 5: Treinamento e divulgação Todos os participantes devem entender claramente a proposta, bem como seus benefícios, o investimento (esforço) e a necessidade de executar todas as atividades previstas. A pauta de treinamento aos participantes deve incluir: os princípios da medição, o paradigma e o método GQM. Entretanto, a ênfase deve ser em questões práticas relativas ao método, tais como: Que tarefas de medição executar? por que? Como e quando? Quanto esforço estas tarefas vão demandar? Qual a influência delas nas minhas atividades diárias? O que se pode ganhar com isso? Qual o aprendizado a ser adquirido? 2. Uso do GQM - Planejamento Checklist 1. A equipe GQM foi selecionada e está instalada 2. Há recursos suficientes para a equipe GQM 3. Os objetivos de melhoria do negócio foram formulados e aprovados 4. A equipe do projeto foi estabelecida e apóia os objetivos de melhoria 5. A equipe do projeto tem ao menos 2% dos recursos reservados para o programa GQM 6. O plano do projeto está disponível 7. Os procedimentos de comunicação estão definidos 8. O treinamento e a divulgação estão planejados e descritos 9. A gerência está comprometida e é informada regularmente 10. A gerência aprova o plano do projeto 2. Uso do GQM - Definição Objetivo Alcançado Objetivo Questão Definição Resposta Métrica Medição Coleta de Dados Coleta de Dados Planejamento Interpretação 2. Uso do GQM - Definição Objetivos Produzir o plano GQM Produzir o plano de medição Produzir o plano de análise 2. Uso do GQM - Definição Passo 1: Definir metas para medição As metas são derivadas a partir dos objetivos gerais do negócio, geralmente, relacionados a melhorias Todos os envolvidos devem participar e se comprometer com o programa. Modelo para auxiliar na definição das metas: Analisar: <objeto de estudo> com o propósito de <propósito> com relação aos seus <foco de qualidade> a partir do ponto de vista do <perspectiva> no contexto do <contexto> 2. Uso do GQM - Definição Neste modelo, proposto inicialmente por Basili, em 1994, temos: Analisar com o propósito de com relação aos seus Objeto de estudo Propósito Delimita um escopo para o experimento. Produtos, processos, recursos, modelos, métricas ou teorias. Define a intenção da meta. Caracterizar, controlar ou melhorar o objeto de estudo. Foco da qualidade Qual o foco da qualidade que vai ser dado ao objeto de estudo. Efetividade, custo, confiabilidade etc. Ponto de vista a partir do ponto de vista do Perspectiva a partir da qual os resultados do experimento são interpretados. Pesquisador, usuário, etc. no contexto do Contexto Descrição do ambiente relativo a caracterização dos objetos e dos sujeitos. A caracterização também pode ser feita de forma quantitativa [Wohlin00]. Auxilia na delimitação do escopo da validade do experimento 2. Uso do GQM - Definição 7 questões para apoiar na definição das metas O Quais são os objetivos estratégicos do negócio? Quais forças tem impacto sobre seus objetivos estratégicos? Como podemos melhorar seu desempenho? Quais são as maiores preocupações (problemas)? Quais são as metas de melhorias? Como podemos atingir estas metas? Quais são as possíveis metas de medição e quais as prioridades? resultado deste primeiro passo é a lista de especificações das metas de medição GQM 2. Uso do GQM - Definição Passo 2: Revisar ou produzir o modelo de processo de software ou produto É necessário revisar o modelo para que ele possa suportar as atividades de medição Caso ele não exista o grupo GQM deve cria-lo O modelo não deve ser modificado para se tornar o ideal, mas deve representar fielmente o estado da prática atual. Revisões formais, brainstorming, entrevistas estruturadas, apresentações e outros mecanismos, podem auxiliar nesta atividade. 2. Uso do GQM - Definição Passo 3: Conduzir entrevistas GQM O objetivo das entrevistas é tornar o conhecimento tácito em torno da atividade de medição em conhecimento explícito para todos os integrantes da equipe de projeto. Entrevistas individuais são mais indicadas, pois ajudam a anular fatores que podem influenciar a opinião do entrevistado. Uso de abstraction sheets 2. Uso do GQM - Definição Passo 4: Definir questões e hipóteses Questões são um refinamento das metas para um nível mais operacional. O nível de abstração das questões deve ser equilibrado para facilitar tanto a interpretação dos dados quanto relacioná-los com as metas. Deve ser levantada quais as expectativas das respostas para cada questão. Isto induzirá uma reflexão em prol do entendimento do processo/produto a ser mensurado. 2. Uso do GQM - Definição Passo 5: Revisar questões e hipóteses Verificar se as questões estão corretas. Verificar se as questões estão claras e bem definidas de modo a facilitar o processo de interpretação e análise e evitar erros ou interpretações equivocadas. 2. Uso do GQM - Definição Passo 6: Definir as métricas As métricas são definidas para prover informação quantitativa que permita responder as questões de forma satisfatória. Fatores que podem influenciar os resultados das métricas devem ser identificados Estes fatores, usualmente, também são definidos como métricas 2. Uso do GQM - Definição Passo 7: Checar a completude e consistência das métricas As métricas devem estar consistentes e completas com relação ao modelo do objeto sob medição. Esta verificação deve ser realizada durante toda a fase de definição A métrica é possível de ser extraída? Em que momento do processo? 2. Uso do GQM - Definição Passo 8: Produzir o plano GQM O plano descreve o refinamento de metas para questões e de questões para métricas. Serve como um guia para interpretação dos dados. Serve de base para elaboração do plano de medição e o plano de análise. Também é base da definição dos procedimentos de coleta de dados e do sistema de suporte à medição. 2. Uso do GQM - Definição Passo 9: Produzir o plano de medição Com base no plano GQM, o plano de medição contempla: Definições formais e descrição textual das medições diretas; define todos os possíveis resultados; identifica as pessoas responsáveis pelas coletas; em que momento as coletas irão ser realizadas; define e descreve os meios (formulários ou ferramentas) utilizado para realizar a coleta. 2. Uso do GQM - Definição Passo 10: Produzir o plano de análise Simula a interpretação dos dados de acordo com o plano GQM. Fornece uma indicação da forma dos dados que serão encaminhados para a equipe do projeto. É criado a partir da baseline de hipóteses. Contém gráficos e tabelas que validam as hipóteses e a descrição de como os fatores de variação são considerados nos resultados, assim é possível estimar o impacto de cada fator durante a interpretação. 2. Uso do GQM - Definição Passo 11: Revisar os planos Além de garantir a sintonia entre os planos, a revisão deve: Obter a aprovação dos membros do projeto a respeito das metas, questões e métricas definidas Incentivar a identificação da ausência ou não necessidade de alguma definição. Obter a aprovação da definição do material de feedback proposto. 2. Uso do GQM – Definição Checklist 1. As metas GQM estão definidas 2. A equipe do projeto adotou as metas GQM 3. Os modelos de processo que identificam as medições estão disponíveis 4. As questões GQM estão disponíveis e consistentes com as metas 5. As métricas GQM estão disponíveis e consistentes com as questões 6. As métricas GQM estão verificadas e consistentes com o modelo do processo 7. O plano GQM está disponível 8. O plano de medição está disponível 9. O plano de análise está disponível 2. Uso do GQM – Coleta de dados Objetivo Alcançado Objetivo Questão Definição Resposta Métrica Medição Coleta de Dados Coleta de Dados Planejamento Interpretação 2. Uso do GQM – Coleta de dados Objetivos Garantir que todos os procedimentos definidos para a coleta serão utilizados pela equipe do projeto Garantir que a equipe de projeto possui acesso aos instrumentos utilizados para a coleta e que está devidamente preparada para utilizá-los. Realizar a coleta dos dados propriamente dita Validar a medição e armazenar os dados coletados adequadamente. Esta fase é orientada pelo plano de medição 2. Uso do GQM – Coleta de Dados Procedimentos de coleta de dados Deve-se localizar no plano de medição Quem, quando, como coletar o dado e para quem deve ser enviado. Meios de coleta Formulários manuais, formulários eletrônicos e ferramentas automatizadas. Restrições Geralmente os dados mais valiosos vem de pessoas não de ferramenta Dados coletados manualmente podem ser suficientes para responder uma questão Todos os procedimentos devem estas documentados, disponíveis e ser do conhecimento de todos. 2. Uso do GQM – Coleta de Dados Treinamento e início da coleta dos dados A equipe GQM deve desenvolver em paralelo um sistema de suporte à medição, que será a base para a fase de interpretação. Inicialmente pode ser feito um ensaio de coleta com pessoas experientes para identificação de potenciais melhorias antes do início do processo de coleta propriamente dito. Uma sessão Kick-off deve ser realizada para ratificar o comprometimento com as atividades e procedimentos de coleta de dados. 2. Uso do GQM – Coleta de Dados A equipe GQM deve monitorar o uso de procedimentos, ferramentas e formulários, checando a consistência e a corretude, pois pequenos problemas tendem a ganhar escala durante a coleta de dados. Estes devem ser corrigidos imediatamente após sua identificação. 2. Uso do GQM – Coleta de Dados Construção do sistema de suporte à medição Deve contemplar: A coleta, o armazenamento, a manutenção e o processamento dos dados. Bem como a formatação e o empacotamento dos dados para uso nas fase de interpretação e/ou para divulgação dos dados. Flexibilidade e acessibilidade são características importantes O sistema é baseado no plano GQM Constituído por um banco de métricas, analysis sheet (dados brutos, processados e formatados em forma de gráficos e tabelas), ferramentas para elaboração de apresentações e um mecanismo de distribuição. 2. Uso do GQM – Coleta de dados 1. 2. 3. 4. 5. 6. Checklist Ferramentas e formulários estão disponíveis O período de ensaio foi organizado Ferramentas e formulários estão atualizados A sessão kick-off de medição foi organizada A base de métricas do sistema de suporte à medição está disponível Analysis sheet do sistema de suporte à medição está em conformidade com o plano GQM e o plano de análise 7. Slides de apresentação do sistema de suporte à medição estão criados 8. Os formulários de coleta de dados estão completamente e corretamente preenchidos 9. A medição validade está armazenada na base de métricas do sistema de suporte à medição 2. Uso do GQM – Interpretação Objetivo Alcançado Objetivo Questão Definição Resposta Métrica Medição Coleta de Dados Coleta de Dados Planejamento Interpretação 2. Uso do GQM – Interpretação Objetivos Encontrar respostas para as questões estabelecidas no programa de medição (sessões de feedback) Reportar a alta gerência, em detalhes, os resultados do programa Realizar uma análise de custo-benefício 2. Uso do GQM – Interpretação Passo 1: Preparação da sessão de feedback Preparar os dados coletados para possibilitar apresentação e interpretação Procedimentos: Atualizar analysis sheet no sistema de suporte a medição Criar material adicional para sessão de feedback Atualizar os slides de apresentação Revisar slides de apresentação Salvar cópias de slides e base de métricas (manter versões para uso futuro) Criar e distribuir amostras 2. Uso do GQM – Interpretação Passo 2: Organizar a sessão de feedback Características gerais Duração: 1,5 a 2h, máximo 3h, Durante 6 a 8 semanas. 15 a 20 slides para discussão por sessão contendo gráficos e tabelas. A equipe do projeto é que executa a sessão. O papel da equipe GQM é instigar a equipe do projeto a refletir sobre os dados e tomar notas sobre o andamento de cada sessão. 2. Uso do GQM – Interpretação Passo 3: Relatar interpretações e resultados da medição A equipe GQM relata em detalhes todas as observações, interpretações, conclusões e ações pontuais relevantes que foram formuladas durante as sessões. Os resultados do programa devem ficar documentados, facilmente acessíveis e compreensíveis Divulgar os resultados para fomentar a criação da consciência organizacional relacionada a programas de medição 2. Uso do GQM – Interpretação Passo 4: Realizar a análise custo-benefício do programa de medição Os benefícios estimados superaram os custos Custos típicos: tempo investido na preparação, em reuniões, no preenchimento de formulários e no desenvolvimento do sistema de suporte à medição; recursos materiais; recursos humanos. Benefícios típicos: aumento das vendas, economia de tempo e esforço e melhoria no gerenciamento dos recursos. Esta atividade é de responsabilidade da equipe GQM. 2. Uso do GQM – Interpretação Checklist 1. O material de feedback está consistente com o plano GQM 2. Slides de apresentação estão corretos e atualizados 3. Uma amostra das apresentações são distribuídas para a equipe do projeto 4. Todos os membros da equipe GQM e de projeto foram convidados para as sessões de feedback 5. Acomodações e equipamentos foram reservados 6. Os relatórios da sessão de feedback foram distribuídos entre os participantes 7. Os resultados da medição foram reportados 3.Medição e Análise no CMMI SG 1 Definir Atividades de Medição e Análise Estabelecer Objetivos da Medição Especificar Métricas SP 1.2 SP 1.1 Objetivos das Medições Especificar Procedimentos para Coleta de Dados e Armazenamento SP 1.3 Repositório das Medições Indicadores das Medições Especificar Procedimentos de Análise SP 1.4 Procedimentos, Ferramentas SG 2 Fornecer Resultados das Medições Comunicar Resultados SP 2.4 Armazenar Dados e Resultados SP 2.3 Analisar Dados das Medições SP 2.2 Coletar Dados das Medições SP 2.1 4. Verificação do Alcance dos Objetivos de Aprendizagem O que deve conter em um plano de medição? O que deve ser feito antes de executar o plano de medição? Como realizar a interpretação dos dados? 5.Referências (Wohlin, 2000) Wohlin, Claes “Experimentation in Software Enginneering - An introduction”, Kluwer Academic Publishers, Massachusetts, USA, 2000. (van Solingen e Berghout, 1999) Van Solingen, R., Berghout, E. “The Goal/Question/Metric Method, A pratical guide for Quality Improvement of Software Development”, McGraw Hill, Great Britain, Cambridge,1999 (Fenton e Pfleeger, 1997) Fenton, N., Pfleeger, S “Software Metrics a Rigorous & Pratical Approach”, 2nd Ed., PWS Publishing Company, 1997 (Basili e Rombach, 1994) Basili, V. e Rombach, H. “Goal Question Metric Paradigm”, Encyclopedia of Software Enginnering, v2, 1994. Elaboração de Planos de Medição para Apoiar a Melhoria Reinaldo Cabral [email protected]