programação extrema na prática

36
Programação eXtrema na Prática Dairton Bassi [email protected]

Upload: dairton-bassi

Post on 18-Dec-2014

2.133 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Programação eXtrema na Prática

Programação eXtrema na Prática

Dairton Bassi [email protected]

Page 2: Programação eXtrema na Prática

www.neurobox.com.br

Ruby

.NetPython

JavaPHP

Page 3: Programação eXtrema na Prática

www.neurobox.com.br

“XP é sobre mudança social.”

Kent Beck

Page 4: Programação eXtrema na Prática

www.neurobox.com.br

Page 5: Programação eXtrema na Prática

www.neurobox.com.br

Ciclo de desenvolvimento

jogo do planejamento

Desenvolvimento(iteração)

entrega (demo)

RetrospectivaMelhoria

Page 6: Programação eXtrema na Prática

www.neurobox.com.br

Ciclo de desenvolvimento

jogo do planejamento

Desenvolvimento(iteração)

entrega (demo)

RetrospectivaMelhoria

Page 7: Programação eXtrema na Prática

www.neurobox.com.br

Ciclo de desenvolvimento

jogo do planejamento

Desenvolvimento(iteração)

entrega (demo)

RetrospectivaMelhoria

Page 8: Programação eXtrema na Prática

www.neurobox.com.br

Ciclo de desenvolvimento

jogo do planejamento

Desenvolvimento(iteração)

entrega (demo)

RetrospectivaMelhoria

Page 10: Programação eXtrema na Prática

www.neurobox.com.br

Jogo do planejamento

Page 11: Programação eXtrema na Prática

www.neurobox.com.br

Pair Programming

Page 12: Programação eXtrema na Prática

www.neurobox.com.br

Propriedade coletiva

Se eu perceber uma oportunidade para simplificar, consertar ou melhorar o código escrito por outra pessoa, peço autorização verbalmente ou por escrito?

Page 13: Programação eXtrema na Prática

www.neurobox.com.br

Testes?

Page 14: Programação eXtrema na Prática

www.neurobox.com.br

Testes?

okX

Page 15: Programação eXtrema na Prática

www.neurobox.com.br

Testes?

okX

okX

Page 16: Programação eXtrema na Prática

www.neurobox.com.br

Refatorações

Uma modificação no sistema que não altera o seu comportamento funcional, mas melhora sua estrutura interna.

Page 17: Programação eXtrema na Prática

www.neurobox.com.br

Olhando a interface

Conhecendo o código

Código refatorado

Page 18: Programação eXtrema na Prática

www.neurobox.com.br

Olhando a interface

Conhecendo o código

Código refatorado

Page 19: Programação eXtrema na Prática

www.neurobox.com.br

Olhando a interface

Conhecendo o código

Código refatorado

Page 20: Programação eXtrema na Prática

www.neurobox.com.br

Olhando a interface

Conhecendo o código

Código refatorado

Page 21: Programação eXtrema na Prática

www.neurobox.com.br

Cliente

Responsável por escrever “histórias”

Trabalha no mesmo espaço físico do grupo

Avalia as novas funcionalidades entregues

Dá feedback rapidamente

Solicita ou aprova mudanças

Page 22: Programação eXtrema na Prática

www.neurobox.com.br

Desenvolvedores

Desenvolvem o software.

Definem e refinam a arquitetura.

Testam o que foi desenvolvido.

Tiram dúvidas com o cliente.

Podem sugerir melhorias funcionais.

Colaboram para produzir software com valor agregado.

Page 23: Programação eXtrema na Prática

www.neurobox.com.br

Coach

Um desenvolvedor experiente

Identifica as habilidades da equipe

Lembra das regras do jogo (XP)

Eventualmente faz programação em pares

Não desenha arquitetura

Seu papel diminui com o tempo

Page 24: Programação eXtrema na Prática

www.neurobox.com.br

Tracker

Coleta estatísticas e as exibe

Mantém histórico do progresso

Alguns exemplos:

Número de histórias implementadas

Número de testes

Número de classes e linhas de código

Page 25: Programação eXtrema na Prática

www.neurobox.com.br

Build no monitor

Page 26: Programação eXtrema na Prática

www.neurobox.com.br

Área de Trabalho Informativa

Page 27: Programação eXtrema na Prática

www.neurobox.com.br

Área de Lazer Informativa

Page 28: Programação eXtrema na Prática

www.neurobox.com.br

Banheiro Informativo...

Page 29: Programação eXtrema na Prática

www.neurobox.com.br

O Ambiente

Page 30: Programação eXtrema na Prática

www.neurobox.com.br

Quadro de histórias

Page 31: Programação eXtrema na Prática

www.neurobox.com.br

Grande Órgão Público de SP

Apoio da gerência

Conhecimento técnico heterogêneo

Alguns estavam animados, alguns estavam apreensivos ...outros descrentes

Projeto complicado e problemático

A diretoria queria resultados palpáveis

Page 32: Programação eXtrema na Prática

www.neurobox.com.br

Um dia de um programador XP

Escolhe uma história do cliente

Procura um par livre

Escolhe um computador para programar

Discute as modificações recentes no sistema

Discute a história com o parceiro

Page 33: Programação eXtrema na Prática

www.neurobox.com.br

Um dia de um programador XP

Pensa em novos testes

Faz a implementação e os testes

Faz todos os testes passarem

Integra o novo código no repositório

Page 34: Programação eXtrema na Prática

www.neurobox.com.br

Várias vezes ao dia

Executa testes antigos

Busca oportunidades para simplificação

Modifica a implementação incrementalmente

Escreve novos testes

Faz todos os testes passarem

Integra novo código ao repositório

Page 35: Programação eXtrema na Prática

www.neurobox.com.br