SlideShare uma empresa Scribd logo
Utilizando Monte Carlo e
Reamostragem em Estimativas
Mauricio Aguiar, TI Métricas
Agenda
• Introdução
• Um Exemplo Simples
• Outro Exemplo
• Reamostragem
• Faça Você Mesmo - Monte Carlo
• Resumo
Introdução
Estimativas

• Estimativas são projeções quantitativas de características
dos projetos, tais como:
• Tamanho do Produto
• Esforço Requerido
• Prazo Requerido
• Qualidade
Introdução

Incerteza e Monte Carlo
• Há um grau de incerteza nos parâmetros de entrada de
um modelo de estimativa
• Desejamos avaliar como essa incerteza pode afetar os
resultados
• Isso pode ser feito através de simulação (Monte Carlo
Simulation)
Introdução

Entradas de um Modelo de Estimativa
• Tamanho (Pontos de Função, etc.)
• Características do Produto e do Projeto
• Esforço Estimado por Atividade
• etc.
Introdução

Modelando a Incerteza
• Permitir que as entradas variem segundo distribuições
estatísticas definidas
Ex.: Tamanho

Distribuição Normal

950 PF

1000 PF

1050 PF
Um Exemplo Simples
O Problema

• Executar construção e teste unitário para 5 módulos
(classes, funções, subrotinas...)

• Assuma que o trabalho será feito sequencialmente
Um Exemplo Simples
Como Fazer Melhor

• Com 100% de probabilidade de acerto, o prazo seria 48
dias
• Um prazo menor com 90% de probabilidade de acerto
seria suficiente
• Qual seria esse prazo?
Um Exemplo Simples
Modelando a Incerteza
Um Exemplo Simples
Monte Carlo

• Simular 10000 vezes a execução da construção e teste
unitário dos 5 módulos
• Variar os prazos individuais conforme as respectivas
distribuições
• Avaliar a variação do prazo total
Um Exemplo Simples
Monte Carlo
Um Exemplo Simples

Histograma do Prazo Simulado
Um Exemplo Simples

Freqüência Acumulada do Prazo Simulado

38,4 – 90%

Prazo menor ou igual a 38 dias com 90% de probabilidade de acerto
Um Exemplo Simples
Questionamento

• As distribuições utilizadas correspondem à realidade?
• A probabilidade de terminar antes é a mesma de terminar
depois?
Um Exemplo Simples
Questionamento
Um Exemplo Simples
Questionamento

• Simular 10000 vezes a execução da construção e teste
unitário dos 5 módulos, utilizando a distribuição lognormal
somente no caso anteriormente “normal”
Um Exemplo Simples
Questionamento
Um Exemplo Simples
Questionamento

O prazo agora
é 39 dias
Outro Exemplo

Produtividade de 9 Projetos

Produtividade em Horas/Pontos de Função
Nota: Dados fictícios
Outro Exemplo
Estimando o Erro

((Estimado – Real)/Real) * 100

Mean Relative Error
Outro Exemplo
Dados de Esforço

• Muitas vezes a qualidade dos dados de esforço é
questionável
• Como o erro nos dados de esforço afetaria o erro de
estimativa?
Outro Exemplo
Dados de Esforço
Outro Exemplo
Dados de Esforço

O erro
é inferior
a 40% com
90% de
probabilidade.
O máximo é
42%.
Reamostragem
A Idéia

• Monte Carlo exige que façamos suposições sobre as
distribuições
• A Reamostragem basea-se na replicação de uma amostra
(podendo haver repetições)
• As estatísticas baseadas em reamostragem aproximam-se
dos valores reais, conforme cresce o número de amostras
• A Reamostragem independe de suposições sobre as
distribuições
Reamostragem
Um Exemplo

• Construir um intervalo de confiança a 90% para a
produtividade do COBOL, com base no banco de dados
ISBSG V10
• Os dados: 615 projetos, produtividade média 20.5 H/PF,
produtividade mediana 11.9 H/PF
Reamostragem

Distribuição Amostral: Média, Mediana
Reamostragem

Distribuição Amostral: Média
Reamostragem

Distribuição Amostral: Mediana
Faça Você Mesmo

Simulando a Distribuição Triangular
Faça Você Mesmo

Simulando a Distribuição Triangular
Faça Você Mesmo

