Pare de fazer estimativas!

Seres humanos adoram racionalizar. E os seres humanos da TI ainda mais. Pontos de função, pontos de casos de uso, planning poker, story points, tamanho de camisa, fase da lua e outras técnicas mirabolantes tem sido usadas há anos para tentar prever o resultado da entrega do trabalho de times. Infelizmente, sem sucesso.

Os motivos são vários e cito alguns deles aqui.

1. Confundir estimativas com certezas.
Toda estimativa possui uma incerteza estatística. Tal conceito, chamado Cone da Incerteza, foi popularizado ainda nos 90 por Steve McConnell..

Cone da Incerteza
O cone da incerteza mostra a incerteza associada a estimativas, que são enormes no início de projetos. Somente não existe incerteza depois que o trabalho foi terminado.  Fonte: Steve McConnell. The Black Art of Software Estimation.

Entretanto, gerentes ousam comunicar prazos de projeto com certeza quase divina. “Tenho certeza que vamos entregar o projeto em dois meses e meio”. “Esse projeto será entregue em Dezembro”.

Fornecer uma estimativa sem indicar o erro associado não é apenas raso, mas demonstra ignorância estatística elevada. Até Aristóteles, pai da teleologia, supostas certezas e que não sabia muito sobre estatística, dizia que a  mente instruída se satisfaz com o grau de precisão que a natureza de um problema admite, ao invés de buscar a exatidão onde somente uma aproximação da verdade é possível.

2. Uso de técnicas frágeis.
Steve Mconnell, autor do um interessante livro de estimativas, declara no capítulo 1.

“Conte em primeiro lugar. Calcule se você não puder contar. Julgue se não houver mais recursos.”.

The Black Art of Software Estimation

Ainda assim, especialistas da TI insistem em fazer julgamentos como técnica primária de estimativas. Converse com “entendidos” do framework Scrum e eles vão lhe dizer que a técnica de Story Points, totalmente baseada em julgamentos, é muito sólida e arcabouço central do Scrum. Mais curioso é que o Scrum Guide não cita essa técnica e que julgamentos são inerentemente frágeis. Julgamentos, devo reforçar em concordância com Steve McConnell, devem ser usadas apenas como último recurso ao se fazer estimativas.

3. Falácia de Planejamento.

Este é um fenômeno que afeta virtualmente toda pessoa e foi publicado  por Daniel Kahneman e Amos Tversky em 1979 depois de extensos experimentos. Ele afirma o seguinte. Tendemos a subestimar o tempo que será necessário para a conclusão de uma tarefa no futuro, jurando que ela levará menos tempo do que realmente levará.

Esse viés cognitivo é descrito por Kahneman no excelente livro Rápido e Devagar. Em termos práticos, desconfie quando alguém disser que a nova demanda estará terminada até o fim da semana pois o planejamento foi bastante detalhado.

Livro Rápido e Devagar

4. Falácia da Narrativa

O seu time perdeu aquele jogo do Brasileirão. Ah… mas se o seu centroavante não tivesse perdido aquele chute cara a cara com o goleiro adversário, tenho certeza que o resultado seria outro.

Aquela nova empresa unicórnio não para de crescer. Ah… mas o seu presidente é um cara tão competente. Inovador, simpático e com ideias revolucionárias, ele realmente liderou a sua empresa na direção do sucesso.

Esses são exemplos da falácia da narrativa. Somos inundados com tanta informação sensorial que nosso cérebro não tem outra escolha; devemos colocar as coisas em ordem para que possamos processar o mundo à nossa volta. Está implícito em como entendemos o mundo. E com isso buscamos razões que não existem para justificar qualquer coisa. Afinal, somos seres “racionais”, certo?

Quando a falácia da narrativa se encontra com estimativas, temos tempo ruim à frente. Já vi inúmeras vezes técnicos (supostamente muito inteligentes) afirmarem para os seus times que os prazos agora serão cumpridos pois aprendemos a coletar requisitos ou porque a arquitetura já foi perfeitamente desenhada.

