82
Kanban Kanban Aplicando TDD à melhoria Aplicando TDD à melhoria contínua do seu processo contínua do seu processo Rodrigo Yoshima

Kanban: Aplicando TDD à melhoria contínua do seu processo

Embed Size (px)

DESCRIPTION

Palestra ministrada no QCon São Paulo sobre métricas e

Citation preview

Page 1: Kanban: Aplicando TDD à melhoria contínua do seu processo

KanbanKanbanAplicando TDD à melhoriaAplicando TDD à melhoriacontínua do seu processocontínua do seu processoRodrigo Yoshima

Page 2: Kanban: Aplicando TDD à melhoria contínua do seu processo

liderançapessoas

gestãoriscos | valor

Page 3: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 4: Kanban: Aplicando TDD à melhoria contínua do seu processo

Caótico

Complexo Complicado

Simples

Cynefin Framework

Page 5: Kanban: Aplicando TDD à melhoria contínua do seu processo

Caótico

Complexo Complicado

(analizar)

Simples

(classificar)

Cynefin Framework

Page 6: Kanban: Aplicando TDD à melhoria contínua do seu processo

Caótico

Complexo Complicado

(analizar)

Simples

(classificar)

Cynefin Framework

ORDENADOS

Page 7: Kanban: Aplicando TDD à melhoria contínua do seu processo

Caótico

Complexo

(experimentar)

Complicado

(analizar)

Simples

(classificar)

Cynefin Framework

ORDENADOS

Page 8: Kanban: Aplicando TDD à melhoria contínua do seu processo

Caótico

(agir)

Complexo

(experimentar)

Complicado

(analizar)

Simples

(classificar)

Cynefin Framework

ORDENADOS

Page 9: Kanban: Aplicando TDD à melhoria contínua do seu processo

Sistema

Complexo

Você só sabe se está certo ou errado depois de tentar.

Gestão por observação.

Assertividade é idiotice aqui.

Page 10: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 11: Kanban: Aplicando TDD à melhoria contínua do seu processo

O que é um sistema kanban...

Page 12: Kanban: Aplicando TDD à melhoria contínua do seu processo

geração de valor

Page 13: Kanban: Aplicando TDD à melhoria contínua do seu processo

visualização

Page 14: Kanban: Aplicando TDD à melhoria contínua do seu processo

sistemapuxado

Page 15: Kanban: Aplicando TDD à melhoria contínua do seu processo

limitado

Page 16: Kanban: Aplicando TDD à melhoria contínua do seu processo

pessoas!

Page 17: Kanban: Aplicando TDD à melhoria contínua do seu processo

KanbanMethod

transição | kaizen | gestão

kanbansystem

pull | limites | valor

Page 18: Kanban: Aplicando TDD à melhoria contínua do seu processo

Kanban Method princípios

começe com o que você já faz hoje

concorde em buscar uma abordagem evolucionária para mudança

inicialmente respeite papéis, responsabilidades e cargos estabelecidos

Page 19: Kanban: Aplicando TDD à melhoria contínua do seu processo

Kanban Method propriedades

visualize

limite o trabalho em progresso

meça e gerencie o fluxo

torne as políticas do processo explícitas

implemente mecanismos de feedback

melhore colaborativamente com métodos científicos

Page 20: Kanban: Aplicando TDD à melhoria contínua do seu processo

Kanban Method propriedades

visualize

limite o trabalho em progresso

meça e gerencie o fluxo

torne as políticas do processo explícitas

implemente mecanismos de feedback

melhore colaborativamente com métodos científicos

Page 21: Kanban: Aplicando TDD à melhoria contínua do seu processo

Por que mudanças são tão difíceis?

Page 22: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 23: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 24: Kanban: Aplicando TDD à melhoria contínua do seu processo

“Pessoas não resistem mudar,elas resistem serem mudadas”

Peter Senge

Page 25: Kanban: Aplicando TDD à melhoria contínua do seu processo

(Kanbanfall)

Page 26: Kanban: Aplicando TDD à melhoria contínua do seu processo

Kanban:

Como a água...

Page 27: Kanban: Aplicando TDD à melhoria contínua do seu processo

2nd Generation Agile

Segunda Geração

de Métodos Ágeis

Page 28: Kanban: Aplicando TDD à melhoria contínua do seu processo

Lean / KanbanLean / Kanban for Software Development for Software Development

Foco no modelo de transiçãoDesign do processo sob medida

Mudanças evolucionáriasAlcance em toda a empresa

Melhoria Contínua(baseada em modelos)

Page 29: Kanban: Aplicando TDD à melhoria contínua do seu processo

Cap

acid

ade

Revolução“Kaikaku”

Tempo

Status Quo

Novo Status Quo

Por que Kanban?Por que Kanban?

Page 30: Kanban: Aplicando TDD à melhoria contínua do seu processo

Cap

acid

ade

Revolução“Kaikaku”

Tempo

Evolução“Kaizen”

Status Quo

