a linha de montagem de sw -n paulo caroli - qconsp 2010
DESCRIPTION
Esta palestra sobre “Agile Card Wall” explica esta abordagem única para a gestão e acompanhamento do desenvolvimento de software. Você vai aprender técnicas valiosas que podem ser aplicadas a qualquer empresa e equipe que procura melhorar a sua implementação Agil. Você vai descobrir como uma simples ferramenta que complementa as práticas, princípios e valores de Agile pode transformar sua organização. Nesta palestra voce vai entender como cartões na parede tornam conceitos básicos de Scrum, Lean e XP visíveis a todo time.TRANSCRIPT
Paulo Caroli Agile Coach
[email protected] Twitter: @paulocaroli
A linha de montagem de SW representada como cartões na parede
Agenda
• Workflow• Desenvolvimento de SW e Agile• Cartões na parede• Conceitos• Q&A
Workflow
Um fluxo de trabalho (workflow) é uma sequência de etapas e atividades de trabalho realizado por uma pessoa
ou uma equipe, para alcançar um objetivo específico.
Um fluxo de trabalho sequencial é um fluxo de trabalho onde cada etapa do trabalho depende
da fase anterior.
Etapa 1 Etapa 2 Etapa N Final Goal(Done)
Exemplos de Workflow
Workflow do Starbucks
Na Fila Caixa Barista Bebida Pronta
14
Na Fila Caixa Barista Bebida Pronta
15
Na Fila Caixa Barista Bebida Pronta
16
Na Fila Caixa Barista Bebida Pronta
17
Na Fila Caixa Barista Bebida Pronta
18
Na Fila Caixa Barista Bebida Pronta
A Workflow snapshot (instantâneo)
20
Na Fila Caixa Barista Bebida Pronta
Desenvolvimento de SW
Desenvolvimento de SW não é uma atividade altamente previsível nem repetitiva.
Desenvolvimento de SW é uma ativitade empírica!
“relativo aos médicos cuja habilidade derive da experiência prática e não da instrução da
teoria.” (Wikipedia)
Agile
Agile enfatiza o controle do processo empírico.
Inspect and adapt
Scrum’s sprint retrospectives
Lean’s kaizen
XP’s weekly iterations and short releases
Iterativo e Incremental
Incoming work
requirement
analysis
planning
design
integrating
deployed
testing
implementation
feedback
Iteration
Iteration
Iteration
Work backlog
Completed this iteration
Planned for this iteration
Completed in previous iterations
Completed this iteration
Completed this iteration
Completed in previous iterations
Planned for this iteration
Planned for this iteration
Work backlog
Entrega Incremental
32
func
tiona
lity
time
Tradicional
34
func
tiona
lity
time
35
func
tiona
lity
time
36
func
tiona
lity
time
Meses depois…
38
func
tiona
lity
time
Agile
40
func
tiona
lity
time
41
func
tiona
lity
time
42
func
tiona
lity
time
43
func
tiona
lity
time
“Pequenos Requisitos”
Pra cada pequeno requisito…
O workflow de desenvolvimento de SW
Analysis Design Code Test Deploy
um workflow sequencial…
1 2 3 4 5
A D C T R
Em métodos tradicionais, o workflow e o desenvolvimento são sequenciais
A D C T R
time
Tradicional
60
func
tiona
lity
time
A D C T R
Em Agile, o workflow é sequencial, mas o desenvolvimento é concorrente
Trabalhamos concorrentemente nos pequenos requisitos
Agile
63
A D C T R
A D C T R
A D C T R
A D C T R
A D C T R
func
tiona
lity
time
Concorrente, mas integrando continuamente…
Continuous Integration
66
Continuous Integration
A D C T R
A D C T R
A D C T R
A D C T R
A D C T R
func
tiona
lity
timeContinuous Integration
A linha de montagem de SW(comum para times usando Agile)
A D C T R
time
75
A D C T R
76
A D C T R
10
9
7
77
A D C T R
10
9
7
78
A D C T R
10
9
7
79
A D C T R
10
9
7
80
A D C T R
10
9
7
81
A D C T R
10
9
7
Um exemplo de Card Wall
In Dev In QA Signed Off
Backlog
10
5
9
31
18
17
21
4
7
51
12
John
Suzy
Paul
Amy
Dan
Outro exemplo de Card Wall
Doing DoneTo Do
10
5
9
3118
17
21
47
5
112
John
Suzy
Paul
Amy
Parâmetros Essenciais
87
A D C T B
A D C T B
A D C T B
A D C T B
A D C T B
Throughput
Latency
Bandwidth
func
tiona
lity
time
Doing DoneTo Do
10
5
9
3118
17
21
47
5
112
John
Suzy
Paul
Amy
Bandwidth
Doing DoneTo Do
10
5
9
3118
17
21
47
5
112
John
Suzy
Paul
Amy
Latency
10 10Day 1Day 6
Doing DoneTo Do
10
5
9
3118
17
21
47
5
112
John
Suzy
Paul
Amy
Day 1
Throughput
Day 2
Day 3
Outro exemplo:ninguém está pareando
In Dev In QA Signed Off
Backlog
10
5
9
31
18
17
21
45
112John
Suzy
Paul
Amy
Dan
Em que a Suzy está trabalhando?
In Dev In QA Signed Off
Backlog
10
5
9
31
18
17
21
45
112John
Suzy
Paul
Amy
Dan
In Dev In QA Signed Off
Backlog
10
5
9
31
18
17
21
4 5
112John
Suzy
Paul
Amy
Onhold
Dan
Informação Visível
Title…
Onhold
name
3
Some notes
Pairing
In Dev In QA Signed Off
Backlog
10
5
9 3118
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
Queue
In Dev In QA Signed Off
Backlog
10
5
9 3118
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
Qual é o estado do cartão #7?
In Dev In QA Signed Off
Backlog
10
5
9 3118
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
10
5
9
3118
17
21
4 7
5 1
12
John Suzy
Paul Amy
Dan
In Dev In QA Signed Off
Backlog Q
Equipe multi-funcional e pairing
10
5
9
3118
17
21
4
7
5
1
12
John Suzy
Paul Amy
Dan
In Dev In QA Signed Off
Backlog Q
10
5
9
3118
17
21
4
7
5
1
12
John Suzy
Paul Amy
Dan
In Dev In QA Signed Off
Backlog Q
10
5
9
3118
17
21
4
7
5
1
12
John Suzy
Paul
Amy
Dan
In Dev In QA Signed Off
Backlog Q
Movendo o trabalho
10
5
9 3118
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
In Dev In QA Signed Off
Backlog Q
10
5
9 3118
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
31
In Dev In QA Signed Off
Backlog Q
9
10
5
918
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
31
In Dev In QA Signed Off
Backlog Q
9
10
5
18
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
31
In Dev In QA Signed Off
Backlog Q
Pull System
319
Paul Amy
Down StreamUp Stream > Workflow >
9 31
Paul Amy 31
Down StreamUp Stream > Workflow >
99
Paul Amy 31
Down StreamUp Stream > Workflow >
9
Paul Amy 31
Down StreamUp Stream > Workflow >
Gargalo
9
10
5
18
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
31
In Dev In QA Signed Off
Backlog Q
9
10
5
1817
21
4
7
5 1
12
John Suzy
Paul
Dan31
Amy
In Dev In QA Signed Off
Backlog Q
Algum problema?
9
10
5
1817
21
4
7
5 1
12
John Suzy
Paul
Dan31
Amy
In Dev In QA Signed Off
Backlog Q
Limite
9
10
5
18
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
31
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
Pull System e Limites
319
Paul Amy
Down Stream(2)
Up Stream(X)
Workflow >(Y)
9 31
Paul Amy 31
Down Stream(2)
Up Stream(X)
Workflow >(Y)
99
Paul Amy 31
Down Stream(2)
Up Stream(X)
Workflow >(Y)
9
Paul Amy 31
Down Stream(2)
Up Stream(X)
Workflow >(Y)
9
Paul Amy 31
Down Stream(2)
Up Stream(X)
Workflow >(Y)
Get more work
9
Paul Amy 31
Down Stream(2)
Up Stream(X)
Workflow >(Y)
53
Pull System, Queue e Limites
9
10
5
18
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
31
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
80% done on Card #9
9
10
5
18
17
21
4
7
5 1
12
John Suzy
Paul Amy
Dan
31
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
9
10
5
18
17
21
4
7
5 1
12
John Suzy
Paul
Dan
31Amy
Amy
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
9
10
5
18
17
21
4
7
5 1
12
John Suzy
Paul
Dan
31
Amy
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
9
10
5
18
17
21
4
7
5 1
12
John Suzy
Paul
Dan
31
Amy5
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
9
10
5
18
17
21
4
7
1
12
John Suzy
Paul
Dan
31
Amy5
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
9
10
5
18
17
21
4
7
1
12
John Suzy
Paul
Dan
31
Amy5
7
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
9
10
5
18
17
21
4
1
12
John Suzy
Paul
Dan
31
Amy5
7
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
9
10
5
18
17
21
4
1
12
John Suzy
Paul
Dan
31
Amy5
7
Amy
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
9
10
5
18
17
21
4
1
12
John Suzy
Paul
Dan
31
5
7
Amy
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
9
10
5
18
17
21
4
1
12
John Suzy
Paul
Dan
31
5
7
9
Amy
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
10
10
5
18
17
21
4
1
12
John Suzy
Paul
Dan
31
5
7
9
Amy
In Dev (2)
In QA(1)
Signed Off
Backlog Q(2)
10
10
In Dev (2)
In QA(1)
Signed Off
Backlog
10
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
Mais sobre Queue e Limites
Doing DoneTo Do
10
5
9
3118
17
21
47
5
112
John
Suzy
Paul
Amy
Doing(4)
DoneTo Do
10
5
9
3118
17
21
47
5
112
John
Suzy
Paul
Amy
Doing(4)
DoneTo Do
10
5
9
3118
17
21
47
5
112
John
Suzy
Paul
Amy
priority
Doing(4)
DoneTo Do
10
59
3118
17
21
4
7
5
112
John
Suzy
Paul
Amy
Q(2)
WIP(4)
DoneTo Do
10
5
9
31
18
17
21
4
7
5
112
John
Suzy
Paul
Amy
P1(1)
P2(2)
WIP(4)
DoneTo Do
10
5
9
31
18
17
21
4
7
5
112
John
Suzy
Paul
Amy
P1(1)
P2(2)priority
Detalhando o trabalho
In Dev In QA Signed Off
Backlog
10
5
9
31
18
4
7
5112
In Dev In QA Signed Off
Backlog
12
In Dev In QA Signed Off
Backlog
12
In Dev In QA Signed Off
Backlog
12
In Dev In QA Signed Off
Backlog
12
In Dev In QA Signed Off
Backlog
1212
In Dev In QA Signed Off
Backlog
12
Outra forma
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
7
5
12
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
7
5
12
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
Bugs
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
Q(2)
Bug on Card #7
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
Q(2)
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
Q(2)
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
Q(2)
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
Q(2)
9
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
Amy
Q(2)
9
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
112
John Suzy
Paul
Dan
Q(2)
31
5
7
Amy
Q(2)
7
9
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
112
John Suzy
Paul
Dan
Q(2)
31
5
Amy
Q(2)
Mais Bugs
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
75
12
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
In DevIn QABacklog
10
5
9
3117
21
4
75
12
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
T
In DevIn QABacklog
10
5
9
3117
21
4
75
12
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
T
In DevIn QABacklog
10
5
9
3117
21
4
75
12
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
T
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
TT T T
T
Bugs de regressão (além dos cartões na parede)
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
Q(2)
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
Q(2)
111
10
In Dev (2)
In QA(1)
Signed Off
Backlog
5
18
17
21
4
1
12
John Suzy
Paul
Dan
Q(2)
31
5
7
9
Amy
Q(2)
111
Muitos bugs…
In DevIn QABacklog
10
5
9
3117
21
4
7
512
Specify Execute Done
T TTT
T T TT
TT
T T
T T T
Bugs
T
199
In Caixa Line
Caixa Barista Bebida Prontaready
200
Na Fila Caixa(1)
Barista(2)
Bebida Pronta(4)
Q(3)
Mais um exemplo…
Doing DoneTo Do
PPT
Q&A
Thank you!
Tips
Doing DoneTo Do
PPT
Q&A
Thank you!
Tips
Tips
Doing DoneTo Do
PPT
Q&A
Thank you!
Decida o que seus cartões representam
Refatore sua Agile Wall
Inspect and Adapt
Empower the team
Não se esqueça sobre os Big Visible Charts
A parede é 2D, pense em como adicionar
outras dimensões
Cuidado com a poluição visual
Complementado por ferramentas
Tips
Doing DoneTo Do
PPT
Q&A
Thank you!
Tips
Doing DoneTo Do
PPT
Q&A
Thank you!
Tips
Doing DoneTo Do
PPTQ&A
Thank you!
Obrigado!Perguntas?
A linha de montagem de SW representada como cartões na parede
Paulo Caroli Agile Coach
[email protected] Twitter: @paulocaroli