“Facilis descensus Averno” (Descer para o inferno é fácil),  já disse o poeta Virgílio no seu clássico Eneidas.

#NoEstimates

O movimento #NoEstimates emergiu nos últimos 10 anos com muitos outros argumentos sobre os males das estimativas. E uma comunidade influência por caras como por Vasco Duarte, Woody Zuill, Neil Killick, Allan Holub, Daniel Vacanti e outros tem trazido ar fresco e alternativas interessantes ao problema.

Por exemplo, o livro No Estimates: How To Measure Project Progress Without Estimating, do Vasco Duarte é uma excelente introdução a essa temática

No Estimates

Mas quando vai estar pronto?

Algumas pessoas (ingênuas) acreditam que o movimento #NoEstimates significa que você é um anarquista que se recusa a dizer quando um trabalho estará pronto. Essas mesmas pessoas (ingênuas) confundem a pergunta “Quando vai estar pronto” com estimativas (ou uma palavra inventada horrenda, chamada “metrificação”).

Veja o exemplo interessante da histórica chuva que caiu em Belo Horizonte entre 23 e 24 de janeiro de 2020 – o maior período chuvoso da história da capital mineira desde o início da série histórica, há 110 anos, com impressionantes 171 mm.  Ninguém estimou essa chuva. Ao invés, ela foi prevista com excelente antecedência baseada nas informações coletadas nos dias que a antecederam. O período do ano, a zona de convergência do atlântico sul, o ciclone que se formou no oceano atlântico que criou uma zona de baixa pressão e muitos modelos matemáticos permitiram essa previsão. O efeito gerencial prático é que a defesa civil se organizou como nunca antes na história de Belo Horizonte para evitar um dano ainda maior.

A chave aqui foi trabalhar com previsibilidade, e não estimativas baseadas em desejos ou esoterismo.

Previsibilidade – Princípios 

Trabalhe com previsões, e não com estimativas. E para prever você deve se orientar pelos seguintes princípios:

  1. Pense probabilisticamente e não deterministicamente.
    Uma previsão é um cálculo sobre o futuro que inclui um intervalo e uma probabilidade associada. Pensar probabilisticamente significa reconhecer que há mais de um possível resultado futuro.
  2. Previsões mais curtas são normalmente melhores que longas
    Previsões de prazo mais curto significam tirar muita incerteza do jogo.
  3. Faça novas previsões à medida que novas informações são recebidas

    Uma nova previsão deve ser conduzida quando novas informações chegam que validam ou invalidam as suposições iniciais em vigor quando a previsão original foi feita.

Observe que a previsibilidade não trabalha com julgamentos. Ao invés, ela trabalha com cálculos que utilizam informações de contagem.

Previsibilidade – Um exemplo simples

O tema da previsibilidade é denso e não seria possível cobri-lo aqui. Mas trago um exemplo muito usado na comunidade Kanban, que é uma ferramenta simples usada para prever quando uma história do usuário estará pronta.

Veja a figura abaixo, chamada de gráfico de dispersão.

Gráfico de dispersão

Cada ponto representa uma demanda. No eixo X temos o tempo do calendário e no eixo Y temos o tempo total que ela demorou para fluir pelo sistema de trabalho.

Por exemplo, a demanda destacada no gráfico (100268) demorou 38 dias para fluir pelo sistema (seu tempo de ciclo no eixo X) e foi terminada no dia 05/12/2019.

Esse gráfico é simples de ser montado no MS Excel ou Google Sheets e tudo o que você precisa é coletar quando as demandas entraram e saíram do seu sistema de trabalho. Mais impressionante, entretanto, é o que podemos fazer com ele.

