Programação ExtremaParear é um pouco mais
que sentar ao lado
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Michel CordeiroCoordenador de Desenvolvimento/Projetos
@code_shell
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Mini Bio: Sou Agilista, Coordenador de Projetos e Analista de Processos de Negócio, um apaixonado por essas áreas há mais de 5 anos. Atuo no desenvolvimento de projetos, pessoas e processos.Certificações: CSPO, CSM
Qualificações:- Resolução de conflitos para representantes de empresas (ENAM/UnB)- Formação de Analista de Processos (Gart Capote)- Modelagem e Simulação de Processos (InnovoGroup)- MBA em Análise de Processos de Negócio (IGTI)- Gerenciamento de Projetos com base no PMBOK 4ª edição (TI Exames)- Instrutor de formação profissional (SENAI-MA)
@code_shell
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Agile
Espiral
FDD
XP
Lean
Crystal
RUP
DSDM RAD
SCRUM
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Programação Extrema
5 Valores
13 Princípios
1. Simplicidade2. Comunicação3. Feedback4. Coragem5. Respeito
1. Equipe Inteira ou Unida2. Jogos de Planejamento3. Entregas Curtas4. Testes de Cliente5. Propriedade Coletiva de código6. Padronização de Código7. Ritmo Sustentável8. Metáfora9. Integração contínua10. Desenvolvimento Orientado a Teste(TDD)11. Refatoração12. Design Simples13. Programação em Par
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Ward Cunningham e Kent BeckExtreme Programming
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Laurie Williams
Alistair CockburnArtigo: Costs and benefits of pair programming
University of Utah Computer Science (jan, 2000)
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Os estudos dizem…
Fonte: Costs and benefits of pair programming
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
• Redução de erros sutis no código…
• Revisão mais ampla do código…
• Oportunidade de compartilhar conhecimento…
• Construção da comunicação da equipe…
• Solução de problemas mais rápida…
• Várias pessoas tendo conhecimento ao final do
projeto…
• Aprendizado do trabalho em equipe…
• (…)
Benefícios
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Supletivo… Supletivo…
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Expectativa…
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Michel Cordeiro, CSPO, CSM, MBA
jcodeshell.wordpress.com
CUIDADO!!!
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
muita conversa falta foco
sem resultado desespero
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Existem Técnicas
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Nome da Prática Dificuldade de ImplantaçãoRelógio Xadrez Baixa
Pense Alto BaixaTécnica do Pomodoro Baixa
Sua ideia primeiro BaixaRegra dos 10 segundos Média
Ping-Pong Alta
Técnicas
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Relógio XadrezUsado para marcar quanto
tempo tem antes da próxima troca de posições.
Benefícios: Garante que sempre haja um piloto dominante no par e que os mesmos alternem na função.
Dificuldade: Baixa, basta um timer para marcação do tempo definido.
Fonte: Livro ThoughtWorks
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Pense AltoQuando alguém está pensando em como resolver o problema ele deve falar alto. Isso evita o silêncio e possibilita validar uma ideia antes de implementá-
la.Benefícios: Cria sinergia entre o par, melhorando, além de tudo, a comunicação.
Dificuldade: Baixa, basta colocar um post-it com a frase “Pense Alto” próximo ao monitor para lembrar. Além disso, basta se sentir confortável para compartilhar ideias.
Fonte: Livro ThoughtWorks
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Técnica do Pomodoro25 minutos trabalhando focado sem interrupções e 5 minutos
de relaxamento para verificação de e-mails e
coisas pessoais.Benefícios: A programação em par não é uma prisão. A técnica ajuda com coisas simples como ir ao banheiro, tomar um café e arejar a mente.
Dificuldade: Baixa, basta um timer para controlar os ciclos. Veja mais no site da técnica: http://pomodorotechnique.com
Fonte: Livro ThoughtWorks
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
A sua ideia primeiroQuando o par entra em conflito
sobre alguma coisa, um dos membros diz: “Vamos tentar a
sua ideia primeiro”.
Benefícios: Cria boa convivência e elimina disputas de ego. Ajuda a entender melhor outras soluções.
Dificuldade: Baixa, não precisa de esforço para implantar, basta ter entendido a técnica e aplicá-la.
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Regra dos 10 segundosToda vez que o navegador perceber que o piloto está fazendo algo
errado, ele conta mentalmente 10 segundos antes de interromper o piloto e diz: “Ta errado ali…”.
Benefícios: A boa aplicação desta técnica evita inimizades e permite fluidez e bom convívio entre os pares.
Dificuldade: Média, exige um controle de pensar e se policiar antes de falar.
Fonte: Livro ThoughtWorks
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Ping-PongO piloto começa e escreve um teste de falha do código. Os papéis são trocados e o objetivo do par é
fazer com que o teste que estava quebrando passe.
Benefícios: Ajuda os membros do par a terem um bom conhecimento do caminho a ser seguido.
Dificuldade: Alta, é necessário que pelo menos um dos membros tenha conhecimento em TDD.
Fonte: Livro ThoughtWorks
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Conclusão
Parear é uma abordagem muito poderosa que deve ser utilizada através de
técnicas com o objetivo de extrair o máximo de proveito possível para
potencializar os ganhos de seu uso.
Michel Cordeiro, CSPO, CSM, MBA
AGILE MARANHÃO
Referências
http://alistair.cockburn.us/Costs+and+benefits+of+pair+programming/v/slim
Livro: ThoughtWorks - Antologia Brasil, Histórias de aprendizado e inovação. Cap 8: Programação em par
Recommended