Simulando a Distribuição Triangular
Trabalhando com Excel VBA
Faça Você Mesmo

Simulando a Distribuição Triangular
Resumo

O Que Vimos
• Monte Carlo ajuda a identificar a variação nos resultados
em função da incerteza nas entradas
• A escolha das distribuições estatísticas é muito importante
em Monte Carlo
• A Reamostragem funciona mesmo quando a distribuição é
desconhecida
• É possível fazer muita coisa com Excel e VBA
• Há ferramentas profissionais para Monte Carlo (Crystal
Ball, @Risk, XLSim, etc.)
Resumo

Referências
• Savage, Sam L., Decision Making with Insight
• XLSim 2.0

• Mooney, C.Z. and Duval, R.D, Bootstrapping: A
Nonparametric Approach to Statistical Inference, SAGE,
1993
• Davidson, A.C. and Hinkley, D.V., Bootstrap Methods and
Their Application, Cambridge University Press, 1997
Mauricio Aguiar
ti MÉTRICAS
mauricio@metricas.com.br
www.metricas.com.br

Mais conteúdo relacionado

Semelhante a Aguiar utilizando monte carlo e reamostragem em estimativas 2008-11-04

Treinamento MLOps Databricks 2023
Treinamento MLOps Databricks 2023Treinamento MLOps Databricks 2023
Treinamento MLOps Databricks 2023
Douglas Mendes
 
Um framework para validação automática de modelos aplicado ao subsistema de e...
Um framework para validação automática de modelos aplicado ao subsistema de e...Um framework para validação automática de modelos aplicado ao subsistema de e...
Um framework para validação automática de modelos aplicado ao subsistema de e...
Italo Pinto Rodrigues
 
GOTEST-Aula2.2-Projeto.pdf
GOTEST-Aula2.2-Projeto.pdfGOTEST-Aula2.2-Projeto.pdf
GOTEST-Aula2.2-Projeto.pdf
RodolphoCesar2
 
Dba Ciclo Palestra P5 V1a
Dba Ciclo Palestra P5 V1aDba Ciclo Palestra P5 V1a
Dba Ciclo Palestra P5 V1a
Leonardo Molinari
 
Modelos quantitativos para a tomada de decisão.
Modelos quantitativos para a tomada de decisão.Modelos quantitativos para a tomada de decisão.
Modelos quantitativos para a tomada de decisão.
Julio Cesar Ferreira dos Passos
 
Metricas ageis
Metricas ageisMetricas ageis
Projeto de Melhoria
Projeto de MelhoriaProjeto de Melhoria
Projeto de Melhoria
Edson Jaques de Queiroz
 
template-modeloparaapresentacaodoprojetocomroadmap.ppt
template-modeloparaapresentacaodoprojetocomroadmap.ppttemplate-modeloparaapresentacaodoprojetocomroadmap.ppt
template-modeloparaapresentacaodoprojetocomroadmap.ppt
RicardoOliveira531789
 
Template de Apresentação Certificação Lean Seis Sigma Black Belt
Template de Apresentação Certificação Lean Seis Sigma Black BeltTemplate de Apresentação Certificação Lean Seis Sigma Black Belt
Template de Apresentação Certificação Lean Seis Sigma Black Belt
AndrCarvalho807919
 
Desenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo CristalliDesenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Rio Info
 
Pare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizarPare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizar
Rodrigo Oliveira, Msc, PMP
 
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
Carlos Eduardo
 
A Jornada para o Continuous Delivery - Scrum Gathering Rio 2016
A Jornada para o Continuous Delivery - Scrum Gathering Rio 2016A Jornada para o Continuous Delivery - Scrum Gathering Rio 2016
A Jornada para o Continuous Delivery - Scrum Gathering Rio 2016
Diego Paris de Oliveira
 
Tecnicas de projeto design especificacao modelagem de casos de testes
Tecnicas de projeto design especificacao modelagem de casos de testesTecnicas de projeto design especificacao modelagem de casos de testes
Tecnicas de projeto design especificacao modelagem de casos de testes
Cristiano Caetano
 
Unit test & TDD
Unit test & TDDUnit test & TDD
Unit test & TDD
Ricardo Moura
 
Introdução a tdd
Introdução a tddIntrodução a tdd
Introdução a tdd
Fabrício Vargas Matos
 
