Continuous Delivery“Entrega Contínua”            Marco Valtas (@mavcunha)                 ThoughtWorksFeedback e perguntas...
Pesquisa Rápida  Qual é a sua   profissão?  Desenvolvedor?  Gerente de Projeto?  Administrador de BD?  Analista de Qualida...
Pesquisa Rápida      Qual é o tamanho da sua     empresa?    Alguns (entre trinta)    De respeito (mais de cem)    Grande ...
Pesquisa Rápida       Quantosdias p/ funcionalidade entrar em produção?    Alguns (entre trinta)    De respeito (mais de c...
Pesquisa Rápida         "How long would it take    your organization to deploy a  change that involves just one singleline...
SoftwareDesenvolvedor                           Usuário
SoftwareDesenvolvedor                           Usuário
Software                  VersionDesenvolvedores   Control                             Usuário
Software                  Version   ContinuousDesenvolvedores   Control   Integration                                     ...
Software                             Version     ContinuousDesenvolvedores              Control     Integration           ...
Software                             Version     ContinuousDesenvolvedores              Control     Integration           ...
Software                             Version     ContinuousDesenvolvedores              Control     Integration           ...
Software                             Version     Continuous                                                               ...
Entrega Contínua                                          Testes deIdéia   Planejamento   Dev   Integração               I...
Entrega Contínua                                                  Testes de        Idéia   Planejamento   Dev   Integração...
Entrega Contínua                                              Testes deIdéia   Planejamento   Dev      Integração         ...
Entrega Contínua                                                 Testes deIdéia   Planejamento   Dev      Integração      ...
Entrega Contínua                                                 Testes deIdéia   Planejamento   Dev      Integração      ...
Dicotomia                  Diretoria de T.I.       Mais Rápido!                   Mais Estável!Desenvolvimento            ...
É Possível?
É Possível?  Feedback      eAutomatização
É Possível?(18/08/2011) http://code.flickr.com
Testes, testes, testesAceitaçãoIntegraçãoUnitários
Testes, testes, testesAceitaçãoIntegraçãoUnitários             Quantidade
Testes, testes, testes                          CustoAceitaçãoIntegraçãoUnitários             Quantidade
Testes, testes, testes                          CustoAceitaçãoIntegraçãoUnitários             Quantidade           Velocid...
Testes, testes, testes                          Custo         ComplexidadeAceitaçãoIntegraçãoUnitários             Quantid...
ão        Testes, testes, testes itaç            Unitários       Unitários    UnitáriosAce                     Integração ...
Integração ContínuaDesenvolvedor                   Controle                                de Versão                     C...
Controle de Versão          http://derekring.blogspot.com/2010/09/back-to-future-is-now-available.html
Controle de Versão           Release Branch
Controle de Versão              Feature Branch
Controle de Versão              Feature Branch              Release Branch
Controle de Versão              Feature Branch                  OUCH!              Release Branch
Controle de Versão              Feature Branch                  OUCH!              Release Branch
Controle de Versão       No Branch / Experimental Branch   Todos fazem check in na linha     principal (trunk / head)
Branch por Abstração                    BibliotecaAplicação
Branch por Abstração                    BibliotecaAplicação                    Biblioteca
Branch por Abstração                         BibliotecaAplicação   Interface   Implementa                         Biblioteca
Branch por Abstração                         BibliotecaAplicação   Interface   Implementa                         Biblioteca
Branch por Abstração                         BibliotecaAplicação   Interface   Implementa                         Biblioteca
Branch por Abstração                         BibliotecaAplicação   Interface   Implementa                         Biblioteca
Branch por AbstraçãoAplicação   Interface   Implementa                         Biblioteca
Branch por AbstraçãoAplicação                    Biblioteca
Flags deFuncionalidadecoolNewTheme = false
Flags deFuncionalidadecoolNewTheme =   true
Banco de Dados           http://xkcd.com/327/
Banco de Dados      •Sempre um case “especial”      •Dados são Persistentes      •Rollback é doloroso      •Pouca Colabora...
Banco de Dados                       Controle                       de Versão             Deltas          •dbdeployEstado ...
Banco de Dados      •Refatoração      •Mudanças no BD comunicadas      aos DBA’s pelo I.C.      •Pratique os deploys      ...
Implantação         http://xkcd.com/918/
Verde - Azul          Web    App    DBRouter
Verde - Azul          Web     App     DB          v 1.1   v 1.1   v 1.1Router
Verde - Azul          Web     App     DB          v 1.1   v 1.1   v 1.1Router          v 2.0   v 2.0   v 2.0
Dark Launching
Dark LaunchingUI        Aplicação            Nova        Funcionalidade
Canary Release
Canary ReleaseRouter
Canary ReleaseRouter
ProvisionamentoSysadmin
ProvisionamentoSysadmin
Provisionamento                      Puppet!Sysadminhttp://www.puppetlabs.com/
Princípios•Crie um processo repetível e confiável para a entrega de software.•Automatize tudo o que for possível.•Pessoas d...
ObrigadoMarco Valtas (@mavcunha)     ThoughtWorks
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Continuous delivery
Próximos SlideShares
Carregando em…5
×

Continuous delivery

2.132 visualizações

Publicada em

Presentation given on Agile Vale 2011 about Continuous Delivery.

Publicada em: Tecnologia
0 comentários
3 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
2.132
No SlideShare
0
A partir de incorporações
0
Número de incorporações
869
Ações
Compartilhamentos
0
Downloads
29
Comentários
0
Gostaram
3
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide
  • \n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - O que é? E o que fazemos na ThoughtWorks?\n- É um lugar onde os desenvolvedores recebem o respeito que merecem.\n- Onde somos apaixonados por software e desenvolvemos nas horas vagas.\n- Onde levamos muito a sério o que fazemos...\n- ... mas não necessariamente as roupas.\n- Onde usamos legos para mostrar a nós e aos clientes como desenvolvemos software.\n- Onde diversidade é importante.\n- Ás vezes trabalhamos em situações adversas....\n- mas com a colegas talentosos a gente supera o desafio.\n- tudo para entregar o melhor software o melhor valor.\n
  • - E por último estes são ou foram seus colegas de trabalho.\n
  • - E por último estes são ou foram seus colegas de trabalho.\n
  • - E por último estes são ou foram seus colegas de trabalho.\n
  • - E por último estes são ou foram seus colegas de trabalho.\n
  • - E por último estes são ou foram seus colegas de trabalho.\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Continuous delivery

    1. 1. Continuous Delivery“Entrega Contínua” Marco Valtas (@mavcunha) ThoughtWorksFeedback e perguntas: #agilevale #cd Material Inspirado nas apresentações de Jez Humble e Tim Brown
    2. 2. Pesquisa Rápida Qual é a sua profissão? Desenvolvedor? Gerente de Projeto? Administrador de BD? Analista de Qualidade? Analista de Produto?
    3. 3. Pesquisa Rápida Qual é o tamanho da sua empresa? Alguns (entre trinta) De respeito (mais de cem) Grande (mais de quinhentos) A perder de vista (dez
    4. 4. Pesquisa Rápida Quantosdias p/ funcionalidade entrar em produção? Alguns (entre trinta) De respeito (mais de cem) Grande (mais de quinhentos) A perder de vista (dez
    5. 5. Pesquisa Rápida "How long would it take your organization to deploy a change that involves just one singleline of code? Do you do this on a repeatable, reliable basis?" Mary & Tom Poppendieck - Implement Lean Software Development.
    6. 6. SoftwareDesenvolvedor Usuário
    7. 7. SoftwareDesenvolvedor Usuário
    8. 8. Software VersionDesenvolvedores Control Usuário
    9. 9. Software Version ContinuousDesenvolvedores Control Integration Usuário
    10. 10. Software Version ContinuousDesenvolvedores Control Integration Preview Analista Novas funcionalidades Usuário
    11. 11. Software Version ContinuousDesenvolvedores Control Integration Preview Qualidade Analista Novas funcionalidades Usuário
    12. 12. Software Version ContinuousDesenvolvedores Control Integration Sys Admin Preview Qualidade Analista Novas funcionalidades Usuário
    13. 13. Software Version Continuous DBADesenvolvedores Control Integration Sys Admin Preview Qualidade Analista Novas funcionalidades Usuário
    14. 14. Entrega Contínua Testes deIdéia Planejamento Dev Integração Implantação Release
    15. 15. Entrega Contínua Testes de Idéia Planejamento Dev Integração Implantação Release a loV r e raE sp
    16. 16. Entrega Contínua Testes deIdéia Planejamento Dev Integração Implantação Release Agile Movement
    17. 17. Entrega Contínua Testes deIdéia Planejamento Dev Integração Implantação Release Agile Movement DevOps Movement
    18. 18. Entrega Contínua Testes deIdéia Planejamento Dev Integração Implantação Release Agile Movement DevOps Movement Continuous Delivery
    19. 19. Dicotomia Diretoria de T.I. Mais Rápido! Mais Estável!Desenvolvimento Operações
    20. 20. É Possível?
    21. 21. É Possível? Feedback eAutomatização
    22. 22. É Possível?(18/08/2011) http://code.flickr.com
    23. 23. Testes, testes, testesAceitaçãoIntegraçãoUnitários
    24. 24. Testes, testes, testesAceitaçãoIntegraçãoUnitários Quantidade
    25. 25. Testes, testes, testes CustoAceitaçãoIntegraçãoUnitários Quantidade
    26. 26. Testes, testes, testes CustoAceitaçãoIntegraçãoUnitários Quantidade Velocidade
    27. 27. Testes, testes, testes Custo ComplexidadeAceitaçãoIntegraçãoUnitários Quantidade Velocidade
    28. 28. ão Testes, testes, testes itaç Unitários Unitários UnitáriosAce Integração Integração80% de coberturapor tipo de teste.
    29. 29. Integração ContínuaDesenvolvedor Controle de Versão Check In Artefatos (Binários) são um potencial release Mudança Detectada Feedback Repositório de artefatos Integração Contínua
    30. 30. Controle de Versão http://derekring.blogspot.com/2010/09/back-to-future-is-now-available.html
    31. 31. Controle de Versão Release Branch
    32. 32. Controle de Versão Feature Branch
    33. 33. Controle de Versão Feature Branch Release Branch
    34. 34. Controle de Versão Feature Branch OUCH! Release Branch
    35. 35. Controle de Versão Feature Branch OUCH! Release Branch
    36. 36. Controle de Versão No Branch / Experimental Branch Todos fazem check in na linha principal (trunk / head)
    37. 37. Branch por Abstração BibliotecaAplicação
    38. 38. Branch por Abstração BibliotecaAplicação Biblioteca
    39. 39. Branch por Abstração BibliotecaAplicação Interface Implementa Biblioteca
    40. 40. Branch por Abstração BibliotecaAplicação Interface Implementa Biblioteca
    41. 41. Branch por Abstração BibliotecaAplicação Interface Implementa Biblioteca
    42. 42. Branch por Abstração BibliotecaAplicação Interface Implementa Biblioteca
    43. 43. Branch por AbstraçãoAplicação Interface Implementa Biblioteca
    44. 44. Branch por AbstraçãoAplicação Biblioteca
    45. 45. Flags deFuncionalidadecoolNewTheme = false
    46. 46. Flags deFuncionalidadecoolNewTheme = true
    47. 47. Banco de Dados http://xkcd.com/327/
    48. 48. Banco de Dados •Sempre um case “especial” •Dados são Persistentes •Rollback é doloroso •Pouca Colaboração
    49. 49. Banco de Dados Controle de Versão Deltas •dbdeployEstado •LiquiBase EstadoInicial Final
    50. 50. Banco de Dados •Refatoração •Mudanças no BD comunicadas aos DBA’s pelo I.C. •Pratique os deploys •Evite mudanças manuais
    51. 51. Implantação http://xkcd.com/918/
    52. 52. Verde - Azul Web App DBRouter
    53. 53. Verde - Azul Web App DB v 1.1 v 1.1 v 1.1Router
    54. 54. Verde - Azul Web App DB v 1.1 v 1.1 v 1.1Router v 2.0 v 2.0 v 2.0
    55. 55. Dark Launching
    56. 56. Dark LaunchingUI Aplicação Nova Funcionalidade
    57. 57. Canary Release
    58. 58. Canary ReleaseRouter
    59. 59. Canary ReleaseRouter
    60. 60. ProvisionamentoSysadmin
    61. 61. ProvisionamentoSysadmin
    62. 62. Provisionamento Puppet!Sysadminhttp://www.puppetlabs.com/
    63. 63. Princípios•Crie um processo repetível e confiável para a entrega de software.•Automatize tudo o que for possível.•Pessoas devem se ocupar com tarefas de alto valor.•Todos os envolvidos estão envolvidos (DBA’s, SysAdmins...).•Tudo no controle de versão.•Todos são responsáveis pela entrega.
    64. 64. ObrigadoMarco Valtas (@mavcunha) ThoughtWorks

    ×