Medição e Métricas de Software
Ricardo de Almeida Falbo
Tópicos Especiais – Qualidade de Software
2007/1
Departamento de Informática
Universidade Federal do Espírito Santo
Agenda








Por que medir?
Conceitos Básicos
Medição e Estimativas
Medição e Acompanhamento de Projetos
Medição e Qualidade
Problemas Relacionados à Medição
Tipos de Métricas de Software
Definição de Métricas: Método GQM
Tópicos Especiais - Qualidade de Software 2007/1
2
Por que medir?



Se não é possível medir, expressando em
números, apenas uma análise qualitativa (e,
portanto, subjetiva) pode ser feita (o que, na
maioria das vezes, é insuficiente).
Com medições, as tendências (boas ou más)
podem ser detectadas, melhores estimativas
podem ser feitas e melhorias reais podem ser
conseguidas.
Números permitem análises, comparações e
combinações que são impossíveis de fazer com
outros tipos de informação.
Tópicos Especiais - Qualidade de Software 2007/1
3
Conceitos Básicos - Qualidade




Característica de Qualidade: um conjunto de
atributos de uma entidade por meio do qual a
qualidade da mesma pode ser avaliada.
Atributo: uma propriedade mensurável, física ou
abstrata, de uma entidade.
Entidade: o que se deseja avaliar. No contexto
da QS, um produto, processo, recurso, projeto
etc.
Características de Qualidade

Sub-características
Tópicos Especiais - Qualidade de Software 2007/1
4
Exemplo 1


Entidade a ser avaliada: ferramenta CASE de
modelagem UML (p.ex., Jude)
Características de Qualidade:


Funcionalidade (adequabilidade)
Usabilidade




Eficiência




Facilidade para o aprendizado
Facilidade para a operação
Facilidade de compreender
Em termos de tempo
Em relação à utilização de recursos
Portabilidade
Questão: Como medir?
Tópicos Especiais - Qualidade de Software 2007/1
5
Conceitos Básicos - Medição




Medida
Medição
Métrica
Indicador
Tópicos Especiais - Qualidade de Software 2007/1
6
Medida e Medição



Medida: número ou categoria atribuído fornece
uma indicação quantitativa da extensão,
quantidade, dimensão, capacidade ou tamanho
de um atributo de uma entidade.
Quando os dados de um único ponto são
coletados, uma medida é estabelecida. Ex:
Quantidade de erros descobertos em uma
revisão.
Medição: é o ato de medir, isto é, de determinar
uma medida.
Tópicos Especiais - Qualidade de Software 2007/1
7
Métrica e Indicador


Métrica: procura correlacionar medidas
individuais com o objetivo de se ter uma idéia da
eficácia da entidade sendo medida.
Indicador: informação relacionada a uma
medida, métrica ou combinação de métricas que
pode ser utilizada para se ter uma compreensão
da entidade sendo medida.
Tópicos Especiais - Qualidade de Software 2007/1
8
Exemplo 2




Deseja-se saber se uma pessoa está com seu
peso ideal ou não. Para tal, duas medidas são
importantes: altura (H) e peso (P).
Ao medir essas dimensões, está-se efetuando
uma medição.
A métrica “índice de massa corporal (IMC)” é
calculada segundo a seguinte fórmula: IMC = P /
H2.
A partir dessa métrica, foram estabelecidos
indicadores que apontam se um adulto está
acima do peso, se está obeso ou abaixo do peso
ideal considerado saudável.
Tópicos Especiais - Qualidade de Software 2007/1
9
Exemplo 2

Indicadores da Organização Mundial de Saúde
Condição
IMC em adultos
abaixo do peso
abaixo de 18,5
no peso normal
entre 18,5 e 25
acima do peso
entre 25 e 30
obeso
acima de 30
Tópicos Especiais - Qualidade de Software 2007/1
10
Exemplo 2

Indicadores da National Health and Nutrition
Examination Survey
Condição
IMC em Mulheres
IMC em Homens
abaixo do peso
< 19,1
< 20,7
no peso normal
19,1 - 25,8
20,7 - 26,4
marginalmente acima do peso
25,8 - 27,3
26,4 - 27,8
acima do peso ideal
27,3 - 32,3
27,8 - 31,1
> 32,3
> 31,1
obeso
Tópicos Especiais - Qualidade de Software 2007/1
11
Exemplo 1

Funcionalidade

Adequabilidade

Cobertura da funcionalidade implementada - CFI
 Quão correta está a implementação funcional?
 CFI = 1 – NFNI / NFE
 NFNI: número de funções ausentes (não
implementadas) ou incorretamente
implementadas detectado na avaliação
 NFE: número de funções descritas na