Mire a nuvem de pontos. Ela representa o histórico de demandas do sistema de trabalho. Na perspectiva estatística, ela representa um processo gerador estocástico que produziu o resultado observado. Mas não nos interessa modelar qual a distribuição estatística que a originou, mesmo por que esse é um campo que engana até economistas supostamente inteligentes, como demonstrou Taleb no excelente livro The Black Swan (ver capítulo – A Curva de Bell, Aquela Grande Fraude Intelectual).

Ao invés, vamos ser mais simples. Vamos traçar apenas uma linha horizontal que represente o percentil desejado. Por exemplo, a linha de percentil 50 é aquela que coloca metade das demandas abaixo e metade das demandas acima. Essa linha representa uma duração média de 7 dias. Mas não confie em valores médios, especialmente na área de TI.

Já diz o ditado – “Nunca entre em um rio que tem profundidade média de 1 metro”.

Como não queremos afundar, vamos usar um valor mais seguro como por exemplo o percentil 95. A linha horizontal desse percentil coloca 95% das demandas abaixo e apenas 5% das demandas acima. É um valor mais seguro para falarmos de previsibilidade.

Observe que essa linha representa o valor de 24 dias e isso já nos permite prever que a próxima demanda a entrar no sistema será terminada em até 24 dias com confiança de 95%.

Percentis são previsões e por mais estranho que pareça, são instrumentos muito confiáveis para qualquer natureza de trabalho intelectual tais como requisições de serviço, atendimento a incidentes e afins.

Previsibilidade – Como usar um gráfico de dispersão na prática

1. Construa um gráfico de dispersão do tempo do ciclo para os itens terminados (você escolhe quais os itens você quer usar – exemplos podem incluir defeitos, melhorias ou a totalidade das demandas).
2. Decida quanta confiança você precisa em sua previsão
3. Calcule as linhas de percentis para o seu gráfico de dispersão
4. Comunique a sua previsão em termos de alcance e probabilidade de acordo com confiança necessária.
5. Atualize as previsões em base diária

Quando planejadores tradicionais olham para esse instrumento, ouço argumentos (ingênuos) tais como o tamanho da demanda. Exceto por elefantes na sala (grandes projetos), o tamanho realmente não importa. Se você é um cético (ou um inteligente ingênuo) recomendo a leitura do livro When It Will be Done, do Daniel Vacanti. Suas dúvidas e ceticismos irão embora.

When It Will Be Done

Outros instrumentos de previsibilidade

A comunidade Kanban tem liderado e popularizado um grande número de instrumentos simples para apoio a previsibilidade, chamada de métricas acionáveis, tais como:

  • Histograma do tempo de ciclo, para compreender a variabilidade do tempo de serviço.
  • Gráfico de envelhecimento, para compreender
  • CFD Fluxo cumulativo de valor (já fiz um post sobre o CFD há algum tempo)
  • Histograma da vazão, para compreender a variabilidade da entrega de lotes.
  • Eficiência de fluxo, para compreender desperdícios.

Esses e outros instrumentos tem permitido gerir projetos ágeis sem recorrer a processos esotéricos e com alternativas a processos de estimativas baseados em julgamentos.

Um panorama de métodos para aumentar a agilidade de negócios

A agilidade de negócios se tornou um imperativo para muitas organizações. Inovar, criar produtos melhores, engajar mais clientes, encurtar o tempo de ciclo e reduzir desperdícios são alguns dos desafios que atormentam muitos gerentes nas empresas do Brasil e do mundo.

Os métodos ágeis tem sido usados, nos últimos 20 anos, para buscar entregar agilidade de negócios e apoiar gestores e times em linhas gerais. Mas se em 2001 podíamos enumerar os tipos de métodos ágeis em uma única mão, hoje o ecossistema ficou muito mais complexo. Os métodos, frameworks e práticas se multiplicaram e a simples escolha de qual método usar para apoiar as iniciativas de agilidade de negócio se tornou um desafio.

Nesse contexto, trago aqui uma compilação de 11 métodos ligados à agilidade de negócios e que tem obtido alguma visibilidade nos últimos anos.

