10 maneiras de se dar mal com scrum e xp

24
10 maneiras de se dar mal com Henrik Kniberg - Crisp AB Mentor de Agile & cara de Java Scrum e XP Agile 2008 Toronto Co-fundador / CTO de Goyada (serviços de mobile) 30 desenvolvedores Arquitetro-chefe na Ace Interactive (jogos) 20 desenvolvedores Chefe de desenvolvimento na Tain (jogos) 40 desenvolvedores [email protected] +46 70 4925284 Tradução: Demetrius Nunes (www.demetriusnunes.com)

Upload: demetrius-nunes

Post on 17-Dec-2014

1.368 views

Category:

Technology


1 download

DESCRIPTION

Essa é a tradução para português brasileiro da apresentação do Henrik Kniberg, originalmente entitulada "10 ways to screw up with Scrum and XP" que foi apresentada no Agile 2008 em Toronto.

TRANSCRIPT

Page 1: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com

Henrik Kniberg - Crisp ABMentor de Agile & cara de Java

Scrum e XPAgile 2008Toronto

Co-fundador / CTO de Goyada (serviços de mobile)30 desenvolvedores

Arquitetro-chefe na Ace Interactive (jogos)20 desenvolvedores

Chefe de desenvolvimento na Tain (jogos)40 desenvolvedores

[email protected]+46 70 4925284

Tradução: Demetrius Nunes (www.demetriusnunes.com)

Page 2: 10 maneiras de se dar mal com Scrum e XP

Qualquer ferramenta pode ser mal usada

A antiga era

melhor!

2Henrik Kniberg

Page 3: 10 maneiras de se dar mal com Scrum e XP

Como usar os cartões de feedback

= Não é um problema para nós. Sério.

Quando você vir esse sinal:Vote!

3Henrik Kniberg 3

= Ai, que dor!

= Temos alguns problemas com isso.

Page 4: 10 maneiras de se dar mal com Scrum e XP

1: Acreditar na onda

Acreditar em mágica

Não estar disposto a mudar

Jogar fora o que funciona

Focar demais em Processos Perfeitos

Tentar acertar logo tudo desde o princípio

10 maneiras de se dar mal com Scrum e XP Vamos virar Agile! Oba!

Onde está o CD de instalação?

Não é um problema para nós.Sério

Ai, que dor!

4

Tentar acertar logo tudo desde o princípio

Culpar o mensageiro

Focar em ferramentas

Focar nos aspectos errados

Henrik Kniberg 4

Page 5: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com Scrum e XP

2: Definição de DONE

Não existe

Não é respeitada

Time não tem controle disso

Ver quem

está logado

100 usuários

simultâneos

Definição Padrão de Done

• ”Lançável”

Definição Padrão de Done

• Testes Unitários/Integração

Mas você falou que tava pronto!

5Henrik Kniberg 5

Definição Padrão de Done

• ”Lançável”

• Aprovado em testes de aceitação

• Notas do Release escritas

• Dívida técnica não aumentou

Definição Padrão de Done

• Testes Unitários/Integração

• Pronto para Testes de Aceitação

• Implantado no servidor de demo

= eu não pioreio código

Page 6: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com Scrum e XP

3: Velocidade

não se sabe

não é usada

é mal usada

marchas fúnebres

trapaceando

velocidade iô-iô

Qual sua velocidade?

Hein?!

300

Ver quem

está logado

100 usuários

simultâneos

5

3

8

mínimo

6

velocidade iô-iô

Henrik Kniberg6

EXEMPLO• Hoje é 6/ago• Duração do = 2 semanas• Velocidade = 30 a 40

O que estará pronto até o Natal?(10 sprints)

300

400PO

máximo

Page 7: 10 maneiras de se dar mal com Scrum e XP

Estimando velocidade sem histórico

Fatos:

• Tamanho do time = 6 pessoas

• Duração do sprint = 2 semanas

Estimativa:

• 2 pts = 6 hdi

Como X

Eu quero Y

Para que Z

Como X

Eu quero Y

Para que Z

Como X

Eu quero Y

Para que Z

8pts

2pts

3pts

Hmmm.... acho que ESSA história é de 6 homens-dia

ideais

10 maneiras de se dar mal com Scrum e XP

7

• Fator de foco: 50%

Cálculo:

• Dias úteis no sprint: 10 dias

