Globalcode – Open4education
< otimização prematura
vs
dívida técnica >
Slide 15
Slide 15 text
Globalcode – Open4education
Slide 16
Slide 16 text
Globalcode – Open4education
Slide 17
Slide 17 text
Globalcode – Open4education
Seus testes de aceitação
são automatizados?
Questionamento.
Slide 18
Slide 18 text
Globalcode – Open4education
Seguimos algum padrão
na escrita de testes de
aceitação?
Questionamento.
Slide 19
Slide 19 text
Globalcode – Open4education
Sugestão: PO + QA
Slide 20
Slide 20 text
Globalcode – Open4education
Slide 21
Slide 21 text
Globalcode – Open4education
Slide 22
Slide 22 text
Globalcode – Open4education
“Melhor não mexer no
código, não faço idéia de
como funciona, só fulano
conhece ele.”
Um desenvolvedor por aí.
Slide 23
Slide 23 text
Globalcode – Open4education
“Estão sabendo?
Ciclano pediu demissão, quem
dará manutenção agora? Vai
sobrar para nós!”
Outro desenvolvedor por aí.
Slide 24
Slide 24 text
Globalcode – Open4education
“Temos uma dependência no
sistema que fulano domina.
Ele anda ocupado e
precisamos continuar com a
demanda...
Mais um desenvolvedor por aí.
Slide 25
Slide 25 text
Globalcode – Open4education
“Impedimentos”
Slide 26
Slide 26 text
Globalcode – Open4education
Slide 27
Slide 27 text
Globalcode – Open4education
Slide 28
Slide 28 text
Globalcode – Open4education
Slide 29
Slide 29 text
Globalcode – Open4education
Como nossos times
trabalham a
programação pareada?
Questionamento.
Slide 30
Slide 30 text
Globalcode – Open4education
Transcenda a
programação pareada!
Experimente!
Slide 31
Slide 31 text
Globalcode – Open4education
Sugestão: PO + QA
Slide 32
Slide 32 text
Globalcode – Open4education
Sugestão: DEV + QA
Slide 33
Slide 33 text
Globalcode – Open4education
Slide 34
Slide 34 text
Globalcode – Open4education
Slide 35
Slide 35 text
Globalcode – Open4education
“O que ciclano estava
pensando quando fez isso?
Está difícil de entender essa
código!”
Mais uma “vítima” do código alheio.
Slide 36
Slide 36 text
Globalcode – Open4education
“Este código é o mapa do
inferno! Nem sei por onde
começar e tenho que
analisar para ontem.”
Outra “vítima” do código alheio.
Slide 37
Slide 37 text
Globalcode – Open4education
Estabeleça um padrão!
Os desenvolvedores agradecem. :)
Slide 38
Slide 38 text
Globalcode – Open4education
Dicas para a próxima
segunda-feira...
• Crie style guide para código
• Java, Python, JS...
• Crie style guide para commits
• GitCop
• Utilize lint para verificar seus códigos
• Inclua na sua pipeline de CI
• …
• ...
• Revise os pontos anteriores periodicamente!
Slide 39
Slide 39 text
Globalcode – Open4education
Slide 40
Slide 40 text
Globalcode – Open4education
Slide 41
Slide 41 text
Globalcode – Open4education
“Não temos tempo para
refatorar essa parte, faça o
mais simples mesmo!”
Tempo inimigo do desenvolvedor.
Slide 42
Slide 42 text
Globalcode – Open4education
“Não mexa no que está
funcionando! Se não deu
problema até hoje,
provavelmente não dará.”
Melhorar? Deixa assim mesmo.
Slide 43
Slide 43 text
Globalcode – Open4education
Estabeleça tempo para o
time melhorar o código!
O desenvolvedor e seu produto
agradecem. :P
Slide 44
Slide 44 text
Globalcode – Open4education
- Didático
- Bad smells vs
refactoring
- Ferramenta para
facilitação no time
Slide 45
Slide 45 text
Globalcode – Open4education
Slide 46
Slide 46 text
Globalcode – Open4education
Slide 47
Slide 47 text
Globalcode – Open4education
Build: 10 minutos, 30
minutos, a cada hora, a
cada commit,
diariamente.
Código sempre pronto!
Slide 48
Slide 48 text
Globalcode – Open4education
< “R.I.P.” GMUD >
Confiança! A base das relações
humanas.
Continuous
Deploy
Continuous
Integration
Continuous
Delivery
Slide 49
Slide 49 text
Globalcode – Open4education
Slide 50
Slide 50 text
Globalcode – Open4education
Slide 51
Slide 51 text
Globalcode – Open4education
< código mais simples
vs
solução mais simples >
Tem diferença!
Slide 52
Slide 52 text
Globalcode – Open4education
“test && commit || revert” by Kent Beck
Outra alternativa...
Slide 53
Slide 53 text
Globalcode – Open4education
Slide 54
Slide 54 text
Globalcode – Open4education
< Sprint até meia-noite?
>
Slide 55
Slide 55 text
Globalcode – Open4education
Slide 56
Slide 56 text
Globalcode – Open4education
“Thoughts:
XP Revisited”
(Ron Jeffries)
Slide 57
Slide 57 text
Globalcode – Open4education
Referências
[Ron Jeffries] Developers Should Abandon Agile
[Kent Beck] eXtreme Programming Explained:
Embrace Change
[Vinícius Teles] Extreme Programming
[Daniel Wildt et al.] eXtreme Programming: Práticas
para o dia a dia no desenvolvimento ágil de software
[Maurício Aniche] Test-Driven Development: Teste e
Design no Mundo Real
[Version One] 12th Annual State of Agile Report
Slide 58
Slide 58 text
Globalcode – Open4education
< Referências >
[Ron Jeffries] Developers Should Abandon Agile
[Kent Beck] eXtreme Programming Explained:
Embrace Change
[Vinícius Teles] Extreme Programming
[Daniel Wildt et al.] eXtreme Programming: Práticas
para o dia a dia no desenvolvimento ágil de software
[Maurício Aniche] Test-Driven Development: Teste e
Design no Mundo Real
[Version One] 12th Annual State of Agile Report
Slide 59
Slide 59 text
Globalcode – Open4education
< Referências >
[Joshua Partogi] 5 reasons why eXtreme Programming
isn’t popular
[Ron Jeffries] Thoughts: XP Revisited
[Kent Beck] test && commit || revert
[QWAN] Quality Without A Name
[Martin Fowler] Continuous Integration