Método Kanban

O método Kanban é uma abordagem de gerenciamento e melhoria de sistemas de fluxo e que busca criar um modelo evolucionário de aumento de maturidade nas organizações. Ele é uma alternativa a abordagens pesadas que introduzem mudanças radicais, reestruturações organizacionais e modelos prescritivos desconectados da realidade objetiva de cada organização.

O método Kanban foi criado por David Anderson a partir das suas experiências na Microsoft no começo do século e hoje é um dos métodos mais promissores na comunidade ágil.

Ele é mantido pela Kanban.University, que fornece uma trilha de cursos de formação e uma coleção de práticas provadas em centenas de organizações nos últimos 15 anos.

O método Kanban é acelerado por duas ferramentas conceituais poderosas:

  1. STATIK, que é uma abordagem sistêmica para introduzir sistemas Kanban em organizações. Um excelente artigo sobre ele pode ser encontrado aqui no LinkedIn do David Anderson.
  2. KMM, que é um modelo de maturidade organizacional baseado em sistemas Kanban.

Livro chave:

Management 3.0

O Management 3.0 é uma coleção de jogos, ferramentas e práticas em constante mudança para ajudar qualquer trabalhador do conhecimento a gerenciar o seu trabalho em organizações. Ele é uma maneira de ver os sistemas de trabalho em contextos complexos e melhorar esse sistemas.

O Management 3.0 é centrado em seis pilares.

  1. Energizar Pessoas: As pessoas são as partes mais importantes de uma organização e os gerentes devem fazer de tudo para manter as pessoas ativas, criativas e motivadas.
  2. Empoderar Equipes: As equipes podem se auto-organizar, e isso requer empoderamento, consentimento e confiança da gestão.
  3. Alinhar Restrições: A auto-organização pode levar a qualquer coisa e, portanto, é necessário proteger as pessoas, compartilhar recursos, dar às pessoas um propósito claro e metas definidas.
  4. Desenvolver Competências:  As equipes não podem alcançar seus objetivos se os membros da equipe não forem suficientemente capazes, e os gerentes devem, portanto, contribuir com o desenvolvimento de competências.
  5. Crescer a Estrutura: Muitas equipes operam em um contexto de uma organização complexa. E assim é importante considerar estruturas que favoreçam a comunicação.
  6. Melhorar Tudo: Pessoas, equipes e organizações precisam melhorar continuamente.

Publicado oficialmente em 2010 em Jurgen Appelo, o M3.0 teve grande receptividade no Brasil e hoje conta com uma forte comunidade de facilitadores e praticantes.  O portal Management 3.0 contém informações oficiais sobre esse método.

Livro Chave:

DevOps

O DevOps é um movimento cultural habilitado por práticas, técnicas e ferramentas e que tem por objetivo reduzir tempos de ciclo na entrega de produtos de TI, reduzir retrabalhos e habilitar a inovação organizacional.

O DevOps é baseado nos princípios do acrônico CALMS.

  • Cultura
  • Automação
  • Lean
  • Medições
  • Sharing (Compartilhamento de informações)

Na perspectiva mais pragmática, o DevOps é conhecido pelas seguintes práticas técnicas:

  • Automação de Testes
  • Integração Contínua
  • Entrega Contínua
  • Infraestrutura como código
  • DevSecOps
  • Engenharia do Caos

O portal IT Revolution, mantido por Gene Kim, um dos líderes desse movimento, possui uma coleção rica de informações e livros para você se aprofundar nessas práticas.

Mantenho também no meu blog diversos artigos sobre DevOps acessíveis a partir desse link: https://marco-mendes.com/devops/

Livro chave:

OKR – Objetivos e Resultados Chave

Esse é um método para lidar com o problema de definição e execução de metas. A definição de metas tradicional em exercícios de planejamentos estratégicos anuais, geralmente envolve declarações de objetivos criados em torres de marfim desconectadas da realidade operacional, mal comunicadas e cascateados de cima para baixo. Como consequência, a taxa de fracasso é alta.

