Entrega Contínua - E Eu Com Isso?

Preview:

DESCRIPTION

Palestra sobre Entrega Contínua, Implantação Automatizada, Pipeline de Implantação e técnicas de Entrega Contínua.

Citation preview

Entrega ContínuaE eu com isso?

Marcos Brizeno

© 2013

Quem sou eu?

�2

about.me/ marcosbrizeno

@marcosbrizeno

Cientista da Computação

UECE

ThoughtWorks Recife

© 2013

Entregando Software

Quem decide quando entregar?

�3

Qual a frequência - se existir?Qual o tamanho?

Desenvolvimento vs

Negócio

© 2013

#história Testes Automatizados TDD / BDD Integração Contínua

�4

✓ explorar

✓ analisar

Encontrar

repetição ✓

rapidez ✓

Automatizar

© 2013

#história Testes Automatizados TDD / BDD Integração Contínua

�5

© 2013

#história Testes Automatizados TDD / BDD Integração Contínua

�6

© 2013

Automação

Automatize tudo!

Testes, Implantação, Configuração, Dependências Externas, Provisionamento, Notificações, Performance

�7

© 2013

Entrega Contínua >

Automação

�8

http://bit.ly/1aCnAsW

© 2013

De volta para o futuro !Como continuar melhorando?

�9

[ Pipeline de Implementação]

Código/Testes

Servidor de Integração

Implantação homologação

Implantação produção

Testes de Aceitação

Automatizado

© 2013

Pipeline #benefícios

�10

Cada commit gera uma nova versão

Sempre existe uma versão para ser implantada

Visão centralizada da qualidade do projeto

© 2013

Entrega Contínua !

!

Implantação Contínua

�11

{“Você pode implantar continuamente em homologação - sem problemas. O que torna a Entrega Contínua tão especial é implantar toda mudança que passe os testes automatizados para produção”

? !

Jez Humble, sobre Entrega Contínua vs

Implantação Contínua

© 2013

✓ Todo código pode ser implantado

✓ Mudanças de código são verificadas com Dados e Infraestrutura

✓ A equipe de Desenvolvimento não é mais uma dependência

✓ O negócio ganha

x Quero ser um “profissional qualificado”

x GitHub faz 12,602 Implantações por dia

Porquê adotar Entrega Contínua?

�12

© 2013

Desafios

�13

© 2013

Implantação sem tempo de baixa

�14

© 2013

Separação

�15

Web / Serviços

DadosInfra

sw/hw

Serviços externosSeparar

mudanças de código, dados, infraestrutura e

serviços externos

© 2013

Evite Mudanças Destrutivas

�16

V 101 V 102 V 103 V 104

V 101 V 102

Código

Infra

© 2013 �17

V 101 V 102 V 103 V 104

V 101 V 102

Código

Infra

pessoa = Pessoa.new params[:pessoa]#params[:pessoa][:idade]

desc pessoa;nome varcharidade varchar

© 2013 �18

V 101 V 102 V 103 V 104

V 101 V 102

Código

Infra

params[:pessoa].delete :idadepessoa = Pessoa.new params[:pessoa]

desc pessoa;nome varcharidade varchar

desc pessoa;nome varchar

© 2013 �19

V 101 V 102 V 103 V 104

V 101 V 102

Código

Infra

pessoa = Pessoa.new params[:pessoa]

desc pessoa;nome varchar

© 2013

Trabalho em Equipe!

�20

© 2013

Ténicas

�21

Blue/Green Deploy

© 2013

Ténicas

�22

Rolling deploy

© 2013 �23

Obrigado

Recommended