Métricas: Importância e Características

Para o engenheiro americano Tom DeMarcos “Você não pode controlar o que você não pode medir", pois "Uma métrica é uma indicação mensurável de algum aspecto quantitativo de um sistema".
A relevância dos pensamentos de DeMarcos pode ser compreendida quando aplicamos eles no contexto do desenvolvimento de software. Afinal, na construção de uma aplicação é de suma importância saber mensurar não apenas o desempenho do produto, mas também os custos e prazos necessários para o seu desenvolvimento. Através dessas métricas é possível embasar decisões e antever características importantes relacionadas a qualidade do produto em todas as etapas de sua confecção.
No contexto do desenvolvimento de software é possível dizer que existem três gêneros de métricas, são eles:
  • Métricas de projeto permitem compreender o projeto que será desenvolvido. Exemplo: Custos;
  • Métricas de produto ajudam a prever características de qualidade do produto. Exemplo: Número de linhas de código;
  • Métricas de processos estão relacionadas a produtividade, são indicadores que auxiliam na melhoria do processo e do ambiente de desenvolvimento de uma iteração para outra, de um projeto para outro. Exemplo: Tempo de implementação das funcionalidade.
As métricas de software também podem ser categorizadas da seguinte forma:
  • Métricas diretas são obtidas a partir de atributos contáveis. Exemplo: número de linhas de códigos;
  • Métricas indiretas são obtidas a partir de outra métricas, pois seus atributos são incontáveis. Exemplo: facilidade de manutenção;
  • Métricas orientadas ao tamanho são medidas diretas do tamanho dos artefatos de software associados ao processo por meio do qual o software for desenvolvido. Exemplo: número de páginas da documentação;
  • Métricas orientadas por função: método para medição de software do ponto de vista do usuário, determinando de forma consistente o tamanho e a complexidade de um software. Exemplo: medida do número de funções desenvolvidas/entregues em um determinado período de tempo (mês), utilizando a equipe disponível;
  • Métricas de produtividade: Concentram-se nas características do produto e não no processo de desenvolvimento. Exemplo: horas necessárias para desenvolver parte do sistema;
  • Métricas de qualidade: Concentram-se na saída do processo de engenharia de software. Exemplo: erros/casos de uso;
  • Métricas técnicas: Concentram-se nas características do produto e não no processo de desenvolvimento. Exemplo: complexidade lógica e grau de manutenibilidade.

FONTE: 
  • Slides do Profa. Dra. Debora Maria Coelho Nascimento. 2019.
  • Slides da Profa. Dra. Elisa H. M. Huzita. 2006.
  • Slide do Profa. Dr. Fábio Levy Siqueira. 2018.

Comentários

Postagens mais visitadas deste blog

Metodologia Ágil - O Manifesto Ágil