O OKR, ao invés, é uma estrutura leve para definir e rastrear objetivos e seus resultados baseada em ciclos curtos (até 3 meses), envolvimento de todos na definição de metas e uma abordagem colaborativa para resolver e integrar dependências e conflitos.

O OKR traz como benefícios:

•Foco e disciplina: Poucos objetivos, gerando foco na organização;
•Alinhamento entre equipes: Interdependências funcionais entre os times integradas e resolvidas pelo método;
•Transparência: Todos os OKRs são públicos e possibilitam um alinhamento entre os objetivos e a visão da empresa;
•Gestão e Performance : Os OKRs são acompanhados em base periódica pelos próprios times que definiram as metas;
•Accountability: Todos passam a ser responsáveis por seus objetivos, com critérios claros de sucesso, conhecidos por toda a empresa;
• Centrado em dados: Os resultados chave são quantitativos e centrados em métricas acionáveis (ao invés de métricas de vaidade).
O portal What Matters traz uma rica coleção de recursos sobre OKR. No Brasil, recomendo também o portal do Felipe Castro, pioneiro de OKR no Brasil.

Livro Chave:

Modelo de Fluência Ágil

O modelo de Fluência Ágil ajuda os times a entender onde eles estão em termos de seus próprios objetivos, e entender o que é relevante para o seu contexto e necessidades específicas.
Esse modelo é resumido no seguinte esquema e define um conjunto de práticas e ferramentas que podem tornar uma organização fluente em um dos  possíveis níveis do modelo (nível 1 a 4).
O modelo de fluência ágil não é um modelo de maturidade, mas um mecanismo que permite que empresas possam escolher uma jornada de agilidade apta aos seus propósitos. Esse modelo usa outros métodos como Kanban, Scrum, XP ou DevOps dentro das suas jornadas específicas.
Um excelente artigo sobre o modelo é descrito aqui e foi escrito pelos seus criadores, James Shore and Diana Larsen. E você encontra muito material legal aqui no portal do Agile Fluency também.

Agile BOSSA Nova

O BOSSA é uma abordagem para agilidade organizacional, combinando as seguintes práticas de agilidade de negócio.

  • BB – Beyond Budgeting (orçamentos adaptáveis e flexíveis). Esse é um método de orçamentação moderno que habilita a tomada rápida de decisões em contextos complexos. Recomendo esse portal aqui com mais informações sobre o BB.
  • Open Space (abordagem para habilitar o poder da inovação de todos os funcionários),
  • Sociocracia 3.0 (estrutura organizacional flexível que permite a tomada de decisão descentralizada). Mais informações podem ser encontradas aqui no portal oficial.
  • Agilidade (aprendizado contínuo por meio de experimentos e feedback).
O portal Agile Bossa Nova traz uma rica coleção de recursos para quem quiser conhecer essa abordagem em mais detalhes.
Livro Chave:

Estruturas Libertadoras (LISA ou Liberating Structures)

As estruturas libertadoras são micro-estruturas narrativas que aprimoram a coordenação e a confiança entre as pessoas de uma empresa. Eles rapidamente estimulam a participação ativa de grupos de qualquer tamanho, tornando possível incluir e liberar o potencial de todos os participantes. Estruturas libertadoras são uma alternativas a abordagens de reuniões mais controladoras ou restritivas.
Em termos objetivos, elas são práticas para você conduzir encontros de trabalho no seu dia a dia. São técnicas de facilitação poderosas para apoiar grupos de trabalho a alcançar objetivos específicos em períodos curtos de tempo.
Um resumo dessas estruturas é mostrada na figura abaixo.
O portal do LISA contém uma explicação detalhada dessas estruturas. Existe também um APP móvel que considero muito útil e que disponível aqui na loja da Google Play.
Livro Chave:

Cynefin (leia Kinevin)