seissigmatrad.pdf
seissigmatrad.pdfseissigmatrad.pdf
seissigmatrad.pdf
LuizFellipeSilva
 
Ii enqs -_implantação_de_fábrica_de_teste_-_desafios,_resultados_e_melhores_p...
Ii enqs -_implantação_de_fábrica_de_teste_-_desafios,_resultados_e_melhores_p...Ii enqs -_implantação_de_fábrica_de_teste_-_desafios,_resultados_e_melhores_p...
Ii enqs -_implantação_de_fábrica_de_teste_-_desafios,_resultados_e_melhores_p...
Welington Monteiro
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
testedesoftwarepe
 
Refactoring Databases
Refactoring DatabasesRefactoring Databases
Refactoring Databases
Ismael
 

Semelhante a Aguiar utilizando monte carlo e reamostragem em estimativas 2008-11-04 (20)

Treinamento MLOps Databricks 2023
Treinamento MLOps Databricks 2023Treinamento MLOps Databricks 2023
Treinamento MLOps Databricks 2023
 
Um framework para validação automática de modelos aplicado ao subsistema de e...
Um framework para validação automática de modelos aplicado ao subsistema de e...Um framework para validação automática de modelos aplicado ao subsistema de e...
Um framework para validação automática de modelos aplicado ao subsistema de e...
 
GOTEST-Aula2.2-Projeto.pdf
GOTEST-Aula2.2-Projeto.pdfGOTEST-Aula2.2-Projeto.pdf
GOTEST-Aula2.2-Projeto.pdf
 
Dba Ciclo Palestra P5 V1a
Dba Ciclo Palestra P5 V1aDba Ciclo Palestra P5 V1a
Dba Ciclo Palestra P5 V1a
 
Modelos quantitativos para a tomada de decisão.
Modelos quantitativos para a tomada de decisão.Modelos quantitativos para a tomada de decisão.
Modelos quantitativos para a tomada de decisão.
 
Metricas ageis
Metricas ageisMetricas ageis
Metricas ageis
 
Projeto de Melhoria
Projeto de MelhoriaProjeto de Melhoria
Projeto de Melhoria
 
template-modeloparaapresentacaodoprojetocomroadmap.ppt
template-modeloparaapresentacaodoprojetocomroadmap.ppttemplate-modeloparaapresentacaodoprojetocomroadmap.ppt
template-modeloparaapresentacaodoprojetocomroadmap.ppt
 
Template de Apresentação Certificação Lean Seis Sigma Black Belt
Template de Apresentação Certificação Lean Seis Sigma Black BeltTemplate de Apresentação Certificação Lean Seis Sigma Black Belt
Template de Apresentação Certificação Lean Seis Sigma Black Belt
 
Desenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo CristalliDesenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
 
Pare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizarPare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizar
 
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
 
A Jornada para o Continuous Delivery - Scrum Gathering Rio 2016
A Jornada para o Continuous Delivery - Scrum Gathering Rio 2016A Jornada para o Continuous Delivery - Scrum Gathering Rio 2016
A Jornada para o Continuous Delivery - Scrum Gathering Rio 2016
 
Tecnicas de projeto design especificacao modelagem de casos de testes
Tecnicas de projeto design especificacao modelagem de casos de testesTecnicas de projeto design especificacao modelagem de casos de testes
Tecnicas de projeto design especificacao modelagem de casos de testes
 
Unit test & TDD
Unit test & TDDUnit test & TDD
Unit test & TDD
 
Introdução a tdd
Introdução a tddIntrodução a tdd
Introdução a tdd
 
seissigmatrad.pdf
seissigmatrad.pdfseissigmatrad.pdf
seissigmatrad.pdf
 
Ii enqs -_implantação_de_fábrica_de_teste_-_desafios,_resultados_e_melhores_p...
Ii enqs -_implantação_de_fábrica_de_teste_-_desafios,_resultados_e_melhores_p...Ii enqs -_implantação_de_fábrica_de_teste_-_desafios,_resultados_e_melhores_p...
Ii enqs -_implantação_de_fábrica_de_teste_-_desafios,_resultados_e_melhores_p...
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
 
Refactoring Databases
Refactoring DatabasesRefactoring Databases
Refactoring Databases
 

Aguiar utilizando monte carlo e reamostragem em estimativas 2008-11-04