IC Integração Contínua - eTecnologia/projeto-genesis GitHub Wiki

Por que precisamos aprender Integração Contínua (IC)? Quando temos diversos desenvolvedores e/ou equipes trabalhando em colaboração para construir um software é imprescindível ter um mecanismo para controlar como integrar o trabalho de cada de desenvolvedor. Integração Continua (CI - Continuous Integration) é esse mecanismo que possibilita uma a integração do trabalho feito por vários desenvolvedores.

Genesis: A origem
O termo 'Integração Contínua' originou-se com o processo de desenvolvimento da Extreme Programming (XP) de Kent Beck , como uma de suas doze práticas originais. Segundo Martin Fowler a Integração Contínua (CI) é uma boa prática de desenvolvimento de software onde as pessoas de uma equipe integram seu trabalho com frequência, geralmente cada pessoa integra pelo menos diariamente, levando a várias integrações por dia. Cada integração é verificado por uma compilação automatizada (incluindo teste) para detectar a integração erros o mais rápido possível. CI tem diversos benefícios diretos entre eles destacamos:

  • Encontrar e corrigir os defeitos (bugs) mais cedo
  • Melhorar a qualidade do software
  • Reduzir o tempo que leva para validar e lançar novas atualizações de software.

    Ferramenta:
    Para automatizar as tarefas da IC é necessário usar ferramentas, existem diversas ferramentas disponíveis no mercado, destacamos: <a href=https://www.jenkins.io/">Jenkins é uma ferramenta open source que pode ser utilizada para automatizar a IC

    Existem alguns livro sobre IC, destacamos:


Para ir além:
Leitura essencial:
Integração Contínua por Martin Fowler
Certificação para Integração Contínua por Martin Fowler
Leitura recomendada:
Integração Contínua por Dan Radigan
⚠️ **GitHub.com Fallback** ⚠️