Continuous Delivery ?

Continuous Delivery ou Entrega Contínua é a capacidade de obter mudanças de todos os tipos – incluindo novos recursos, alterações de configuração, correções de bugs e experimentos – em produção, ou nas mãos dos usuários, com segurança e rapidez de forma sustentável.

Conseguimos tudo isso assegurando que nosso código esteja sempre em um estado de implantação, mesmo diante de equipes de milhares de desenvolvedores que fazem mudanças diariamente. Assim, eliminamos completamente as fases de integração, teste e endurecimento, bem como congelamento de código

Vantagens

  •  Lançamentos de baixo risco –  O objetivo principal da entrega contínua é tornar as implantações de software indolores, eventos de baixo risco que podem ser executados a qualquer momento, sob demanda. Ao aplicar padrões, é relativamente fácil conseguir implantações de tempo de inatividade zero que não sejam detectáveis para os usuários.
  • Tempo mais rápido para o mercado – Não é incomum que a fase de integração e teste / correção do ciclo de vida de entrega de software em fases tradicional consuma semanas ou mesmo meses. Quando as equipes trabalham em conjunto para automatizar os processos de criação e implantação, aprovisionamento de ambiente e regressão, os desenvolvedores podem incorporar testes de integração e regressão em seu trabalho diário e remover completamente essas fases
  • Maior qualidade – Quando os desenvolvedores têm ferramentas automatizadas que descobrem regressões em poucos minutos, as equipes são liberadas para concentrar seu esforço na pesquisa do usuário e em atividades de teste de nível mais alto, como testes exploratórios, testes de usabilidade e testes de desempenho e segurança. Ao construir um pipeline de implantação, essas atividades podem ser realizadas continuamente ao longo do processo de entrega, garantindo qualidade é construída em produtos e serviços desde o início.

  • Custos mais baixos – Qualquer produto ou serviço de software bem-sucedido evoluirá significativamente ao longo de sua vida útil. Ao investir na construção, teste, implantação e automação do ambiente, reduzimos substancialmente o custo de criação e fornecimento de alterações incrementais ao software, eliminando muitos dos custos fixos associados ao processo de lançamento.
  • Melhores produtos / Ciclo de feedback curto – A entrega contínua torna econômico trabalhar em pequenos lotes. Isso significa que podemos obter feedback dos usuários ao longo do ciclo de vida de entrega. Técnicas como o teste A / B nos permitem adotar uma abordagem baseada em hipóteses para o desenvolvimento de produtos, através da qual podemos testar idéias com usuários antes de construir recursos inteiros. Isso significa que podemos evitar os 2/3 dos recursos que construímos e que oferecem valor zero ou negativo aos nossos negócios.

  • Equipes mais felizes – Uma pesquisa mostrou que a entrega contínua faz `deployment` menos doloroso e reduz `burnout`. Além disso, quando entregamos mais freqüentemente, as equipes de entrega de software podem se envolver mais ativamente com os usuários, aprender quais idéias funcionam e quais não, e ver de primeira mão os resultados do trabalho que fizeram. Removendo as atividades dolorosas associadas à entrega de software, podemos nos concentrar no que mais nos importa – focar nas necessidades dos nossos usuários.

Por onde começar ?

No meu blog falo sobre desde como configurar uma apliacação web à Dokku (Nginx + uWSGI + PostegreSQL ) – Deploy com um comando

 

 

Advertisements

Author: Tiago Almeida

I am a Python / Django developer with passion about Data Science and Machine Learning.

One thought on “Continuous Delivery ?”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s