A linha de montagem de sw Paulo Caroli - cb soft 2010 salvador

Post on 05-Dec-2014

1.437 views 0 download

description

 

Transcript of A linha de montagem de sw Paulo Caroli - cb soft 2010 salvador

Paulo Caroli Agile Coach

pcaroli@thoughtworks.comTwitter: @paulocaroli

A linha de montagem de SW representada como cartões na parede

Agenda

• Workflow

• Agile Incremental Delivery

• 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 BaristaBebida

Pronta

16

Na Fila Caixa Barista Bebida Pronta

17

Na Fila Caixa Barista Bebida Pronta

18

Na Fila Caixa Barista Bebida Pronta

19

Na Fila Caixa Barista Bebida Pronta

20

Na Fila Caixa Barista Bebida Pronta

A Workflow snapshot

(instantâneo)

22

Na Fila Caixa Barista Bebida Pronta

Agile Incremental Delivery

24

fun

ctio

na

lity

time

Tradicional

26

fun

ctio

na

lity

time

27

fun

ctio

na

lity

time

28

fun

ctio

na

lity

time

Meses depois…

30

fun

ctio

na

lity

time

Agile

32

fun

ctio

na

lity

time

33

fun

ctio

na

lity

time

34

fun

ctio

na

lity

time

35

fun

ctio

na

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

52

fun

ctio

na

lity

time

A D C T R

Em Agile, o workflow é sequencial,

mas o desenvolvimento é

concorrente

Trabalhamos concorrentemente

nos pequenos requisitos

Agile

55

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

fun

ctio

na

lity

time

Concorrente,

mas integrando continuamente…

Continuous Integration

Continuous Integration

58

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

fun

ctio

na

lity

time

A linha de montagem de SW

(comum para times usando Agile)

A D C T R

time

67

A D C T R

68

A D C T R

10

9

7

69

A D C T R

10

9

7

70

A D C T R

10

9

7

71

A D C T R

10

9

7

72

A D C T R

10

9

7

73

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

4

75

112

John

Suzy

Paul

Amy

Parâmetros Essenciais

79

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

fun

ctio

na

lity

time

Doing DoneTo Do

10

5

9

3118

17

21

4

75

112

John

Suzy

Paul

Amy

Bandwidth

Doing DoneTo Do

10

5

9

3118

17

21

4

75

112

John

Suzy

Paul

Amy

Latency

10 10Day 1Day 6

Doing DoneTo Do

10

5

9

3118

17

21

4

75

112

John

Suzy

Paul

Amy

Day 1Day 1

Throughput

Day 2Day 2

Day 3Day 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

On

hold

Dan

Informação Visível

Title…

On

hold

name

3

Some

notes

Pairing

In Dev In QA Signed

OffBacklog

10

5

9 3118

17

21

4

7

5 1

12

John Suzy

Paul Amy

Dan

Queue

In Dev In QA Signed

OffBacklog

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

OffBacklog

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

9

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

18

17

21

4

7

5 1

12

John Suzy

Paul Amy

Dan

31

In Dev In QA Signed

Off

Backlog Q

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

Dan

31

Amy

In Dev In QA Signed

Off

Backlog Q

Algum problema?

9

10

5

1817

21

4

7

5 1

12

John Suzy

Paul

Dan

31

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

Amy

5

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

Amy

5

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

Amy

5

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

Amy

5

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

Amy

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

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

4

75

112

John

Suzy

Paul

Amy

Doing

(4)

DoneTo Do

10

5

9

3118

17

21

4

75

112

John

Suzy

Paul

Amy

Doing

(4)

DoneTo Do

10

5

9

3118

17

21

4

75

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 T

TT

T

T T

TT T T

In DevIn QABacklog

10

5

9

3117

21

4

7

512

Specify Execute Done

T TTT

T T T

TT

T

T T

TT T T

In DevIn QABacklog

10

5

9

3117

21

4

7

512

Specify Execute Done

T TTT

T T T

TT

T

T T

TT T T

In DevIn QABacklog

10

5

9

3117

21

4

7

512

Specify Execute Done

T TTT

T T T

TT

T

T T

TT T T

In DevIn QABacklog

10

5

9

3117

21

4

7

512

Specify Execute Done

T TTT

T T T

TT

T

T T

TT T T

In DevIn QABacklog

10

5

9

3117

21

4

7

5

12

Specify Execute Done

T TTT

T T T

TT

T

T T

TT T T

In DevIn QABacklog

10

5

9

3117

21

4

7

5

12

Specify Execute Done

T TTT

T T T

TT

T

T T

TT T T

161

In Caixa

LineCaixa Barista Bebida Pronta

ready

162

Na FilaCaixa

(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

pcaroli@thoughtworks.comTwitter: @paulocaroli