O documento apresenta os principais pontos sobre entrega contínua discutidos por Daniel Castellani em uma palestra. Ele aborda conceitos como integração contínua, deploy automatizado, rollback automatizado e a importância de mudanças culturais para adotar práticas ágeis de entrega contínua. O documento também apresenta exemplos de como Netflix implementa deploy contínuo de forma automatizada e segura.
3. Daniel Castellani
• Mestre em Engenharia de Software, UFF 2012
– Prêmio: 2ª Melhor dissertação em Qualidade de
Software
•
•
•
•
Desenvolvedor de Software
Gerente de Projeto, Processo e PMO
Consultor
Professor de Computação, UFF
• Tech Tools – Schibsted – BomNegócio.com
UFF Tech 2013 - Daniel Castellani
5. Avaliação
• Capacidade de produção
• Tempo para a entrega
• Qualidade
UFF Tech 2013 - Daniel Castellani
http://dsicovery.com/catalyst-deemed-visionary-ediscovery-leader/
6. UFF Tech 2013 - Daniel Castellani
http://marketingandsalesguru.com/marketing-tactics-turning-satisfied-customers-into-loyal-customers/
7. UFF Tech 2013 - Daniel Castellani
http://www.escolafreelancer.com/5-passos-para-lidar-com-um-cliente-insatisfeito/
8. Causas e consequências
• Defeitos
• Correções
• Demora
• Processos engessados
• Erro na especificação
• Desconfiança
• Falta de confiança
• Desmotivação
UFF Tech 2013 - Daniel Castellani
9. Anti-padrões de Entrega
• Deploy manual
• Deploy para produção apenas após o
desenvolvimento estar completo
• Cofiguração manual dos ambientes
UFF Tech 2013 - Daniel Castellani
11. Agile
UFF Tech 2013 - Daniel Castellani
http://agiletrendsbr.com/2013/continuous-delivery/
12. Entrega Contínua
• Entregar pequenas partes
• Validar o que é entregue
• Feedback rápido
• Entregar sempre
UFF Tech 2013 - Daniel Castellani
13. Uma grande aventura
UFF Tech 2013 - Daniel Castellani
http://fremdeng.ning.com/profiles/blogs/food-for-thought-summer-reading-and-how-it-changed-the-way-i
14. Automatizar tudo, deve você.
UFF Tech 2013 - Daniel Castellani
http://starwars.wikia.com/wiki/Yoda
16. Construção Automatizada
• Preparação
• Compilação
• Testes
• Empacotamento
UFF Tech 2013 - Daniel Castellani
http://loopinfinito.com.br/2012/05/27/automatizando-o-deploy-com-rsync/
17. Integração Contínua
• Não é usar Jenkins
• Manual
vs
• Automática
UFF Tech 2013 - Daniel Castellani
http://patche-parloa.blogspot.com.br/2008/07/montagem-de-viaturas.html
18. Deploy Automatizado
•
•
•
•
Ambiente
Aplicação
Base de dados
Etc.
UFF Tech 2013 - Daniel Castellani
http://eco4u.wordpress.com/2010/11/25/cortes-orcamentarios-nos-eua-ameacam-empresas-espaciais/foguete-espacial-nasa-a0b12/
20. Continuous Delivery
• Entregar a qualquer momento
• Segurança em apertar o play
– Não tem? Verifique mais!
• Build Pipeline
UFF Tech 2013 - Daniel Castellani
http://makeadifferencemakealiving.com/hitting-the-reset-button
21. Build Pipeline
UFF Tech 2013 - Daniel Castellani
http://en.wikipedia.org/wiki/Continuous_delivery
22. UFF Tech 2013 - Daniel Castellani
http://blog.crisp.se/2013/02/05/yassalsundman/continuous-delivery-vs-continuous-deployment
23. Jez Humble – Continuous Delivery
A maioria dos problemas são:
– Organização
– Arquitetura
– Processo
Não:
– Ferramentas
– Código
– Infraestrutura
UFF Tech 2013 - Daniel Castellani
http://www.infoq.com/presentations/Adopting-Continuous-Delivery
24. Mudança cultural
UFF Tech 2013 - Daniel Castellani
http://wolfangel43.wordpress.com/2013/05/02/thinking-outside-the-box/
25. Hacking Culture
1. Comece pequeno
2. Crie campeões
3. Use métricas para construir confiança
4. Celebre o sucesso
5. Explore eventos constrangedores
Jesse Robbins - Opscode
UFF Tech 2013 - Daniel Castellani
28. Ciclo de desenvolvimento e deploy
UFF Tech 2013 - Daniel Castellani
http://techblog.netflix.com/2013/08/deploying-netflix-api.html
29. UFF Tech 2013 - Daniel Castellani
http://techblog.netflix.com/2013/08/deploying-netflix-api.html
30. Canary Test
Testar num subconjunto do ambiente de produção (1%).
1000+ métricas
Pontuação baixa (< 95%)
rejeitado
UFF Tech 2013 - Daniel Castellani
http://techblog.netflix.com/2013/08/deploying-netflix-api.html
31. Deploy multi-regional
3 zonas AWS
Red/Black push
1.
2.
3.
4.
Atual → Base
Base + Novo
Novo + Base
Novo
UFF Tech 2013 - Daniel Castellani
http://techblog.netflix.com/2013/08/deploying-netflix-api.html
32. Mantenha o time informado
Mensagem: deploy inciado, terminado e versão em produção
Ande rápido, falhe rápido (e pequeno)
UFF Tech 2013 - Daniel Castellani
http://techblog.netflix.com/2013/08/deploying-netflix-api.html
36. Comece pequeno
• Inicie por uma coisa pequena
• Pequeno não oferece ameaça
• É fácil de ignorar
• Construa confiança e segurança
UFF Tech 2013 - Daniel Castellani
37. Crie campeões
• Obtenha apoio
– Chefe, Gerente, Executivos...
– Dê credito aos outros
– “Special Status”
– Faça evangelistas
UFF Tech 2013 - Daniel Castellani
38. Métricas
• Indicadores de desempenho
• Não espere que os outros as definam
• Conte sua história com dados
UFF Tech 2013 - Daniel Castellani
39. Celebre o sucesso
• Conte histórias poderosas
– Seja positivo sobre como os outros resolveram o
problema
– Nunca fale sobre as pessoas que os criaram
• Deixe espaço para os outros
UFF Tech 2013 - Daniel Castellani
40. Eventos constrangedores
• Espere, eles virão
– Defeito em produção
– Quebra de integração
– Problemas de qualidade
• Não diga: “Eu te avisei...”
• Diga: “O que faremos agora...”
UFF Tech 2013 - Daniel Castellani