• Homens-dia no sprint: 60 hd

• Homens-dia Ideais no sprint: 60 hd x 50% = 30 hdi

• Velocidade: 30 hdi / 3 = 10 pts / sprint

Henrik Kniberg7

Como X

Eu quero Y

Para que Z5pts

Page 8: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com Scrum e XP

4: Retrospectiva

não é feita

não resulta em propostas concretas de melhoria

mudanças não são executadas & avaliadas

pessoas indesejadas na reunião

membros do time ou PO não participam

time penalizado por mudanças que dão errado

Estamos com pressa, vamos começar o próximo

sprint logo!

8

time penalizado por mudanças que dão errado

Henrik Kniberg 8

Sprint

Velocidade

4 5 6 7 8 9 10 11 121 2 3 13

Page 9: 10 maneiras de se dar mal com Scrum e XP

Retrospectiva do SprintParte 1: O que aconteceu?

Joãodoente

Bug #25 Removidodo Sprint

Redeapagou

Mesas novasinstaladas

1a históriapronta paratestes

Demo daSprintGrande

discussãoTime

concentrado!

10 maneiras de se dar mal com Scrum e XP

9Henrik Kniberg9

Semana 1 Semana 2 Semana 3

Page 10: 10 maneiras de se dar mal com Scrum e XP

Retrospectiva do SprintPart 2: O que faremos dediferente no próximo Sprint?

10 maneiras de se dar mal com Scrum e XP

10Henrik Kniberg10

Page 11: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com Scrum e XP

5: ComprometimentoTime é pressionado

Time não senta junto

Time não registra & aprende

Sempre superestimando

Sempre subestimando

Velocidade = 0

Vocês tem que fazer mais!

Velocidade

Estimada

Velocidade

Real

40 30

30 28

30 33

30 30

Tá bom, a gente vai tentar.

11

Velocidade = 0

Não há ”folga”

Henrik Kniberg

30 30

Estimado Real

40 30

40 30

40 30

Estimado Real

40 30

50 30

60 30

Page 12: 10 maneiras de se dar mal com Scrum e XP

6: Dívida técnica

Deixando acumular

Ignorando

Consertando o produto mas não o processo

Re-fazer do zero

Nós não temos tempopara escrever testes

unitários ou refatorar o código!

Vmax

Vreal

Vmax

V

• Código duplicado• Falta de cobertura de testes• Código ilegível

10 maneiras de se dar mal com Scrum e XP

12Henrik Kniberg

velocidade

tempo

velocidade

tempo

Vreal

Ritmo sustentável!

Page 13: 10 maneiras de se dar mal com Scrum e XP

Lidando com dívida técnica

Vmax

Vreal

velocidade

Primeiro passoReduza o ritmo

Pare de acumular dívida técnica!

Segundo passo(se for economicamente viável)

Reduza ainda maisComece a pagar a dívida!

10 maneiras de se dar mal com Scrum e XP

13Henrik Kniberg

velocidade

tempo

Ritmo sustentável

Definição de Done

• .... bla bla ....

• Não há aumento da dívida técnica

Definição de Done

• .... bla bla ....

• Dívida técnica diminui

Page 14: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com Scrum e XP

7: Trabalho de Equipe

Papéis fixos

Backlogs pessoais

Ninguém ajuda ninguém

Política de incentivos pessoais

Bem, pelo menos eu terminei as minhas coisas!

14

pessoais

Tocando as histórias em paralelo

Interferência da gerência

Henrik Kniberg

Page 15: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com Scrum e XP

8: Backlog do Produto & Product Owner / Cliente

PBL não existe

PBL não é visível

Histórias grandes e/ou que nunca acabam

PO sem autoridade e/ou

Eu não tenho tempo de manter esse maldito

backlog!

PO

Ver quem

está logado

100 usuários

simultâneos

5

3

8

8

5

Backlog

15

PO sem autoridade e/ou conhecimento do domínio

Múltiplos POs em conflito

PBL não é mantido pelo PO

PO surpreso na demo do sprint

PO sendo um gargalo

PO não prioriza PBL

Henrik Kniberg

8

3

5

5

5

3

5

5

8

Page 16: 10 maneiras de se dar mal com Scrum e XP

V VV

V

Q32009

Jun2009

Mai2009

2010

2011

Abr2009

10 maneiras de se dar mal com Scrum e XP

16

