Engenharia de Software Métricas de Software Márcio Campos - [email protected].
-
Upload
aurelio-canedo-gomes -
Category
Documents
-
view
215 -
download
2
Transcript of Engenharia de Software Métricas de Software Márcio Campos - [email protected].
![Page 2: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/2.jpg)
Motivação
Métrica é fundamental para qualquer disciplina de engenharia.
A métrica possibilita uma avaliação objetiva e matemática para a avaliação de software.
Métricas podem ser de controle ou preditivas.
![Page 3: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/3.jpg)
Medição, Métrica e Indicador
Medição.É o ato de se determinar a medida.
Métrica ou medidaCorrelaciona duas medidas de alguma forma ou com algum padrão.Prove uma indicação quantitativa da extensão, volume, dimensão,
capacidade ou tamanho de algum atributo de um produto ou de um processo.
Indicador.É uma combinação de métrica ou de medições que provê algum
conhecimento sobre o processo, o produto ou sobre o projeto.
![Page 4: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/4.jpg)
Aplicação
Métrica podem ser aplicadas tanto para a avaliação do processo ou projeto quanto para a avaliação do produto.
Métricas podem ser aplicadas para estimativas, produtividade, controle de qualidade.
Possibilitam a criação de modelos em que são estabelecidos critérios para avaliação da qualidade.
![Page 5: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/5.jpg)
Tipos de Medição
Diretas ou primitivasDe processo: custo e esforço.De produto: linhas de código, velocidade de execução.
Indiretas ou derivadasFuncionalidade, complexidade, eficiência etc.
![Page 6: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/6.jpg)
Característica da métrica
Internasdizem respeito aos atributos internos ao software tais como
manutenibilidade.
Externasdizem respeito ao atributos externos, vistos pelos usuários finais
![Page 7: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/7.jpg)
Processo de medição
Escolhas as medições a serem feitasSelecione os componentes a serem avaliadosMeça estes componentes.Identifique as características anômalas.Analise os componentes anômalos.
![Page 8: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/8.jpg)
Métricas de Software
Métricas de produto
![Page 9: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/9.jpg)
Linhas de código
Forma direta de se medir códigoControvérsias
Vantagem: facilidade de medição.Desvantagens:
Dependentes da linguagem de programação.Penaliza programas bem estruturados e projetados.Para o uso de estimativas deve-se entrar em um nível de detalhe
muito grande.O que é uma linha de código?
![Page 10: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/10.jpg)
Lines of Code (LOC)/Direta
Projeto Esforço $
(x100)
KLOC DOC Errosapós 1
ano
Pessoas/ mes
1 30 170 13,7 300 29 3
2 50 540 31,4 1300 92 9
3 35 330 20,6 2000 60 6
Produtividade = KLOC/(Pessoas/mes)Qualidade = Defeitos/KLOC Custo = $/KLOC
![Page 11: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/11.jpg)
Comparação
Projeto Produtividade Qualidade Custo
1 4,57KLOC/PM
2,12erros/KLOC
12,41$/KLOC
2 3,45KLOC/PM
2,93erros/KLOC
17,20$/KLOC
3 3,43KLOC/PM
2,91erros/KLOC
16,02$/KLOC
![Page 12: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/12.jpg)
Análise de Pontos por Função/indireta
Concentra-se na funcionalidade ou utilidade dos sistemas.
Baseados em:Entradas do usuário (telas).Saídas do usuário (telas e relatórios)Consultas (telas).Arquivos.Arquivos de Interface.
![Page 13: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/13.jpg)
Pontos por Função Não Ajustados, Cálculo
Funções Pesos(simples,médio, complexo)
Totais
Entradas __x 3 __x 4 __x 6
Saídas __x 4 __x 5 __x 7
Consultas __x 3 __x 4 __x 6
Arquivos __x 7 __x 10 __x 15
Interfaces __x 5 __x 7 __x 10
Total PF não ajustado (PF)
![Page 14: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/14.jpg)
Pontos por Função/indireta
Projeto Esforço $
(x100)
PF DOC Errosapós 1
ano
Pessoas/ mes
1 30 170 50 300 29 3
2 50 540 100 1300 92 9
3 35 330 70 2000 60 6
Produtividade = PF/(Pessoas/mes)Qualidade = Defeitos/PF Custo = $/PF
![Page 15: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/15.jpg)
ComparaçãoProjeto Produtividade Qualidade Custo
1 16,7 PF/PM 0,58 erros/PF 340 $/PF
2 11,1 PF/PM 0,05 erros/PF 54 $/PF
3 11,6 PF/PM 0,85 erros/PF 471 $/PF
![Page 16: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/16.jpg)
Ajuste dos Pontos de Função São considerados 14 itens (graus de
influência), dentre os quais: Necessidade de backup, Comunicação de dados Processamento distribuído, Desempenho crítico. Entrada de dado on-line, Reutilização de código.
São avaliados atribuindo-se um valor de 0 a 5 a cada um dos ítens (ajuste)
![Page 17: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/17.jpg)
Ajuste dos Pontos de Função (II) PFA = PF x (0,65 + (0,01 x ajuste)) Os graus de influência afetam em +/- 35% do
tamanho do sistema. Produtividade = PF/PM. Qualidade = PF rejeitados/PF aceitos. Custo = $ / PF.
![Page 18: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/18.jpg)
Características
Vantagensindependente da linguagem.considera a tecnologia como fator de influência no
tamanho do sistema
Desvantagensaplicado somente a sistemas de informação.não considera sistemas multimídia, hipertexto,
orientado a objeto.só a partir de uma definição completa do sistema
que se tem a real idéia do seu tamanho
![Page 19: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/19.jpg)
PF e LOCLinguagens de Programação LOC/PF
Assembly 320
Visual Basic 32
SQL 12
Pascal 90
ADA 70
OO 30
L4G 20
![Page 20: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/20.jpg)
Análise de Pontos por Caso de Uso
Baseia-se na medição dos casos de uso de uma aplicação.Consiste na medição de:
atores (Unadjusted actor weight): baseado no tipo de ator.casos de uso (unadjusted use case weight): baseado no número
de transações de um caso de uso.Unadjusted use case points = UAW e UUCWConsidera-se dois tipos de ajustes: técnicos e de ambiente
technical complexity factor (13 fatores) = 0.6 + (0.1 x Tfactor)environmental complexity factor (8fatores) = 1.4 + (-0.03 x
Efactor)use case points = UUCP x TCF x ECF
![Page 21: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/21.jpg)
Análise de Pontos por caso de uso
Modelo geral da Análise de Pontos por Caso de Uso
![Page 22: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/22.jpg)
Outras métricas de produto
Correção.Defeitos/KLOC
Manutenibilidade.Tempo médio de mudança.
Usabilidade.Habilidades intelectuais e operacionais necessárias.Tempo necessário para se tornar eficiente.Aumento de produtividade associado.Avaliação subjetiva.
![Page 23: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/23.jpg)
Métricas de Software
Métricas de projeto
![Page 24: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/24.jpg)
Métricas de projetos interativos
Indicadores de gerenciamentoprogresso: trabalho e progressodespesa: orçamento e despesasrotatividade: alocação e rotatividade da equipe
Indicadores de qualidadeestablidade: fluxo de mudanças e estabilidademodularidade: fragmentação e modularidadeadaptabilidade: retrabalho e adaptabilidadematuridade: tempo médio entre falhas e maturidade
![Page 25: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/25.jpg)
Métricas de Software
Métricas de Processo
![Page 26: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/26.jpg)
Métricas de Processo
Tempo gasto para um processo em particular ser concluído.
Recursos requeridos para um processo particularNúmero de ocorrências de um evento em
particular.
![Page 27: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/27.jpg)
Métricas de processo
Estabelecendo uma referência.Um conjunto de métricas.Considerando...
Relativa acurácia das informações.Obtida de vários projetos.As métricas devem ser consistentes.As aplicações devem ser similares (mesmo domínio).
![Page 28: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/28.jpg)
Métricas de Software
Goal, Question & Metrichttp://www.gqm.nl/
https://www.goldpractices.com/practices/gqm/
![Page 29: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/29.jpg)
O modelo
https://www.goldpractices.com/practices/gqm/
![Page 30: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/30.jpg)
https://www.goldpractices.com/practices/gqm/
![Page 31: Engenharia de Software Métricas de Software Márcio Campos - camposmf@gmail.com.](https://reader031.fdocument.pub/reader031/viewer/2022013013/570638531a28abb8238f9cf2/html5/thumbnails/31.jpg)
Sumário
Métricas são importantes para a construção de sólidos princípios pautados por modelos confiáveis e decisões isentas.
Pode-se medir o produto, o processo o projeto.Deve-se estabelecer modelos de qualidade pautados em
indicadores consistentes.Deve-se praticar a medição a partir de modelos e de processos de
medição estabelecidos como o GQM e ami.