Integração Contínua - Conceito

Olá a Todos! Estarei começando uma série de artigos sobre Integração Contínua. Nesta primeira parte abordarei sobre o conceito e vantagens deste processo. Existem no mercado diversas ferramentas, para diversas linguagens, porém nestes artigos estarei me atentando somente ao processo de Integração Contínua com a plataforma Microsoft .NET.

Integração Contínua é um processo que se integra as práticas de desenvolvimento ágil e, visa manter a qualidade no desenvolvimento de software diminuindo assim as falhas, pois o mesmo realiza automaticamente diversos testes e builds automatizados  do projeto e caso algo estiver errado ou fora dos padrões pré-estabelecidos (padrões de qualidade) os envolvidos são avisados automaticamente.

O processo de Integração Contínua funciona da seguinte forma, como é mostrado na figura abaixo:
Conforme o Desenvolvedor realiza um commit (envia as alterações do código fonte para o servidor de Controle de Versão) o servidor de Integração Contínua detecta estas alterações e realiza o processo de compilação, testes e, publicação do software para ser homologado.

Vantagens:

  • Quando um Teste Unitário falha o programador consegue corrigir sem perda de tempo com debug para descobrir onde está o erro;
  • Aviso rápido quando ocorre uma quebra de código;
  • Aviso rápido quando ocorre um conflito de versões;
  • Disponibilidade constante para realização de testes e demonstrações;
  • Relatório de métricas gerados a partir dos teste automatizados;

Desvantagens:

  • Requer um longo período para realizar a configuração de todo o processo;


Por hoje terminamos aqui. Nos proximos artigos estarei explicando sobre as ferramentas necessárias para montar um servidor de Integração Contínua.

Até lá ;D