2010

Q42009

2009

2012

2013

Henrik Kniberg

Page 17: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com Scrum e XP

9: Medo de Merge

não existe um branch ”Done”

não há política de branches

não há integração cedo e freqüente

não assumindo a responsabilidade

se escondendo atrás de branches

Merges são muito dolorosos, então a gente

faz merge o menos possível

17Henrik Kniberg

Me desculpe, mas

Você não consegue se tornar ágil sem

práticas de engenharia ágeis

Vai um XP aí?

Page 18: 10 maneiras de se dar mal com Scrum e XP

Controle de versão – múltiplos times

TrunkRegra:

Só o queestiverPRONTO!

m1

Sprint 1

m2

Release!

Dia 1 Dia 2 Dia 3 Dia 4 Dia 5 Dia 6

Guia

• Nada de lixo no trunk

• Trunk sempre ”lançável”

• Trunk quebrado = pára tudo!

• Merge a partir do trunk todo dia

• Copie para o trunk toda vez que uma

história for completada

http://www.infoq.com/articles/agile-version-control

10 maneiras de se dar mal com Scrum e XP

18

PRONTO!

Tempo

Time ARegra:

Testado unitariamente

a1 a2 a3

Time BRegra:

Testadounitariamente

b1 b2 b3

a4

Henrik Kniberg

Page 19: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com Scrum e XP

10: Backlog do Sprint/ quadro de tarefas

não existe

muito longe do time

muito complicado

não usado na Reunião Diária

não pertence ao time

Ah, você diz aquela coisa que o ScrumMaster fica

mexendo de vez em quando?

19

não pertence ao time

não tem gráfico burndown

não é atualizado diariamente

sinais de alertaignorados

Henrik Kniberg

Page 20: 10 maneiras de se dar mal com Scrum e XP

10 maneiras de se dar mal com Scrum e XP

Burndown

Unplanned items

Not

checked out Done! :o)

W r it e f a il in g t e s t

D A O

D B d e s i g n

In t eg r t es t

M i g r a t i o n

t o o l W ri t e f a i li n g t es t

G U I s p ec

T a p e st r y sp i k eI m p l .

m i g r a t io n

2 d

C od e

c l e a n u p

D e p o si t

2d1 d0.5d

1d

2 d

8d1 d

2d

2d

B ac k of f i c e

Logi n

Ba c k o f f i c e

Us e r a d m i n

W ri t e f a i li n g t es t

3 d

2 d

1 d2 d

Im p l G U I

1 d

In t eg r. wi t h J B o s s

2 d

W ri t e f a i li n g t es t

3 d

Im p l G U I

6d

C l a ri f y req u i re-m en t s

2d

G U I d e s i g n ( C S S )

1 d

F i x m e m o r y l e a k( J I R A 1 2 5 )2d

S a les s u p p o rt

3 d W r i t e w h it e p a p e r

4 d

SPRINT GOAL: Beta-ready release!

Next

W i t hdr awP e r f t e s tW i t h d r a w

checked out

Burndown

Sinais de alerta

20Henrik Kniberg 20

M e e t i ng w i t h

J o e

Page 21: 10 maneiras de se dar mal com Scrum e XP

É isso!

10 maneiras de se dar mal comScrum e XP

21

Ah, espere....

Ainda tem mais um...

Henrik Kniberg 21

Page 22: 10 maneiras de se dar mal com Scrum e XP

11: Preocupando-se demais com as outras 10

Vamos parar com esse negócio de ”agile”, já que a gente tá fazendo tudo

errado mesmo

Problemas são normais/esperados

Nunca pare de procurar pelos problemas

Não entre em pânico nem se desespere

Problema visível = problema tratável

= oportunidade de melhorar!

10 maneiras de se dar mal com Scrum e XP

22Henrik Kniberg

= oportunidade de melhorar!

Priorize e conserte os problemas – um a um!

Olhe para trás de vez em quando ese dê um tapinha nas costas

Page 23: 10 maneiras de se dar mal com Scrum e XP

Quer mais? Tente usar o Scrum Checklisthttp://www.crisp.se/scrum/checklist

10 ways to screw up with Scrum and XP

23Henrik Kniberg 23

Page 24: 10 maneiras de se dar mal com Scrum e XP

Veleje com prazer!

As pedras dão

mais emoção :o)

24Henrik Kniberg 24