especificação de requisitos
 Quanto CFI mais perto de 1.0, melhor.
 CFI < 0.8, descartar a possibilidade de adoção do
produto.
Tópicos Especiais - Qualidade de Software 2007/1
12
Medição e Estimativas



Base importante para estimativas: dados
históricos.
Mas só é possível chegar a boas estimativas com
base em dados históricos se os dados forem
coletados criteriosamente.
Portanto, quando se pretende utilizar dados de
projetos anteriores para estimar, dados de
métricas são muito importantes.
Tópicos Especiais - Qualidade de Software 2007/1
13
Medição e Acompanhamento de Projetos



Para acompanhar o andamento do projeto, é
preciso medir o progresso e comparar com o
estimado.
Medidas coletadas dão visibilidade ao estado do
projeto, permitindo verificar se o rumo está
correto e fornecendo a base para a tomada de
ações corretivas, quando necessário.
Métricas têm um importante papel na rápida
identificação e correção de problemas ao longo
do desenvolvimento do projeto. Com a sua
utilização, fica muito mais fácil justificar e
defender as decisões tomadas.
Tópicos Especiais - Qualidade de Software 2007/1
14
Medição e Qualidade

A única maneira de avaliar e melhorar a
qualidade de uma entidade é medir atributos
específicos dessa entidade, obter um conjunto
de métricas significativas baseadas nesses
atributos e usar os valores das métricas para
fornecer indicadores que nortearão um processo
de melhoria.
Tópicos Especiais - Qualidade de Software 2007/1
15
Medição e Avaliação da Qualidade






Definir características de qualidade relevantes para avaliar a
qualidade da entidade em questão.
Para cada característica de qualidade selecionada, definir subcaracterísticas de qualidade relevantes que tenham influência
sobre a mesma, estabelecendo uma maneira de computar a
característica a partir das sub-características.
Usar procedimento análogo ao anterior para as subcaracterísticas não passíveis de mensuração direta.
Para as sub-características diretamente mensuráveis, selecionar
métricas, coletar medidas e computar as métricas segundo a
fórmula estabelecida.
Fazer o caminho inverso, computando sub-características não
diretamente mensuráveis, até se chegar a um valor para a
característica de qualidade.
Comparar os valores obtidos com padrões estabelecidos para a
organização, de modo a se obter os indicadores da qualidade. A
partir dos indicadores, ações devem ser tomadas visando à
melhoria.
Tópicos Especiais - Qualidade de Software 2007/1
16
Medição e Melhoria de Processos



Coletar dados que meçam o desempenho de
cada processo.
Analisar o desempenho de cada processo.
Reter e utilizar os dados para:





Avaliar a estabilidade e a capacidade do processo;
Interpretar os resultados das observações e análises;
Traçar tendências;
Identificar oportunidades de melhorias
Ex.: Processo de Engenharia de Requisitos.
Tópicos Especiais - Qualidade de Software 2007/1
17
Problemas Relacionados à Medição



Procedimentos de Coleta de Dados: todo
trabalho de avaliação é colocado em risco se não
puder garantir-se a obtenção de dados
confiáveis.
Influência de Usuários, hardware etc.
Que métricas coletar?
Tópicos Especiais - Qualidade de Software 2007/1
18
Tipos de Métricas de Software





Métricas de projeto
Métricas de produto
Métricas de processo: coletadas ao longo de
todos os projetos.
Métricas de qualidade: ex.: métricas
relacionadas a defeitos
Normalização de Métricas:Medidas de Tamanho /
Função
Tópicos Especiais - Qualidade de Software 2007/1
19
Definição de Métricas: Método GQM


GQM - Goal-Question-Metric (Objetivo-QuestãoMétrica.
Passos:



Listar os objetivos da organização ou projeto.
A partir de cada objetivo, derivar questões que devem
ser respondidas para determinar se os objetivos foram
atingidos.
Decidir o que deve ser medido, de forma a ser capaz
de responder às questões de forma apropriada.
Tópicos Especiais - Qualidade de Software 2007/1
20
GQM - Exemplo


Objetivo: Melhorar a qualidade dos processos de
verificação e validação.
Questões:




Qual a quantidade de erros encontrados na revisão dos
artefatos?
Qual a quantidade de erros encontrados nos testes?
Qual a quantidade de erros detectados quando o
sistema já está em operação?
Métricas:



Defeitos encontrados nas revisões / PF
Defeitos encontrados nos testes / PF
Defeitos encontrados na operação / PF
Tópicos Especiais - Qualidade de Software 2007/1
21
Download

Aula2 - Informática - Universidade Federal do Espírito Santo