preciso estimar mesmo (1)

Preview:

Citation preview

Globalcode – Open4education

Preciso estimar mesmo?Emerson Schenatto

Globalcode – Open4education

Estimativas de software

Estimativas de Software (do inglês Software Estimation) é a disciplina da Engenharia de Software que trata da elaboração de estimativas de esforço, prazos e custos no desenvolvimento de software. Entre suas diversas técnicas destacam-se:

Método COCOMOAnálise de Pontos de FunçãoAnálise por Pontos de Caso de Uso

Fonte: Wikipédia (última modificação: 2011)

Globalcode – Open4education

Estimativas existentes

Story pointsFunction pointsUse case pointsHoras de trabalhoLinhas de códigoClasses ou métodos alterados(Cocomo) Constructive Cost Model...E como você estima?

Globalcode – Open4education

Qual a estimativa mais usada?

Coeficiente Hipotético Universal Teoricamente Embasado

CHUTE

http://estimaai.com

Globalcode – Open4education

Você está certo disso?

Está acertando em suas estimativas?Sim?

Quero aprender com você

Não?Ufa... Não acontece só no meu time

Existe uma forma de criar uma estimativa 100% exata?

Existe isso?

Globalcode – Open4education

Por que erramos as estimativas?

Complexidade no desenvolvimentoTecnologias envolvidasEspecificação incompleta

Nenhum projeto é igual a outroDiferentes habilidades e conhecimentos no timeRegras de negócio mutantesDesconhecidos não-conhecidos

Pensa em alguma coisa que você não sabe que não sabe? Mas aí complica muito né...

Globalcode – Open4education

Desenvolvedores x analistas

DesenvolvedoresGeralmente são otimistas

Estimam para baixo

Sofrem pressão para cumprir estimativasQualidade sacrificada

AnalistasGeralmente são pessimistas

Colocam margem de folga (gordura)

Geram planos de desenvolvimentoCronogramasGráficos de Gantt

Globalcode – Open4education

Resultado da estimativa

Globalcode – Open4education

Pressão pela entrega dentro do prazo

Alto tempo gasto em controle e monitoramento+ controle = - criatividade

Valorização maior na conclusão de tarefas do que valor ao cliente

Diga como me medes, e te direi como me comportarei

Cliente aguardando a entrega das funcionalidades no prazo acordado

Aumento de tempo x redução de escopo

Frustração geralTime e cliente

Globalcode – Open4education

Expectativa x frustração

Globalcode – Open4education

Mas então...

Não devo estimar mais? #NoEstimates

Globalcode – Open4education

Por que estimar?

Ajuda na tomada de decisõesCusto da oportunidade

Esforço + tempo x ROI

Ajuda no planejamento da iteraçãoEntender se não está planejamento muito

Ajuda a conhecer o ritmo do timeGera discussões sobre a funcionalidadeGarante que as tarefas sejam pequenas

Globalcode – Open4education

A importância do ritmo

Conhecer a capacidade do timeMétricas

Buscar tendências e médias

Entender a vazão (throughtput) por iteraçãoQuantidade de tarefas executadas

Dividir para conquistarTarefas sempre pequenas

Produção puxadaConfiançaComprometimento

Globalcode – Open4education

Estimativas melhores

Experiência da equipeDados coletados de projetos passados

Métricas

Histórias pequenasIterações menoresEscopo reduzido (MVP)

Globalcode – Open4education

Como lidar melhor com as estimativas?

Se algo passar de 20 dias de estimativa, a chance de falhar é muito grande

Quebre em partes pequenas, mas entregáveisBusque o feedback o mais rápido possível

Calcule corretamente a sua margem de folgaNão grande demais

Equipe defasada, obsoleta e/ou incompetente

Não pequena demaisAmadorismo e/ou inexperiência em projetos do mesmo porte

Globalcode – Open4education

Como devo encarar as estimativas?

Estimar não é nem ruim, nem bomSaiba aplicar as estimativas de acordo com seu contextoNão gaste mais tempo que o necessário estimando

Estimativa é uma especulação (previsão)Não queira acertar sempreCrie restriçõesDescubra o ritmo de seu time

A confiança no time e a entrega contínua são fatores decisivos para o sucesso

Globalcode – Open4education

Obrigado!

@eschena

eschena@gmail.com

Perguntas?

http://analiseagil.wordpress.com

Emerson Schenatto

Recommended