Métricas para estimativa de esforço em projetos de teste de software
Métricas de Software
-
Upload
elliando-dias -
Category
Technology
-
view
2.621 -
download
0
description
Transcript of Métricas de Software
Antonio Carlos Tonini
MÉTRICAS DE SOFTWAREMÉTRICAS DE SOFTWARE
Antonio Carlos ToniniAntonio Carlos Tonini
Maio / 2004Maio / 2004
Antonio Carlos Tonini
AGENDAAGENDA
PARTE IPARTE I
Conceitos de métricasConceitos de métricas Contexto de aplicaçãoContexto de aplicação Por que medir ?Por que medir ? Até onde medir ?Até onde medir ? Tipos de métricasTipos de métricas Processos de mediçãoProcessos de medição Métricas para o recurso tempoMétricas para o recurso tempo Métricas para o recurso custosMétricas para o recurso custos Métricas para o recurso pessoasMétricas para o recurso pessoas Métricas para o produtoMétricas para o produto
Antonio Carlos Tonini
AGENDAAGENDA
PARTE IIPARTE II
Métricas para o clienteMétricas para o cliente Métricas para o processoMétricas para o processo Métricas para a gestãoMétricas para a gestão Modelos da QualidadeModelos da Qualidade Finalizando....Finalizando....
Antonio Carlos Tonini
FundamentaçãoFundamentação
Processo de Processo de ADMINISTRARADMINISTRAR
ObjetivoObjetivoDecisãoDecisão AçãoAção
RecursosRecursos
Planejamento
Organização
Direção
Controle
MÉTRICAS
inferências
Antonio Carlos Tonini
ConceitoConceito
METRICASMETRICAS – inferências sobre os processos de – inferências sobre os processos de trabalho que traduzem:trabalho que traduzem:
METRICASMETRICAS
ESTIMATIVASESTIMATIVAS
DESEMPENHODESEMPENHO
• a prioria priori
• expectativasexpectativas
• a posterioria posteriori
• eficiênciaeficiência
• eficáciaeficácia
Antonio Carlos Tonini
Gestão de TIGestão de TI
Processo de desenvolvimentoProcesso de desenvolvimento
ProjetosProjetos
ConstruçãoConstrução GestãoGestão
GestãoGestãoSuporteSuporte
Processos de trabalho de TIProcessos de trabalho de TI
GESTÃOGESTÃO
RECURSOSRECURSOS
PRODUTOSPRODUTOS
CLIENTESCLIENTES
PROCESSOPROCESSO
Antonio Carlos Tonini
Recursos ProcessoProdutos (software)
Clientes Gestão
PossibilidadesPossibilidades
Métricas possíveis no desenvolvimento Métricas possíveis no desenvolvimento de sistemasde sistemas
Como estão sendo realizados os trabalhos de desenvolvimento de software
Como estão sendo utilizados os recursos disponíveis
Quanto mede e como está a qualidade dos produtos de software
Como está sendo feio a gestão do contexto de TI
Como está sendo recebido e percebido os trabalhos e os produtos
Antonio Carlos Tonini
Característas do trabalhoCaracterístas do trabalho
SoftwareSoftware ......parte mais visível de um sistema parte mais visível de um sistema constantes mudanças e reclamaçõesconstantes mudanças e reclamaçõesmais complexo que outros produtos mais complexo que outros produtos manufaturadosmanufaturadosinexistência de processo efetivo e inexistência de processo efetivo e consolidadoconsolidadoentrega para manufatura não segue entrega para manufatura não segue procedimentos da engenharia procedimentos da engenharia fundamentos não estáveisfundamentos não estáveissegue algumas regras das ciências naturais e segue algumas regras das ciências naturais e outras das ciências sociaisoutras das ciências sociais
Antonio Carlos Tonini
Por que medir ?Por que medir ?
obter obter auto-conhecimento auto-conhecimento (interna)(interna) atender a uma atender a uma pressãopressão imediata imediata (externa)(externa) preparar-se para o preparar-se para o futurofuturo ( (tendência)tendência)
Motivação
Antonio Carlos Tonini
Por que medir ?Por que medir ?
Obter auto conhecimento ?Obter auto conhecimento ?
Se Se nãonão sabemos onde estamos... sabemos onde estamos... NãoNão conseguimos ... conseguimos ...
... Saber para onde queremos ir... Saber para onde queremos ir ... Saber o que faremos... Saber o que faremos
1.1. Saber Saber o queo que temos, o que somos temos, o que somos
e e aondeaonde estamos estamos
Função: Função: ESTÁTICA ESTÁTICA POSICIONALPOSICIONAL
Visão Presente
Antonio Carlos Tonini
Por que medir ?Por que medir ?
ImediatoImediato para atender uma pressão de para atender uma pressão de momento momento
(por exemplo: ganhar uma concorrência)(por exemplo: ganhar uma concorrência)
2.2. Saber Saber o queo que fazer hoje fazer hoje e e para ondepara onde caminhar caminhar
Função: Função: DINÂMICADINÂMICA DIREÇÃODIREÇÃO
Se não ficaram as raizes, como será em um próximo projeto ?
Antonio Carlos Tonini
Por que medir ?Por que medir ?
Tendência de futuro Tendência de futuro para se preparar para se preparar para atender melhor no futuropara atender melhor no futuro
2.2. Saber Saber o queo que fazer hoje fazer hoje e e para ondepara onde caminhar e caminhar e como mudar de direçãocomo mudar de direção
Função: Função: DINÂMICADINÂMICA DIREÇÃODIREÇÃO ADAPTATIVAADAPTATIVA
Antonio Carlos Tonini
Por que medir ?Por que medir ?
RiscoRisco
Se Se nãonão conseguimos MEDIR... conseguimos MEDIR...NãoNão conseguimos ... conseguimos ...
... CONTROLAR... CONTROLAR ... GERENCIAR... GERENCIAR ... MELHORAR... MELHORAR ... TRABALHAR... TRABALHAR
Antonio Carlos Tonini
Até onde medir ?Até onde medir ?
AlinharAlinhar os objetivos das inferências os objetivos das inferências com os objetivos da empresacom os objetivos da empresa
Estabelecer um programa de Estabelecer um programa de métricas: métricas: adequadoadequado, , plausívelplausível, , factívelfactível e e gradualgradual
Não medir mais do que é necessárioNão medir mais do que é necessário
Antonio Carlos Tonini
Até onde medir ?Até onde medir ?
DefeitosDefeitos
Prazo de EntregaPrazo de Entrega
DesperdícioDesperdício
CustoCusto
Satisfação dos clienteSatisfação dos cliente
Produtividade dos Produtividade dos recursosrecursos
Visibilidade das açõesVisibilidade das ações
GerenciabilidadeGerenciabilidade
VantagensVantagens
Antonio Carlos Tonini
Por que medir ?Por que medir ?
Antonio Carlos Tonini
Tipos de métricasTipos de métricas
Métricas Métricas PrimáriasPrimárias (1a. Ordem): (1a. Ordem):
Apontamentos dos fatos (Apontamentos dos fatos (reaisreais) ) MEDIDASMEDIDAS
Informações Informações objetivasobjetivas da realidade da realidade
Exemplo: Exemplo: defeitos, horas trabalhadas, custo, defeitos, horas trabalhadas, custo, reclamações, ...reclamações, ...
Tendência à expressão numéricaTendência à expressão numérica
“O número, à medida que quantifica, é o princípio da ordem e da harmonia. A realidade é absolutamente objetiva e comensurável e o uso dos números para explicá-la evita o dissenso e a controvérsia.
(Pitágoras de Samos, 572?-510? a.c.)
Antonio Carlos Tonini
Tipos de métricasTipos de métricasMétricas Métricas SecundáriasSecundárias (2a. Ordem): (2a. Ordem):
IndicadoresIndicadores (expressam um comportamento além dos números) (expressam um comportamento além dos números)
Resultado de uma Resultado de uma relaçãorelação de: de:
÷÷
Exemplo: Exemplo: densidade de defeitos (defeitos por fase do projeto), ...densidade de defeitos (defeitos por fase do projeto), ...
Métrica Fator
Antonio Carlos Tonini
Tipos de MétricasTipos de Métricas Riscos – Riscos – Métricas primáriasMétricas primárias
processo de captura processo de captura credibilidadecredibilidade meio de captura meio de captura facilidade, entendimento, objetividadefacilidade, entendimento, objetividade independência do apontador independência do apontador confiabilidade confiabilidade
Riscos – Riscos – Métricas secundáriasMétricas secundárias
processo de tabulação processo de tabulação corretudecorretude processo de uso processo de uso utilidade, poder de explicação, relevânciautilidade, poder de explicação, relevância
Antonio Carlos Tonini
Tipos de MétricasTipos de Métricas
CRITÉRIOSCRITÉRIOS
PriorizaçãoPriorização: grade de : grade de importânciaimportância x x urgênciaurgência
Características Características intrínsecasintrínsecas: : natureza, comportamentonatureza, comportamento
Características Características extrínsecasextrínsecas: : relacionamento com o contexto da relacionamento com o contexto da mediçãomedição
Antonio Carlos Tonini
Tipos de métricasTipos de métricas
Quantitativa Quantitativa QualitativaQualitativa
Métricas primárias Métricas Métricas primárias Métricas secundáriassecundárias
Produtividade Produtividade QualidadeQualidade
Direta Direta IndiretaIndireta
Recursos ProcessoProdutos (software)
Clientes Gestão
Antonio Carlos Tonini
Tipos de MétricasTipos de Métricas
Medições operacionaisMedições operacionais
Processo { Projeto { AtividadesProcesso { Projeto { Atividades
Medições táticasMedições táticas
Tendências Impactos AtributosTendências Impactos Atributos
Medições estratégicasMedições estratégicas
Benchmarking Melhoria AvaliaçãoBenchmarking Melhoria Avaliação
contínua contínua econômicaeconômica
Objetiva o Processo e suas atividades Objetiva o Processo e suas atividades e os projetos e suas atividadese os projetos e suas atividades
Objetiva o ambiente de desenvolvimento, Objetiva o ambiente de desenvolvimento, mudanças, tendências ...mudanças, tendências ...
Objetiva comparações com outras Objetiva comparações com outras organizações, melhorias contínuas ...organizações, melhorias contínuas ...
Antonio Carlos Tonini
Processo de métricaProcesso de métrica
PerfeitoPerfeitoMonitoradoMonitoradoMedidoMedidoPraticadoPraticadoSeguidoSeguido
EnfatizadoEnfatizadoTreinadoTreinado
Ter apoioTer apoioTer donoTer dono
Antonio Carlos Tonini
Processos de mediçãoProcessos de medição
DefiniçãoDefinição
ColetaColeta
TabulaçãoTabulação
AvaliaçãoAvaliação
ComparaçãoComparação
Ciclo periódicoCiclo periódico
Produção dos Produção dos tipos de tipos de métricasmétricas
Produção Produção das das métricas métricas primáriasprimárias
Produção das Produção das métricas métricas secundáriassecundárias
Validação e Validação e verificação das verificação das métricas em simétricas em si
Validação e verificação Validação e verificação das métricas no das métricas no contextocontexto
Antonio Carlos Tonini
Tipos de métricasTipos de métricas
Recursos ProcessoProdutos (software)
Clientes Gestão
Antonio Carlos Tonini
Tipos de métricasTipos de métricas
Recursos TempoTempo
PessoasPessoas
CustoCusto
Antonio Carlos Tonini
Métricas para o tempoMétricas para o tempo Natureza do tempo:Natureza do tempo:
volatilidade, incontrolabilidade, perecibilidade volatilidade, incontrolabilidade, perecibilidade
Definição da unidade de medida:Definição da unidade de medida: normalmente HORAS normalmente HORAS
Distribuição do tempo:Distribuição do tempo:
TOTAL DISPONIBILIZADO
TOTAL APLICADO
PRODUTIVO
PROGRESSO MODIFICAÇÕES RETRABALHO IMPRODUTIVO PARADA
Antonio Carlos Tonini
Métricas para o tempoMétricas para o tempo
TOTAL DISPONIBILIZADO
TOTAL APLICADO
PRODUTIVO
PROGRESSO MODIFICAÇÕES RETRABALHO IMPRODUTIVO PARADA
Tempo total aplicado Tempo total aplicado ao(s) projeto(s)ao(s) projeto(s)
Tempo Tempo perdido ou perdido ou utilizado utilizado para outras para outras atividadesatividades
Tempo de Tempo de estudo, estudo, preparaçãopreparação, dedicação , dedicação indireta ao indireta ao projetoprojeto
Tempo Tempo total total aplicado ao aplicado ao projetoprojeto
Tempo Tempo dedicado ao dedicado ao projeto, projeto, produzindo produzindo alguma alguma funcionalidadefuncionalidade
Tempo dedicado Tempo dedicado para inovações para inovações e novas e novas funcionalidadesfuncionalidades
Tempo dedicado Tempo dedicado para ajustes ou para ajustes ou modificações do modificações do usuáriousuário
Tempo dedicado Tempo dedicado para ajustes e para ajustes e acertos devido a acertos devido a erroserros
Antonio Carlos Tonini
Métricas para o tempoMétricas para o tempo
Métricas primáriasMétricas primárias::
Quantidade deQuantidade de tempo tempo (...) para (...) para fazerfazer (...) (...)
Base dos time-sheetsBase dos time-sheets
O objetivo O objetivo não é medir as pessoasnão é medir as pessoas, , mas medir o tempo utilizado para mas medir o tempo utilizado para realizar as atividadesrealizar as atividades
Antonio Carlos Tonini
Métricas para o tempoMétricas para o tempo
Métricas secundárias:Métricas secundárias:
DuraçãoDuração = = tempos das atividades tempos das atividades
PrazoPrazo = Calendário + duração= Calendário + duração Critério do Critério do “empurrar”“empurrar”
• determinante: processo precedentedeterminante: processo precedente• Data de início + duração quando é o Data de início + duração quando é o
término ?término ? Critério do Critério do “puxar”“puxar”
• determinante: processo dependentedeterminante: processo dependente• Data de fim – duração quando é o início ?Data de fim – duração quando é o início ?
Antonio Carlos Tonini
Métricas para o tempoMétricas para o tempo
Métricas secundárias (Métricas secundárias (continuaçãocontinuação):):
Horas produtivasHoras produtivas
Taxa de ProdutividadeTaxa de Produtividade =------------------- =-------------------
Total de Horas disponibilizadasTotal de Horas disponibilizadas
EsforçoEsforço = quantidade total de horas/homem ( = quantidade total de horas/homem (??????) para ) para fazer uma determinada quantidade de trabalhofazer uma determinada quantidade de trabalho
Quantidade de trabalhoQuantidade de trabalho
ProdutividadeProdutividade =-------------------- =--------------------
EsforçoEsforço
Produtivas ou totais ?
Métrica do produto
Antonio Carlos Tonini
Métricas para o tempoMétricas para o tempoMétricas secundárias (Métricas secundárias (continuaçãocontinuação):):
Distribuição % do tempo por atividadeDistribuição % do tempo por atividade
Tempo paradoTempo paradoTaxa de ociosidade = Taxa de ociosidade = --------------------------------------------------
Tempo disponibilizadoTempo disponibilizado
Tempo aplicadoTempo aplicadoTaxa de ocupação operacional = Taxa de ocupação operacional = --------------------------------------------------
Tempo disponibilizadoTempo disponibilizado
Tempo improdutivoTempo improdutivoTaxa de espera = Taxa de espera = --------------------------------------------------
Tempo produtivoTempo produtivo
Tempo produtivoTempo produtivoTaxa de eficiência produtiva = Taxa de eficiência produtiva = --------------------------------------------------
Total disponibilizadoTotal disponibilizado
Antonio Carlos Tonini
Métricas para o tempoMétricas para o tempo
Métricas secundárias (Métricas secundárias (continuaçãocontinuação):):
Rendimento produtivo = Rendimento produtivo = Eficiência produtiva x qt.projetosEficiência produtiva x qt.projetos executadosexecutados
Tempo de retrabalhoTempo de retrabalhoTaxa de tempo de retrabalho = --------------------------Taxa de tempo de retrabalho = --------------------------
Tempo produtivoTempo produtivo
Antonio Carlos Tonini
Métricas para o custoMétricas para o custo
Identificar quanto implica monetariamente: Identificar quanto implica monetariamente: Custo direto devido a realização de cada uma Custo direto devido a realização de cada uma
das atividadesdas atividades Custos indiretos das demais desembolsosCustos indiretos das demais desembolsos
O valor mais significativo é a mão-de-obra O valor mais significativo é a mão-de-obra direta empregada:direta empregada:
CUSTO = f (esforço)CUSTO = f (esforço) (software é o resultado da interação intelectual (software é o resultado da interação intelectual
de pessoas – Tom DeMarco, 1977)de pessoas – Tom DeMarco, 1977)
Antonio Carlos Tonini
Métricas para o custoMétricas para o custo
Variação:
Progressoe
MelhoriasModificações Retrabalho Improdutivo Parada
Variável Semi-variável Por degrau
Comportamento do custo da mão-de-obraComportamento do custo da mão-de-obra
Antonio Carlos Tonini
Métricas para custoMétricas para custoCustos indiretos envolvidos:Custos indiretos envolvidos:
estrutura da área de TI: estrutura da área de TI: recursos computacionais, equipamentosrecursos computacionais, equipamentos treinamento,treinamento, assessoria, consultoria, auditoriaassessoria, consultoria, auditoria materiais de consumomateriais de consumo
estrutura da empresa:estrutura da empresa: utilidadesutilidades administraçãoadministração instalação instalação
estrutura do atendimento do projeto:estrutura do atendimento do projeto: Locomoção, estadiaLocomoção, estadia
seguros, eventuais e imprevistosseguros, eventuais e imprevistos qualidade e da falta da qualidade:qualidade e da falta da qualidade:
falhas internas e externas,falhas internas e externas, avaliação da qualidade e prevençãoavaliação da qualidade e prevenção
Antonio Carlos Tonini
Métricas para custoMétricas para custo
CComportamento dos custos:omportamento dos custos: quanto à variação e o gerenciamentoquanto à variação e o gerenciamento
Critérios de absorção no(s) projeto(s):Critérios de absorção no(s) projeto(s):Nenhuma absorção (normalmente para projetos internos)Nenhuma absorção (normalmente para projetos internos)Absorção total ou parcial em função de algum parâmetro (Absorção total ou parcial em função de algum parâmetro (tamanho do projetotamanho do projeto))
Variação:
ComplexidadeTecnológica
Oportunidade Entregaantecipada
Gerenciamento Desgasteorganizacional
Outros
Por degrau Aleatório
Controlável IncontrolávelGerenciamento:
Antonio Carlos Tonini
Métricas para custoMétricas para custoApontamento dos custos diretos:Apontamento dos custos diretos:Através da valorização do time-sheetAtravés da valorização do time-sheetEstipular o período de tabulação: período, conclusão de fase etc.Estipular o período de tabulação: período, conclusão de fase etc.
Apontamento dos custos indiretos:Apontamento dos custos indiretos:Sistematização: contabilização por centro de custo, por projeto etc.Sistematização: contabilização por centro de custo, por projeto etc.Estipular o período de tabulação: período, conclusão de fase etc.Estipular o período de tabulação: período, conclusão de fase etc.
Antonio Carlos Tonini
Métricas para custoMétricas para custoMétricas primárias:Métricas primárias:Custo total do projetoCusto total do projetoCusto por fase do projeto e por tipo de custoCusto por fase do projeto e por tipo de custoCustos imprevistosCustos imprevistosCustos de ociosidadeCustos de ociosidadeCustos de retrabalhoCustos de retrabalhoCusto de modificaçõesCusto de modificações
Métricas secundárias:Métricas secundárias:Custo do projeto por unidade de tamanho do projetoCusto do projeto por unidade de tamanho do projetoCurva de variação de custosCurva de variação de custosCustos reais x orçados x replanejadosCustos reais x orçados x replanejadosRedistribuição dos custosRedistribuição dos custos
Antonio Carlos Tonini
Métricas para custoMétricas para custo
Custo Realizado (CR) mostra a intensidade da ultrapassagem do orçamento inicial. Custo Planejado (CP) mostra a velocidade de projeto
.
Valor do trabalho feito (VTF) = custo planejado (CP) x % do trabalho feito (PTF)
Valor do trabalho efetuado: Valor do trabalho efetuado: análise do trabalho análise do trabalho efetuado e comparação com o valor orçado e o efetuado e comparação com o valor orçado e o realizado.realizado.
Motivo: síndrome dos 90% - os primeiros 90% do trabalho consomem 90% do tempo disponível e os últimos 10 % consomem outros 90%.
Comparação do valor do trabalho feito (VTF) Comparação do valor do trabalho feito (VTF) vsvs::
Antonio Carlos Tonini
Métricas para custoMétricas para custo
custo realizado (CR)proporção de custo realizado (PCR) = ---------------------------------------- custo planejado (CP)
Análise do PCR
Mostra se os gastos estão sob controle ou se o orçamento inicial está sendo ultrapassado:- Se PCR > 1 o orçamento está sendo ultrapassado- Se PCR < 1 o projeto está ainda sob controle;
Proporção do custo realizado : Proporção do custo realizado : permite permite analisar o grau de controle financeiro do projeto analisar o grau de controle financeiro do projeto face ao orçamentoface ao orçamento
Antonio Carlos Tonini
Métricas para custoMétricas para custo
custo realizado (CR)proporção de custo do trabalho realizado (PCTR) = ---------------------------------------- valor do trabalho realizado (VTE)
Análise do PCTR
Mostra a tendencia:- Se PCR > 1 a tendência é não respeitar o orçamento- Se PCR < 1 a tendência é permanecer dentro dos limites;
Proporção do custo do trabalho realizado : Proporção do custo do trabalho realizado : permite analisar a tendência de controle ou perda permite analisar a tendência de controle ou perda de controlede controle
Antonio Carlos Tonini
Métricas para custoMétricas para custo
Um projeto foi planejado para ter 10 atividades, com duração prevista de 1 mês cada, a um custo unitário de $ 10. Após 4 meses, apurou-se que somente 3 atividades tinham sido realizadas a um custo unitário de $ 15. Conclusões ?
CP (Custo Planejado) = 4 meses x $ 10 = $ 40
CR (Custo Real) = 4 meses x $ 15 = $ 45
PTF (Percentual de Trabalho Feito) = 3 atividades de um total de 4 atividades = 75 %
VTF (Valor do Trabalho Feito) = PFT x CP = 75 % x $ 40 = $ 30 CR 45 CR 45 PCTR = ------ = ----- = 1,5 PCR = ----- = ---- = 1,12 VTF 30 CP 40
Antonio Carlos Tonini
Métricas para custo Métricas para custo Acompanhamento Físico
ab (1 mês) atraso na execução do projeto (após 4 meses se realizou uma quantidade de trabalho planejada para 3 meses).
Acompanhamento Financeiro:
ad = $ 15 excesso de dinheiro gasto para a quantidade de trabalho
de = $ 5 excesso de dinheiro gasto para aquele período;
dc = 0,5 $/mês custo real que só deveria ter sido gasto meio mês após a data do levantamento de dados.
PCTR = 1,5 tendência forte de perda de controle
PCR = 1,2 orçamento ultrapassado
Antonio Carlos Tonini
Métricas para as pessoasMétricas para as pessoas
O objetivo:O objetivo: é evidenciar a é evidenciar a situação presentesituação presente e a e a
tendênciatendência dos recursos pessoais dos recursos pessoais
Tendência:Tendência: rotular rotular pessoas x problemaspessoas x problemas
Antonio Carlos Tonini
Métricas para as pessoasMétricas para as pessoas
Métricas primárias :Métricas primárias :
Diversidade Diversidade de conhecimentosde conhecimentos• técnicos, metodológicos e gerenciaistécnicos, metodológicos e gerenciais
Profundidade Profundidade dos conhecimentosdos conhecimentos• Quantidade de detalhes conhecidosQuantidade de detalhes conhecidos• Aplicação dos conhecimentosAplicação dos conhecimentos
Quantidade de problemas Quantidade de problemas entregues x entregues x resolvidosresolvidos• Complexidade de problemasComplexidade de problemas• Tempo de resoluçãoTempo de resolução
Ocupação – Ocupação – lotação do tempo disponívellotação do tempo disponível
Antonio Carlos Tonini
Métricas para as pessoasMétricas para as pessoas
Métricas secundárias :Métricas secundárias :
Capacidade para resolver problemasCapacidade para resolver problemasÍndice de assertividade na solução de Índice de assertividade na solução de problemasproblemasCapacidade para receber conhecimentosCapacidade para receber conhecimentosCapacidade para transmitir soluções Capacidade para transmitir soluções Índice de presençaÍndice de presençaÍndice de disponibilidade / ociosidadeÍndice de disponibilidade / ociosidade
Antonio Carlos Tonini
Métricas para as pessoasMétricas para as pessoas
Antonio Carlos Tonini
Tipos de métricasTipos de métricas
Recursos ProcessoProdutos (software)
Clientes Gestão
Antonio Carlos Tonini
Métricas para o ProdutoMétricas para o ProdutoMétricas primárias funcionais (diretas):Métricas primárias funcionais (diretas):
Tamanho do softwareTamanho do software pronto (pronto (acervoacervo)) a ser desenvolvido (a ser desenvolvido (estimativaestimativa)) a ser modificado (rearranjo do conteúdo)a ser modificado (rearranjo do conteúdo)
Quantidade de defeitos:Quantidade de defeitos: por origem ou por complexidadepor origem ou por complexidade
Complexidade do softwareComplexidade do software Exigência de algum padrão de complexidadeExigência de algum padrão de complexidade
Idade do softwareIdade do softwareQuantidade manutençõesQuantidade manutençõesQuantidade de usuáriosQuantidade de usuáriosQuantidade de versões ativasQuantidade de versões ativasAcesso e segurançaAcesso e segurançaTamanho do acervo (físico e econômico)Tamanho do acervo (físico e econômico)
Antonio Carlos Tonini
Métricas para o ProdutoMétricas para o ProdutoMétricas primárias não funcionais:Métricas primárias não funcionais:
Qualidade do produtoQualidade do produto pronto (pronto (acervoacervo)) a ser desenvolvido (a ser desenvolvido (estimativaestimativa)) a ser modificado (rearranjo do conteúdo)a ser modificado (rearranjo do conteúdo)
Utilidade do produto:Utilidade do produto: confiabilidadeconfiabilidade completezacompleteza consistênciaconsistência Robusteza (tolerância a falhas)Robusteza (tolerância a falhas)
Usabilidade do produtoUsabilidade do produto facilidade de uso (legibilidade)facilidade de uso (legibilidade) eficiência do usoeficiência do uso inteligilibilidade / compreensibilidadeinteligilibilidade / compreensibilidade agradabilidade (interface homem-máquina)agradabilidade (interface homem-máquina)
Antonio Carlos Tonini
Métricas para o ProdutoMétricas para o Produto
Métricas secundárias:Métricas secundárias:
Qualidade do produtoQualidade do produtoEstimativa de durabilidadeEstimativa de durabilidadeComportamento dos defeitosComportamento dos defeitosTaxa de inovação: novas funcionalidadesTaxa de inovação: novas funcionalidades
Antonio Carlos Tonini
Métricas para o ProdutoMétricas para o Produto
Medir a quantidade de funcionalidades incluídas em um software Medir a quantidade de funcionalidades incluídas em um software tamanho do produtotamanho do produto
Métodos mais utilizados:Métodos mais utilizados: Linhas de código - Linhas de código - lines of codelines of code (Kloc) (Kloc) Análise de Pontos de função (APF)Análise de Pontos de função (APF) Constructive Cost Model (COCOMO)Constructive Cost Model (COCOMO) Metodologias ágeisMetodologias ágeis Pontos de casos de usoPontos de casos de uso
Antonio Carlos Tonini
Métricas para o ProdutoMétricas para o ProdutoLinhas de código - K lines of code (Kloc)Linhas de código - K lines of code (Kloc)
Criada na década de 70Criada na década de 70Tem por base a quantidade linhas do código fonte de todos os programas de um sistema.Tem por base a quantidade linhas do código fonte de todos os programas de um sistema.Apresenta alta correlação com o tempo de desenvolvimentoApresenta alta correlação com o tempo de desenvolvimentoPré-requisitos:Pré-requisitos:Estabilidade do ambiente em termos de linguagem utilizadaEstabilidade do ambiente em termos de linguagem utilizadaEstabilidade da capacidade da equipe de desenvolvimentoEstabilidade da capacidade da equipe de desenvolvimentoEstabilidade dos procedimentos de programação quanto à arquitetura dos códigosEstabilidade dos procedimentos de programação quanto à arquitetura dos códigosDerivação pelo APF (tabela de Albrecht e Capers Jones)Derivação pelo APF (tabela de Albrecht e Capers Jones)
Antonio Carlos Tonini
Métricas para o ProdutoMétricas para o ProdutoAnálise de pontos de função (APF)Análise de pontos de função (APF)
Criado em 1979 por Allan J. Albrecht (IBM)Criado em 1979 por Allan J. Albrecht (IBM)Padrão internacional:Padrão internacional:
Parte 1 Parte 1 ISO/IEC 14143-1:1998 (jun, 1998) ISO/IEC 14143-1:1998 (jun, 1998) Parte 2 Parte 2 em votação como Commitee Draft (CD) em votação como Commitee Draft (CD) Partes 3,4 e 5 Partes 3,4 e 5 em votação como relatórios técnicos em votação como relatórios técnicos Padrão ISO/IEC 20296Padrão ISO/IEC 20296
Medir a quantidade de funcionalidades sob o ponto de vista do usuárioMedir a quantidade de funcionalidades sob o ponto de vista do usuárioPermite calcular:Permite calcular:
EstimativaEstimativa AcervoAcervo Modificações de projetosModificações de projetos
Independência do ambiente computacionalIndependência do ambiente computacionalCríticas quanto aos 14 fatores de ajuste Críticas quanto aos 14 fatores de ajuste
Antonio Carlos Tonini
Métricas para o ProdutoMétricas para o ProdutoConstructive Cost Model - COCOMOConstructive Cost Model - COCOMO
Criada por Berry Bohem em 1981Criada por Berry Bohem em 1981É utilizada para estimar esforço, prazo e tamanho da equipeÉ utilizada para estimar esforço, prazo e tamanho da equipe3 métodos de cálculo:3 métodos de cálculo:
OrgânicoOrgânico – mais simples, pequenos projetos desenvolvidos “in house”, equipes pequenas e estáveis) – mais simples, pequenos projetos desenvolvidos “in house”, equipes pequenas e estáveis) IntermediárioIntermediário – considera fatores de complexidade do ambiente, da linguagem e da capacidade da equipe – considera fatores de complexidade do ambiente, da linguagem e da capacidade da equipe DetalhadoDetalhado – variação do método intermediário, possibilitando extender os cálculos para os subsistemas, módulos e rotinas – variação do método intermediário, possibilitando extender os cálculos para os subsistemas, módulos e rotinas
Crítica: tabelas de pesificaçãoCrítica: tabelas de pesificação
Antonio Carlos Tonini
Métricas para o ProdutoMétricas para o ProdutoMetodologias ÁgeisMetodologias Ágeis
Criada no contexto das metodologias ágeis: Criada no contexto das metodologias ágeis: XP XP (eXtreme Programming) (eXtreme Programming) FDD (Feature Driven Development)FDD (Feature Driven Development)Orientada para estimativas: simples, flexíveis e quase anárquicasOrientada para estimativas: simples, flexíveis e quase anárquicasTamanho das estórias Tamanho das estórias experiências do time experiências do time
Quanto tempo eu levei no passado para implementar algo como isso?Quanto tempo eu levei no passado para implementar algo como isso? Soma destas estimativas Soma destas estimativas duração da iteração. duração da iteração.
Crítica: experiência empíricaCrítica: experiência empíricaPonto positivo: uso Ponto positivo: uso melhora as estimativas melhora as estimativas
Antonio Carlos Tonini
Métricas para o ProdutoMétricas para o ProdutoPontos de caso de usoPontos de caso de uso
Criado em 1993 por Gustav Karner da Objectory AB (depois Rational)Criado em 1993 por Gustav Karner da Objectory AB (depois Rational)Dificuldades: Dificuldades:
inexistência de padronização dos formatos, nas especificações e formalização dos casos de uso.inexistência de padronização dos formatos, nas especificações e formalização dos casos de uso. representar a visão que um ator têm de um sistema, principalmente quando um sistema tem estados diferentesrepresentar a visão que um ator têm de um sistema, principalmente quando um sistema tem estados diferentes complexidade intrínseca do desenvolvimentocomplexidade intrínseca do desenvolvimento
Utilizado para estimativas do esforço e tamanho da equipeUtilizado para estimativas do esforço e tamanho da equipeContagem dos atores e dos casos de usoContagem dos atores e dos casos de usoOs fatores ambientais consideram apenas a relação desenvolvedor x ambienteOs fatores ambientais consideram apenas a relação desenvolvedor x ambiente
Antonio Carlos Tonini
Outros métodos para Outros métodos para tamanho de softwaretamanho de software
Antonio Carlos Tonini
Métricas para softwareMétricas para software