Novo Status Quo

Por que Kanban?Por que Kanban?

Page 31: Kanban: Aplicando TDD à melhoria contínua do seu processo

“Mude. Mas comece devagar, porque a direção é mais importanteque a velocidade.”

Clarisse Lispector

Page 32: Kanban: Aplicando TDD à melhoria contínua do seu processo

Uma implementação Kanban inicia mapeando a bagunça. Não mude o seu processo!

Page 33: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 34: Kanban: Aplicando TDD à melhoria contínua do seu processo

INICIO

Page 35: Kanban: Aplicando TDD à melhoria contínua do seu processo

Demanda de Falha Projeto: Xpto1

Cenário atual:

Demanda de Falha: 45%

Sem homologação produto

Cobertura testes desconhecida

Cenário desejado:

Demanda de falha: 20%

Pessoal de produto homologando

Melhor percepção de qualidade docliente

Plano de Ação:

- Reunião quinzenal para avaliação dos tickets de falha, usando Análise de causa raiz

- Implementar Pair Review

- Implementar Ncover

- Publicação somente após homologação do pessoal de produto

- Reservar 20% da capacidade para melhorias de testes e build

Page 36: Kanban: Aplicando TDD à melhoria contínua do seu processo

DEMANDA DE FALHA:65%!!!!!

Page 37: Kanban: Aplicando TDD à melhoria contínua do seu processo

DEMANDA DE FALHA:45%

Page 38: Kanban: Aplicando TDD à melhoria contínua do seu processo

DEMANDA DE FALHA:35%

Page 39: Kanban: Aplicando TDD à melhoria contínua do seu processo

DEMANDA DE FALHA:15%

Page 40: Kanban: Aplicando TDD à melhoria contínua do seu processo

Demanda de Falha Projeto: Xpto1

Cenário atual:

Demanda de Falha: 45%

Sem homologação produto

Cobertura testes desconhecida

Cenário desejado:

Demanda de falha: 20%

Pessoal de produto homologando

Melhor percepção de qualidade docliente

Plano de Ação:

- Reunião quinzenal para avaliação dos tickets de falha, usando Análise de causa raiz

- Implementar Pair Review

- Implementar Ncover

- Publicação somente após homologação do pessoal de produto

- Reservar 20% da capacidade para melhorias de testes e buildKAIZEN CONFIRMADO

Page 41: Kanban: Aplicando TDD à melhoria contínua do seu processo

改善Kaizen

(mudança para melhor)

Page 42: Kanban: Aplicando TDD à melhoria contínua do seu processo

Nem toda mudançaNem toda mudança é melhoria....é melhoria....

Page 43: Kanban: Aplicando TDD à melhoria contínua do seu processo

3 Leis do Uncle BobTest-Driven Development

1. Você não pode escrever código de produção que não seja fruto de fazer passar um teste unitário que falha.

2. Você não pode escrever num teste além do mínimo

necessário para o teste falhar; e erros que

compilação são falhas.

3. Você não pode escrever código de produção que seja além do necessário para

fazer o teste passar.

Page 44: Kanban: Aplicando TDD à melhoria contínua do seu processo

3 Leis do Yoshima para a Evolução do Processo3 Leis do Yoshima para a Evolução do Processo

1. Você não pode mudar seu processo sem uma motivação declarada com critérios objetivos.

2. Você não pode declarar uma motivação e critérios além do mínimo necessário para ter algum benefício econômico.

3. Você não pode mudar o processo além do mínimo necessário para alcançar os critérios objetivos.

Page 45: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 46: Kanban: Aplicando TDD à melhoria contínua do seu processo

Gargalo e WIP alto Projeto: Xpto2

Cenário atual:

Homologação é gargalo

Sem limites no Kanban

Imprevisibilidade

Cenário desejado:

Maior previsibilidade

Menor Risco (WIP menor)

Fluxo melhorado

Plano de Ação:

- Acordar um limite com o PO

- Parar de começar e começar a terminar

- Definir tipos de cartões que não precisam de homologação

Page 47: Kanban: Aplicando TDD à melhoria contínua do seu processo

NOVAS POLITICAS

LIMITES RESPEITADOS

Page 48: Kanban: Aplicando TDD à melhoria contínua do seu processo

SISTEMA MAIS PREVISIVEL E ESTÁVEL

PO CONFORTÁVELPARA AUMENTAR O

ESCOPO

Page 49: Kanban: Aplicando TDD à melhoria contínua do seu processo

Gargalo e WIP alto Projeto: Xpto2

Cenário atual:

Homologação é gargalo

Sem limites no Kanban

Imprevisibilidade

Cenário desejado:

Maior previsibilidade

Menor Risco (WIP menor)

Fluxo melhorado

Plano de Ação:

- Acordar um limite com o PO

- Parar de começar e começar a terminar

- Definir tipos de cartões que não precisam de homologação

KAIZEN CONFIRMADO

Page 50: Kanban: Aplicando TDD à melhoria contínua do seu processo

