190 likes | 744 Views
- GQM – Goal/Question/Metric. André Sandri Tópicos em Desenvolvimento de Software UNILASALLE – Canoas – RS Abril de 2006. "Não se pode controlar aquilo que não se consegue medir.“ Tom de Marco. Introdução.
E N D
- GQM – Goal/Question/Metric André Sandri Tópicos em Desenvolvimento de Software UNILASALLE – Canoas – RS Abril de 2006
"Não se pode controlar aquilo que não se consegue medir.“ Tom de Marco
Introdução • A idéia básica de GQM é derivar métricas de software a partir de perguntas e objetivos. • Este método foi originalmente criado por Victor Basili e Weis como resultado de experiências práticas e pesquisas acadêmicas.
Definindo um Programa de Métricas • O processo de definição de um programa de métricas deve ser baseado nas necessidades de informação de cada nível organizacional. • Isto é obtido a partir do levantamento de informações junto as áreas interessadas. • O paradigma do GQM foi proposto como uma abordagem orientada a objetivos para a medição de produtos e processos. • Essa metodologia baseia-se na premissa de que, para ganhar uma medida prática, deve-se primeiro entender e especificar os objetivos dos artefatos de software sendo medidos e os objetivos do processo de medição.
Significado de GQM • Goal • Quais são as metas/objetivos? • Question • Quais questões se deseja responder? • Metric • Quais métricas poderão ajudar?
GQM - Vantagens • Apóia a definição top-down do processo de medição e a análise bottom-up dos dados resultantes; • Ajuda na identificação de métricas úteis e relevantes; • Apóia a análise e interpretação dos dados coletados; • Permite uma avaliação da validade das conclusões tiradas; • Diminui a resistência das pessoas contra processos de medição.
GQM – Passos Básicos... • Listar os principais objetivos do processo de medição; • Derivar de cada objetivo as perguntas que devem ser respondidas para determinar se os objetivos foram atingidos; • Decidir o que precisa ser medido para ser capaz de responder as perguntas adequadamente (definição das métricas).
GQM – Hierarquia dos Passos • Os objetivos da medição são definidos em termos da entidade, propósito, atributos de qualidade, ponto de vista e ambiente • Cada objetivo é refinado em um conjunto de perguntas que representam uma definição operacional do objetivo • Para cada pergunta, as métricas relevantes são definidas.
Premissas para a medição • Prover resultados consistentes; • Permitir sua obtenção por não especialistas em informática; • Ser de fácil aprendizado; • Ser compreensível ao usuário final; • Servir para estimativas; • Permitir automatização; • Possibilitar obter séries históricas.
Exemplo • Problema • Durante a fase de testes muitos defeitos foram encontrados e suspeita-se de que a qualidade do software poderá não atingir um nível satisfatório na implantação (deadline). • Solução • Construir uma árvore GQM para auxiliar na tomada desta decisão.
Exemplo Decidir quando o software estará pronto para a implantação Quais são as métricas temporais? Qual é a atual confiabilidade? Qual é o requisito de estabilidade? Pessoas disponíveis por dia para testes Horas de utilização Horas de teste Tamanho de código Defeitos descobertos Casos de testes
GQM - Fases • Planejamento • Definição • Coleta de dados • Interpretação Além disso, a abordagem possui métodos para refinamento de objetivos, geração das questões, especificação das métricas, validação, análise, implantação do processo em uma organização, etc.
GQM - Problemas • A utilização de GQM é importante para que as métricas sejam úteis, simples e diretas. • Entretanto, as métricas não são definidas no nível de detalhes necessário para garantir confiabilidade. • Em particular, não é explicitado se as métricas podem ou não ser repetidas, ou seja, se a medição de um atributo for repetida por uma pessoa diferente, o mesmo resultado deve ser obtido. • Ex: linhas de código de um software.
GQM - Problemas • Há uma necessidade de se estabelecer um padrão de especificação de métricas que permita expressar uma métrica com detalhes suficientes para torná-la não ambígua e que ao mesmo tempo seja de fácil especificação. • No trabalho de Kitchenham é proposto um modelo que permite a modelagem e o armazenamento de métricas de software. • No trabalho de Ford, sugere-se que as métricas sejam categorizadas por tamanho, esforço e planejamento, qualidade, desempenho, confiabilidade e complexidade. Para cada uma destas categorias é proposto um conjunto de métricas que são agrupadas em classes de atributos relacionados ao software.
Integração GQM e QIM • QIM • Quality Improvement Paradigm • QIM será apresentado no próximo seminário! • As 6 etapas do processo GQM são semelhantes às 6 etapas do QIM (mesmo ciclo de atividades)!
Bibliografia • V. Basili, G. Caldiera. The Goal Question Metric Approach, 2002. • K. Souza, K. Oliveira, N. Anquetil. Uso do GQM para avaliar implantação de processo de manutenção de software, 2003. UCB, Brasília. • R. Paes, H. Almeida, Agentes e Métricas no Processo de Desenvolvimento de Software em Equipes Distribuídas. Abril 2005. PUC-RJ, UFCG-RJ. • Ford, G. Software Engineering Measures. Carnegie Mellon University, 1993. • Kitchenham, A., Hughes, T., Linkman, S. G. Modeling Software Measurement Data. 2001. • Bassman, J., McGarry, F., and Pajerski, R. Software measurement guidebook. National Aeronautics and Space Administration, 1995. • Bluemke. Object Oriented Metrics a Survey. Malta, 2000.
Muito obrigado! André Sandri www.sandri.cjb.net