CI Factory e Boas Práticas de Integração Contínua

by alisson.vale 29/4/2007 23:39:44

Esta semana duas publicações interessantes sobre Integração Contínua me chamaram a atenção a ponto de eu estar sugerindo aqui no meu blog.

A primeira é um screen cast no DnrTV com Scott Hanselman e Jay Flowers sobre o CI Factory. O CI Factory realmente me impressionou. Ele ajuda a preparar e gerenciar "workspaces" que isolam, padronizam e permitem fácil extensão e manutenção de sistemas de integração contínua. Em poucos minutos de contato com a idéia da ferramenta já dá pra perceber o quanto seus projetos vão poder se beneficiar de seus recursos. Acho que o ponto alto do CI Factory é trazer consigo um grande conjunto de boas práticas na construção e no gerenciamento de sistemas de Integração Contínua e Build Servers. Algumas das boas práticas que detectei apenas vendo o vídeo (ainda não parei para me aprofundar no uso da ferramenta, mas certamente o farei assim que puder):

  • Todos os arquivos necessários para execução da build estão no mesmo contexto de controle de versão do próprio aplicativo;
  • Toda a lógica de build é portável de forma que pode ser rodada não só no servidor, mas também nas workstations dos desenvolvedores;
  • As referências a componentes de terceiros são organizadas e gerenciadas em um espaço próprio;
  • Adicionar ou Remover passos é simples e rápido;
  • Incorporar novos recursos à sua build também é muito fácil e rápido. Já vem com os pacotes para vários controladores de repositório, Versionamento de assemblies, Frameworks para execução de Unit Tests, Code Coverage, Métricas, Análises de Código, Deployment e Pacotes para Instalação.

Um outro post interessante foi do Martin Fowler a respeito dos gargalos que às vezes podem ser gerados com builds quebradas em processos de integração contínua. Quando uma build é quebrada, o resto do time é afetado até que a build seja corrigida. A solução pode ser o uso de “branches privados” onde o desenvolvedor faz uma integração prévia antes de integrar com a mainline. Eu particularmente acho que alguma disciplina pode ajudar bastante em diminuir este problema. Práticas como, por exemplo, não integrar no fim do expediente e na iminência do horário de almoço, não realizar integrações simultâneas, deixar bem visível para o restante da equipe que há alguém integrando e evitar que desenvolvedores que estão integrando sejam interrompidos por qualquer motivo.

Posts relacionados

Comentar


(Vai mostrar seu Gravatar)  

  Country flag

[b][/b] - [i][/i] - [u][/u]- [quote][/quote]



Pré-visualização

22/11/2008 03:51:01

Sobre o Autor

Alisson Vale Alisson Vale
Líder de Projeto da Phidelis Tecnologia.


E-mail me Send mail
      Sign in

Últimos posts

Últimos comentários

Termo de Responsabilidade

Este site apresenta apenas opiniões pessoais. Não necessariamente representa as opiniões ou práticas da Phidelis Tecnologia.

© 2008