Como assim um Kanban sem limites?

Page 51: Kanban: Aplicando TDD à melhoria contínua do seu processo

Kanban não é sobre “certo ou errado”

visualize

limite o trabalho em progresso

meça e gerencie o fluxo

torne as políticas do processo explícitas

implemente mecanismos de feedback

melhore colaborativamente com métodos científicos

raso

profundo

Page 52: Kanban: Aplicando TDD à melhoria contínua do seu processo

There's no judgement There's no judgement in Kanbanin Kanban

David J. AndersonDavid J. Anderson

Page 53: Kanban: Aplicando TDD à melhoria contínua do seu processo

Throughput = Leadtime

Work-in-progress

Throughput Leadtime =

Work-in-progress

Little's Law

Page 54: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 55: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 56: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 57: Kanban: Aplicando TDD à melhoria contínua do seu processo

LEAD TIME

Page 58: Kanban: Aplicando TDD à melhoria contínua do seu processo

Como usar o Lead time Control Chart

9

8

7

6

5

4

3

2

1

Dias

Page 59: Kanban: Aplicando TDD à melhoria contínua do seu processo

Throughput

Page 60: Kanban: Aplicando TDD à melhoria contínua do seu processo

Como usar o Throughput

9

8

7

6

5

4

3

2

1

Itens01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 Semana

Page 61: Kanban: Aplicando TDD à melhoria contínua do seu processo

Como usar o Throughput

9

8

7

6

5

4

3

2

1

Itens01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 Semana

Page 62: Kanban: Aplicando TDD à melhoria contínua do seu processo

Como usar o Throughput

9

8

7

6

5

4

3

2

1

Itens01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 Semana

Page 63: Kanban: Aplicando TDD à melhoria contínua do seu processo

Lidando com a Variabilidade

Page 64: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

42Implementação Em

Homologação

44 46 44 MVP

Page 65: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

42Implementação Em

Homologação

44 46 44 MVP

Page 66: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

42Implementação Em

Homologação

44 46 44 Produção

Demanda de Falha

Page 67: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

42Implementação Em

Homologação

44 46 44 Produção

Page 68: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

42Implementação Em

Homologação

44 46 44 Produção

Droga! Não tenho maisprevisibilidade nasdemandas de valor!

Page 69: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

42Implementação Em

Homologação

44 46 44 Produção

49

47

Page 70: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

42Implementação Em

Homologação

44 46 44 Produção

49

47Hum...

Leadtime médio: 4 diasThroughput: 6 por semana

Page 71: Kanban: Aplicando TDD à melhoria contínua do seu processo
Page 72: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

42Implementação Em

Homologação

44 46 44 Produção

49

47 Droga! Tenho demandasespeciais urgentes!

Page 73: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

43Implementação Em

Homologação

44 46 44 Produção

9

46

41

Page 74: Kanban: Aplicando TDD à melhoria contínua do seu processo

PróximasDemandas

Levantamentocom usuário Aguardando

Produção

43Implementação Em

Homologação

44 46 44 Produção

9

46

41

Pessoal, nova política do processo! Cartão Azul é

sempre prioritário!

Page 75: Kanban: Aplicando TDD à melhoria contínua do seu processo

Kanban: Perfis da demanda para lidar com o risco

Cost-of-delay● Expedite● Fixed-date● Normal● Intangible

Mercado● Table Stakes● Spoiler● Differentiator● Cost Saver

Arquitetura● Arroz/Feijão● Já fizeram, tem cases● Já fizeram, sei lá como● Nunca tentado em TI

Outros...

Page 76: Kanban: Aplicando TDD à melhoria contínua do seu processo

Práticas Ágeis(by the book)

O que eu façohoje

Page 77: Kanban: Aplicando TDD à melhoria contínua do seu processo

Práticas Ágeis(by the book)

O que eu façohoje

Cargo Cult

Page 78: Kanban: Aplicando TDD à melhoria contínua do seu processo

O que eu façohoje

Práticas Ágeis(by the book)

O que é melhor no meu

Contexto

Page 79: Kanban: Aplicando TDD à melhoria contínua do seu processo

O que eu façohoje

Práticas Ágeis(by the book)

O que é melhor no meu

Contexto

Kanban

Page 80: Kanban: Aplicando TDD à melhoria contínua do seu processo

Resumo

Se encontrar resistência emocional, crie um sistema de forma que os problemas se tornem visíveis e engaje o grupo emocionalmente na

mudança.

Page 81: Kanban: Aplicando TDD à melhoria contínua do seu processo

“O problema nunca é falta de processo.”

Rodrigo Yoshima

Page 82: Kanban: Aplicando TDD à melhoria contínua do seu processo

Obrigado!Rodrigo Yoshimablog.aspercom.com.br@rodrigoy

Participe do Agile Brazil!!!

Accredited Lean-Kanban University TrainingDias 31 de agosto e 1 de setembrohttp://www.agilebrazil.com/