Esse modelo foi desenvolvido ainda em 1999 por Dave Snowden para ajudar líderes a compreender melhor o ambiente organizacional onde estão inseridos, e com base nisso, tomar decisões mais apropriadas.
Em termos práticos, o Cynefin é uma ferramenta de análise situacional e que permite qual o tipo de domínio onde as narrativas da sua empresa ocorrem. Os domínios possíveis estão listados abaixo (simples, complicado, complexo ou caótico). Dentro de cada domínio, o Cynefin sugere ferramentas apropriadas para aquele contexto.
O portal Cognitive Edge, mantido pelo Dave Swoden e associados, possui uma rica coleção de recursos e ferramentas ligadas ao ecossistema do Cynefin.

Modern Agile

O Modern Agile é uma comunidade para pessoas interessadas em descobrir melhores maneiras de obter resultados melhores para potencializar a agilidade de negócio. Ele aproveita a sabedoria de muitas indústrias, é orientado por princípios e não possui uma estrutura prescritiva.
Os princípios fundamentais dessa abordagem são resumidos na figura abaixo.
O site oficial do Modern Agile apresenta também as práticas emergentes dessa abordagem.

Heart of Agile

O Heart of Agile é um movimento liderado por Allistair Cockburn e que compila a experiência duas décadas de práticas ágeis dentro do modelo minimalista abaixo.
Esse movimento é um retorno à essência do manifesto ágil e pode ajudar você a descobrir a essência do Scrum, sem cair nas complicações e regras excessivas que foram adotadas pelos guias Scrum nos últimos anos.
O portal Heart of Agile conta também com uma coleção rica de recursos sobre esse movimento e apresentações do Cockburn.

Shiftup

O movimento Shiftup é uma nova marca de workshops, criada por Jurgen Appelo, que abraça a inovação contínua e a agilidade dos negócios como ponto de partida para a mudança organizacional.

O Shiftup é um programa para inovação contínua. Ele oferece um conjunto dinâmico de regras e modelos simples para as organizações se transformarem continuamente. Duas de suas regras fundamentais são colocadas abaixo.

  1. Cada idéia inovadora que evolui para um negócio de sucesso (seja um fluxo de valor individual ou um modelo de negócios inteiro) segue uma progressão natural dos estágios do ciclo de vida ou dos níveis de maturidade.

2.  A abordagem iterativa e incremental da inovação contínua (promovida pelos métodos Agile, Lean, Design Thinking e Lean Startup) se aplica a todos os fluxos de valor e modelos de negócios em todos os estágios do ciclo de vida.

O modelo conceitual é apresentado no esquema abaixo e esse e outros recursos de apoio se encontram no portal Shiftup.Work

Livro chave:

Lean Inception

O Lean Inception é um workshop colaborativo para alinhar um grupo de pessoas sobre o produto mínimo viável a ser construído. Ele é inspirado nos seguintes conceitos, modelos e processos:

  • Lean Startup e MVP
  • Iniciação do Processo Unificado da Rational
  • Design Thinking
  • User Centric Design

Similar à ideia do Design Sprint popularizada pela Google, o Lean Inception obteve uma boa tração no Brasil e tem sido usado por muitas empresas para realizar iniciações ágeis mais efetivas.

O portal do Paulo Caroli, pai do Lean Inception, contém muito mais informações ricas sobre esse workshop.

Livro Chave:


Vejo essa diversidade com bons olhos pois nenhum método é completo e perfeito.

“Não desenvolva apego a nenhum arma ou escola de combate”,
Samurai Miyamoto Musashi, Século 17

Eles são abstrações apenas e uma combinação efetiva deles pode ser interessante dentro da sua realidade. Espero que alguns desses modelos lhe possam ser úteis.

Existem muitos mais modelos de agilidade de negócio e ficaria feliz com feedbacks de outros modelos que não foram contemplados aqui.

Um feliz 2020 repleto de agilidade de negócio para você e até a próxima.
😀