Extreme pair programming

34
Extreme Pair Programming Juliano Ribeiro Agile Coach/Trainer

Transcript of Extreme pair programming

Page 1: Extreme pair programming

Extreme Pair Programming

Juliano RibeiroAgile Coach/Trainer

Page 2: Extreme pair programming

São Paulo Curitiba Maringá

A Empresa

Desenvolvimento de Software CustomizadoConsultoria e Treinamento em Métodos Ágeis

Page 3: Extreme pair programming

Alguns Clientes

Page 4: Extreme pair programming

Juliano Ribeiro• Desenvolvedor desde 1994• Pós-graduado em POO com Java• Certified Scrum Professional pela Scrum Alliance• Licensed Learning 3.0 Facilitator• Certified Delphi Developer pela Embarcadero• Professor de métodos ágeis na Faculdade Cidade Verde• Agile Coach na Objective Solutions• Organizador do Agile Tour desde 2010

– 2015 em São Paulo, Maringá, Cascavel, Londrina, Paranavaí, Rio de Janeiro e Curitiba

• Palestrante regular nas principais conferências sobre agilidade no Brasil– Agile Brazil, Agile Trends, The Developers Conference, DevInSantos, DevCamp,

Linguágil, Scrum Gathering Equador, Scrum Gathering Rio

Page 5: Extreme pair programming
Page 6: Extreme pair programming

WHAT’S A PAIR?A set of two things of same nature

Page 7: Extreme pair programming

WHAT’S PROGRAMMING?To elaborate a computer program; to implement

Page 8: Extreme pair programming

What’s pair programming?

Page 9: Extreme pair programming

More about pair programming

Two programmers

Working in the same computer

Solving the same problem

Page 10: Extreme pair programming

Como funciona?

Pilot Navigator

Page 11: Extreme pair programming

Regras

Page 12: Extreme pair programming

SOME MYTHS ABOUTPAIR PROGRAMMING

Page 13: Extreme pair programming

Unproductive?

Page 14: Extreme pair programming

invasion of privacy?

Page 15: Extreme pair programming

tiresome?

Page 16: Extreme pair programming

Sacred?

Page 17: Extreme pair programming

MAIN EXCUSES AGAINST PAIR PROGRAMMING

Page 18: Extreme pair programming

I don’t need pair

programming, I can do it by

myself!

Page 19: Extreme pair programming

No one can contribute to my work. I know and have everything I

need.

Page 20: Extreme pair programming

I don’t like people

looking at my screen.

Page 21: Extreme pair programming

Advantages

• Learning• Mutual Motivation• Standardization• Bug reduction• Proximity

Page 22: Extreme pair programming

O todo é maior que a soma das partes

Page 23: Extreme pair programming

More advantages

• Comunication• Fast problem solving• Focus• Best use of the time• Less interruptions

Page 24: Extreme pair programming

DISSEMINAÇÃO DE CONHECIMENTO

Page 25: Extreme pair programming

NEM TUDO SÃO FLORES

Page 26: Extreme pair programming
Page 27: Extreme pair programming
Page 28: Extreme pair programming
Page 29: Extreme pair programming
Page 30: Extreme pair programming

More problems

• Task that don’t demand pairing• To deal with personalities• Someone always do more• Full time

Page 31: Extreme pair programming

Limited Wip

Page 32: Extreme pair programming

1 2 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 6 7 8 9 102011 2012 2013 2014

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

Pair ProgrammingVERDADEIRO FALSO

Page 33: Extreme pair programming

Pair diferente de 1+1

Pair ≠ 1+1Pair > 1+1

Page 34: Extreme pair programming

Obrigado

@JulianoRibeirojuliano.ribeiro@objective.com.brwww.julianoribeiro.com.br