uff tech 2013 - benefícios e desafios do continuous delivery - daniel castellani

40
Continuous Delivery Daniel Castellani @id.uff.br

Upload: sti-uff

Post on 05-Jun-2015

225 views

Category:

Technology


0 download

DESCRIPTION

Palestra realizada no dia 13 de novembro de 2013 no UFF Tech 2013

TRANSCRIPT

Page 1: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

Continuous Delivery

Daniel Castellani @id.uff.br

Page 2: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Agenda

• Daniel Castellani• Aplicação• Rumo a Entrega Contínua• Caso

Page 3: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

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

Page 4: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

O que fazemos?

• Programação• Análise• Garantia de Qualidade• Gerenciamento• Desenvolvimento

• Solucionar problemas, com softwarehttp://www.cornerstonesoftware.ca/

Page 5: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Avaliação

• Capacidade de produção

• Tempo para a entrega

• Qualidade

http://dsicovery.com/catalyst-deemed-visionary-ediscovery-leader/

Page 6: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellanihttp://marketingandsalesguru.com/marketing-tactics-turning-satisfied-customers-into-loyal-customers/

Page 7: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellanihttp://www.escolafreelancer.com/5-passos-para-lidar-com-um-cliente-insatisfeito/

Page 8: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Causas e consequências

• Defeitos

• Demora

• Erro na especificação

• Falta de confiança

• Correções

• Processos engessados

• Desconfiança

• Desmotivação

Page 9: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Anti-padrões de Entrega

• Deploy manual

• Deploy para produção apenas após o desenvolvimento estar completo

• Cofiguração manual dos ambientes

Page 10: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellanihttp://agilemanifesto.org/

Page 11: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Agile

http://agiletrendsbr.com/2013/continuous-delivery/

Page 12: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Entrega Contínua

• Entregar pequenas partes

• Validar o que é entregue

• Feedback rápido

• Entregar sempre

Page 13: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Uma grande aventura

1. Teste Automatizado

2. Construção Automatizada

3. Integração Contínua

4. Entrega Contínua

5. Deploy Contínuo

http://fremdeng.ning.com/profiles/blogs/food-for-thought-summer-reading-and-how-it-changed-the-way-i

Page 14: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Automatizar tudo, deve você.

http://starwars.wikia.com/wiki/Yoda

Page 15: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Teste Automatizado

• Funcional– Retornar resultados

• Não Funcional– Rapidamente

Page 16: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Construção Automatizada

• Preparação

• Compilação

• Testes

• Empacotamento

http://loopinfinito.com.br/2012/05/27/automatizando-o-deploy-com-rsync/

Page 17: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Integração Contínua

• Não é usar Jenkins

• Manualvs

• Automática

http://patche-parloa.blogspot.com.br/2008/07/montagem-de-viaturas.html

Page 18: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Deploy Automatizado

• Ambiente• Aplicação• Base de dados• Etc.

http://eco4u.wordpress.com/2010/11/25/cortes-orcamentarios-nos-eua-ameacam-empresas-espaciais/foguete-espacial-nasa-a0b12/

Page 19: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Rollback Automatizado

Page 20: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Continuous Delivery

• Entregar a qualquer momento

• Segurança em apertar o play– Não tem? Verifique mais!

• Build Pipeline

http://makeadifferencemakealiving.com/hitting-the-reset-button

Page 21: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Build Pipeline

http://en.wikipedia.org/wiki/Continuous_delivery

Page 22: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellanihttp://blog.crisp.se/2013/02/05/yassalsundman/continuous-delivery-vs-continuous-deployment

Page 23: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Jez Humble – Continuous Delivery

A maioria dos problemas são:– Organização– Arquitetura– Processo

Não:– Ferramentas – Código– Infraestrutura

http://www.infoq.com/presentations/Adopting-Continuous-Delivery

Page 24: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Mudança cultural

http://wolfangel43.wordpress.com/2013/05/02/thinking-outside-the-box/

Page 25: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

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

Page 26: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Deploy no Netflix

Page 27: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

3 zonas

+ 1.000 disp.

Page 28: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Ciclo de desenvolvimento e deploy

http://techblog.netflix.com/2013/08/deploying-netflix-api.html

Page 29: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellanihttp://techblog.netflix.com/2013/08/deploying-netflix-api.html

Page 30: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Canary TestTestar num subconjunto do ambiente de produção (1%).

1000+ métricasPontuação baixa (< 95%) rejeitado

http://techblog.netflix.com/2013/08/deploying-netflix-api.html

Page 31: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Deploy multi-regional3 zonas AWS

Red/Black push1. Atual → Base2. Base + Novo3. Novo + Base4. Novo

http://techblog.netflix.com/2013/08/deploying-netflix-api.html

Page 32: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Mantenha o time informadoMensagem: deploy inciado, terminado e versão em produção

Ande rápido, falhe rápido (e pequeno)

http://techblog.netflix.com/2013/08/deploying-netflix-api.html

Page 33: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Perceptual Diffs

Bret Slatkin

Page 34: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

Continuous Delivery

Daniel Castellani @id.uff.br

Obrigado!

Page 35: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Extras

Page 36: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Comece pequeno

• Inicie por uma coisa pequena

• Pequeno não oferece ameaça

• É fácil de ignorar

• Construa confiança e segurança

Page 37: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Crie campeões

• Obtenha apoio– Chefe, Gerente, Executivos...– Dê credito aos outros– “Special Status”– Faça evangelistas

Page 38: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

Métricas

• Indicadores de desempenho

• Não espere que os outros as definam

• Conte sua história com dados

Page 39: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

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

Page 40: UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castellani

UFF Tech 2013 - Daniel Castellani

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...”