'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software...

34
Métricas de Software Vantagem de utilizar métricas de software Entendimento imediato Descobrimento e correção de problemas potenciais, antes que se transformem em erros catastróficos. Departamento de Informática 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25

Transcript of 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software...

Page 1: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas de Software

� Vantagem de utilizar métricas de software– Entendimento imediato– Descobrimento e correção de problemas

potenciais, antes que se transformem em erros catastróficos.

Departamento de Informática

'ET��1¬XVMGEW�HI�4VSGIWWS�I�4VSNIXS - 25

Page 2: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Razões para se medir o software

� Indicar a qualidade do produto;� Avaliar a produtividade dos que desenvolvem o

produto;produto;� Determinar os benefícios derivados de novos

métodos e ferramentas de engenharia de software;� Formar uma base para as estimativas;� Ajudar na justificativa de aquisição de novas

ferramentas ou de treinamentos adicionais;

Departamento de Informática

Page 3: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Desafios das Métricas Técnicas

� Desenvolver uma métrica única.� Dezenas de medidas de complexibilidade

foram propostas.

Departamento de Informática

Page 4: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas de Software

� Medidas diretas� Medidas indiretas

Departamento de Informática

Page 5: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Medidas Diretas

� Custo� Esforço� Linhas de Código� Velocidade de execução� Memória� Número de erros� Complexidade ciclomática

Departamento de Informática

Page 6: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Medidas indiretas

� Funcionalidade� Qualidade� Complexidade� Eficiência� Confiabilidade� Manutenibilidade

Departamento de Informática

Page 7: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Medidas, Métricas e Indicadores

� Medidas – fornece uma indicação de quantidade

� Medição – ato de determinar uma medida� Medição ato de determinar uma medida

� Métrica – medida quantitativa do grau que um sistema possui um determinado atributo

� Indicadores – é uma métrica ou uma combinação de métricasque fornece profundidade na visão do processo de software.

Departamento de Informática

Page 8: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Classificação das medições

� Métricas orientadas ao tamanho, baseadas nas medições diretas da Engenharia de Software;Mé i i d à f ã f� Métricas orientadas à função, que oferecem medidas indiretas;

� Métricas orientadas às pessoas, as quais dão indicações sobre a forma como as pessoas desenvolvem os programas de computador.

Departamento de Informática

Page 9: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas Orientadas ao Tamanho

� Contagem de linhas de código

Departamento de Informática

Page 10: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas Orientadas à Função

� Concentra-se na funcionalidade do software.� Técnica de avaliação conhecida como

Pontos por Função

Departamento de Informática

Page 11: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Pontos por Função

� Baseada na visão de negócio do usuário;� É independente da linguagem;� Auxilia o usuário final a melhorar o exame e

avaliação de projetos.

Departamento de Informática

Page 12: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Pontos por Função

� Objetivos– Medir o que foi requisitado e recebido pelo

á iusuário;– Prover uma métrica de medição para apoiar a

análise de produtividade e qualidade;– Prover uma forma de estimar o tamanho do

software;– Prover um fator de normalização para

comparação de software.

Departamento de Informática

Page 13: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

� Dados utilizados:– Número de entradas externas– Número de saídas externas– Número de consultas externas– Número de arquivos lógicos internos– Número de arquivos de interface externa

Departamento de Informática

Page 14: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

Departamento de Informática

Page 15: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

� Para calcular os pontos por função, arelação é usada:

Departamento de Informática

Page 16: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

� O Fi (i = 1 a 14) são fatores de ajuste devalor, baseados nas respostas às seguintes

tperguntas:

Departamento de Informática

Page 17: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

1. O sistema requer salvamento e recuperação?2. Comunicações de dados especializadas são

necessárias para transferir informação para ou danecessárias para transferir informação para ou da aplicação?

3. Existem funções de processamento distribuído?4. O desempenho é crítico?5. O sistema será executado em um ambiente

operacional existente, intensamente utilizado?

Departamento de Informática

Page 18: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

6. O sistema requer entrada de dados on-line?7. A entrada de dados online exige que a transação

de entrada seja construída por meio de várias telas de entrada seja construída por meio de várias telas ou operações?

8. Os “Arquivos Lógicos Internos” são atualizados on-line?

9. As entradas, saídas, arquivos ou consultas são complexos?

10. O processamento interno é complexo?

Departamento de Informática

Page 19: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

11. O código é projetado para ser reusado?12. A conversão e a instalação estão incluídas

no projeto?13. O sistema está projetado para instalações

múltiplas em diferentes organizações?14. A aplicação está projetada para facilitar

modificações o uso do usuário?

Departamento de Informática

Page 20: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

� Cada pergunta é respondida usando umaescala que varia entre 0 (não importante ou

li á l) 5 ( b l t t i l)aplicável) e 5 (absolutamente essencial).

Departamento de Informática

Page 21: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

Departamento de Informática

Page 22: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

Departamento de Informática

Page 23: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de análise

� 60 linha de código (linguagem OO)� 12 FPs são produzidos para cada pessoa-

mês de esforço

Departamento de Informática

Page 24: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de projeto

� Métricas de projeto arquitetural– Arquitetura do programa

� Estrutura arquitetural� Efetividade dos módulos ou componentes dentro da

arquitetura

Departamento de Informática

Page 25: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de projeto

Departamento de Informática

Page 26: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas para modelo de projeto

� Tamanho = n + a = 17 + 18 = 35

P f did d 4� Profundidade = 4

� Largura = 6 (máximo número de nós em qualquer nível da arquitetura

� Razão arco/nó: r = a / n = 18 / 17 = 1,06

Departamento de Informática

Page 27: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas de código-fonte

� n1 = número de operadores distintos queaparece em um programa

� n2 = número de operandos distintos que aparece em um programa

� N1 = número total de ocorrências de operador

� N2 = número total de ocorrências de operando

Departamento de Informática

Page 28: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas de código-fonte

� Tamanho total do programa� Volume potencial mínimo de um algoritmo� Volume real� Nível do programa� Nível da linguagem� Esforço de desenvolvimento� Número projetado de falhas do software

Departamento de Informática

Page 29: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas de código-fonte

� Tamanho de N pode ser estimado

� O volume do programa pode ser definido

Departamento de Informática

Page 30: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métricas de código-fonte

� A razão de volume pode ser expressa como:

� L deve ser sempre menor que 1.

Departamento de Informática

Page 31: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métrica para Teste

a)

b)

� Onde: V é referente as definições do volume do programa e PL ao nível de programa.

Departamento de Informática

Page 32: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métrica para Teste

c)

� Em que e(k) é calculado para o módulo k usando as Equações (a, b) e o somatório no denominador da Equação c) é a somatória do esforço da ciência de software ao longo de todos os módulos do sistema.

Departamento de Informática

Page 33: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métrica de manutenção

� O índice de maturidade de software écalculado da seguinte maneira:

� Onde: MT = número de módulos na versão corrente� Fc = número de módulos na versão corrente que foram

modificados� Fa = número de módulos na versão corrente que foram

adicionados� Fd = número de módulos na versão anterior que foram

descartados na versão corrente

Departamento de Informática

Page 34: 'ET 1¬XVMGEW HI 4VSGIWWS I 4VSNIXS - 25 Métricas de Software€¦ · Métricas de Software Vantagem de utilizar métricas de software – Entendimento imediato – Descobrimento

Métrica de manutenção

� A medida que SMI se aproxima de 1,0, oproduto começa a se estabilizar.

Departamento de Informática