16
Sep 12

Scrum Beyond the basics – palestra no Agile Brazil 2012

Na semana passada, fiz uma palestra falando um pouco do “beyond the basics” do Scrum na Globo.com. Gostaria de registrar os meus parabéns ao pessoal da comunidade Ágil de São Paulo, pois o evento esse ano foi show, muito bem organizado e com um excelente programa. A Globo.com, como não poderia deixar de ser, marcou forte presença!

Gravei a palestra em vídeo, mas como o auditório estava super cheio (ainda bem!) a filmagem não ficou legal :-(! Vou tentar salvar pelo menos o áudio e publico um podCast!

Slides:

Algumas fotos da minha palestra e do espaço da Globo.com no evento:

Agile Brazil 2012

Picture 1 of 28

 

 


29
Nov 11

Backlog ready: gerenciando o risco do seu planejamento

Recebi o Juan Bernabó na Globo.com, para dar uma volta no nosso ambiente de desenvolvimento. O Juan se surpreendeu com um indicador que temos usado há algum tempo para gerir os riscos do planejamento (ou da falta dele), o Backlog Ready. Esse indicador foi criado dentro da Globo.com, pelo Danilo Bardusco, e não estava documentado em lugar nenhum fora da Globo.com – então espero que esse post sirva para esse propósito.

Motivação

Um problema comum em organizações ágeis é o fenômeno de esvaziamento do product backlog. Isso pode acontecer porque o PO entrou de férias, licença médica, ou porque o mesmo estava muito ocupado fazendo outras coisas (esse é um sintoma de um outro problema, assunto para outro post!). Quando isso acontece, o time normalmente fica ‘faminto’ por histórias. Vão para o planning sem histórias definidas, e o processo de planning fica realmente sofrido.

Além disso, é saudável que o time conheça o seu terreno alguns sprints à frente – mesmo que o backlog mude. Evita o FUD (fear, uncertainty & doubt – medo, incertezas e dúvidas) que normalente se instala quando o time não conhece o seu futuro de curto prazo, minando a motivação e o ambiente de trabalho.

O conceito de ready

Há algum tempo atrás, o Serge Beaumont criou o conceito de READY, em conjunto com o Jeff Sutherland. É basicamente um checklist que serve para identificar itens de backlog que estão prontos para entrarem no sprint. O Serge criou esse conceito para garantir que as histórias que vão para o sprint planning tiveram três perguntas respondidas: Why? (porque), What? (o que) e How? (como), e além disso são pequenas o suficiente e foram estimadas. Nas palavras dele:

 READY is when the team says: ‘Ah, we get it’ ”. […] In the end a User Story is READY if a team can implement it, and a Product Owner can prioritize it.

Baseado nessa definição, é possível criar o nosso próprio conceito de READY. Na Globo.com, uma história está READY quando:

  • Está escrita no formato de user-story (Como <ator> quero <funcionalidade> para <valor de negócio>
  • Foi estimadas pelo time utilizando planning poker
  • Possui valor de negócio
  • Está priorizada
  • Possui critérios de aceite

O objetivo é garantir o entendimento das histórias pelo time. Na definição do Serge, qualquer item de backlog que não se encaixa nessas características não é faz parte do Product Backlog – e sim de um Product Parking Lot, pois está esperando que time em conjunto com o PO terminem de entender e discutir a história. Esse conceito foi criado como um complemento da Definition of Done.

A mecânica

Eu estou sempre preocupado com o custo de coleta das métricas. É preciso ser o mais pragmático e crítico possível em relação à métricas, pois uma relação custo x benefício ruim pode minar completamente o propósito de uma medição – além de que os números podem ser manipulados (gamed).

Esta métrica tem um custo de coleta baixíssimo: é só contar a quantidade de pontos que estão no seu backlog no antes do planning de cada sprint (pois inclusive as histórias que vão para o Sprint Backlog ainda são backlog, pois ainda não foram entregues), registrar esse número, e seguir em frente. Tem o custo de alguns segundos de atenção ao quadro.

O backlog ready está acoplado à velocidade do time, então para que o mesmo funcione direito, você também precisa medir a velocidade do seu time. A velocidade do time é determinada pela média aritimética dos pontos entregues nos 3 últimos sprints. É uma métrica básica do Scrum, que você inclusive já deve coletar.

Por exemplo:

Sprint n: entregamos 43 pontos
Sprint n+1: entregamos 30 pontos
Sprint n+2: entregamos 45 pontos

Sua velocidade no Sprint n+2 será:
(43 + 30 + 45) / 3 = 39 pontos (desprezando os decimais).

O gráfico de velocidade desse time ficaria assim:

Gráfico da evolução da velocidade de um time

Considere que antes do planning de cada sprint, esse era o status do backlog desse time:

pré-Sprint n: 150 pontos
pré-Sprint n+1: 107 pontos
pré-Sprint n+2: 77 pontos

O Backlog READY é um indicador numérico, com uma escala percentual de 0% a 100%, indicando o volume de histórias que estão prontas para entrar no Sprint Backlog e serem desenvolvidas, onde:

  • 0% significa que não existe nenhuma estória em estado READY;
  • 100% significa que há um volume adequado de estórias bem conhecidas e entendidas pelo time;

Toda vez que o indicador está abaixo de 100%, é um sinal que o buffer de segurança está esvaziando e em breve o time pode ficar faminto, sem histórias para trabalhar. Hora de crescer o backlog!

Na Globo.com, convencionamos que 100% é o equivalente a 3 vezes a velocidade do time, ou seja, temos histórias bem escritas e conhecidas pelo time, suficientes para alimentar 3 Sprints. Menos que isso costuma gerar falta de visão de curto prazo, enquanto que mais do que isso costuma gerar desperdício e re-trabalho pelas mudanças inerentes ao negócio.

Portanto, é válido analisar o contexto do seu negócio e descobrir o número ótimo para o seu caso, de acordo com a sua realidade de planejamento, disponibilidade do PO, envolvimento do cliente etc.

A equação para cálculo desse indicador é:

equação para cálculo backlog ready

A fórmula acima definida é a que utilizamos na Globo.com. O número 3 destacado é o que define os três Sprints que convencionamos, e que define o mínimo do nosso backlog ready. Para o time utilizado no exemplo acima, essa seria a evolução do seu backlog ready:

evolução do indicador backlog ready ao longo de vários sprints

No exemplo acima, o backlog ainda estava num nível aceitável no Sprint 2, porém no Sprint 3 ele precisa ser urgentemente trabalhado.

O ministério da saude adverte: métricas podem causar estragos gigantes! Use com moderação!

Cuidado! Eu tenho quatro guias gerais a respeito de métricas que gostaria de compartilhar:

  1. Não seja escravo delas. As métricas devem trabalhar pra você, e não o contrário;
  2. Use o bom senso;
  3. Questione sempre a validade da medição. Porque e para que estou medindo?
  4. Números podem e sempre serão manipulados (gamed). Se vacine contra isso usando as regras anteriores.

Transformando isso num sistema pull

Uma forma simples de utilizar esse número é criar um sistema pull de manutenção de backlog. Nos times em que trabalhei, uma reunião de estimativa era disparada sempre que o número de backlog ready caia para abaixo de 90%.

E foi dessa forma que a métrica foi criada, e é assim que a utilizamos na Globo.com. Espero que seja útil para você também! Qualquer dúvida/sugestão ou comentário, por favor faça abaixo.


25
Nov 11

Scrum não é suficiente – ultrapassando o básico

Finalmente consegui organizar o post inteiro. Agora está completo, com vídeo, slides e fotos. A palestra foi ministrada no dia 25/11/2011 no Agilidade na Prática/Agile Tour Recife 2011, no auditório do Porto Digital:

Começando com o vídeo:

Slides:

E por fim, fotos da palestra 🙂

Agilidade na prática

Picture 1 of 15


05
Sep 11

Abrace as incertezas: a Ilusão do controle

Na última segunda, 05/09, Palestrei no 4o Encontro Pernambucano de Gerenciamento de Projetos. Na minha palestra, falei sobre o que realmente importa em desenvolvimento ágil, como lidamos com as incertezas e porque vivemos numa ilusão quando achamos que temos controle das coisas. A palestra foi gravada, e o vídeo está abaixo:

 

 

Os slides já estão no slideshare:


04
Sep 11

4o encontro Pernambucano de Gerenciamento de Projetos

Amanhã, dia 05 de Setembro de 2011, estarei palestranto no 4o encontro Pernambucano de Gerenciamento de Projetos, evento promovido pelo chapter do PMI de Pernambuco (PMI-PE). Fiquei surpreso e ao mesmo tempo feliz de ter sido convidado para palestrar neste evento – feliz pelo fato de ser Pernambucano (apesar de já morar há 2 anos no Rio), e surpreso por que nunca tinha me visto palestrando num evento do PMI, principalmente depois de 2005/2006, que enveredei minha carreira para a área de Gestão Ágil de Projetos.

O título da minha palestra será ‘Abraçe as incertezas: A Ilusão do Controle no Mundo Ágil’, falarei um pouco sobre o que realmente importa na gestão de projetos ágeis. A organização do evento me autorizou a gravar a palestra, então ela estará aqui no blog no mais tardar até quarta-feira, e os slides, no slideshare, como sempre!

Site do evento: http://www.scarduatec.com.br/pmipe2011/

Divulgação na mídia: http://ubas.us/qtVcxH