Olá pessoal,


    Esta dica falará de algo extremamente importante no desenvolvimento de software que é o controle de versões, porém é difícil falar diretamente de controle de versões, sem citar o contexto no qual o mesmo está inserido que é o de Gerência de Configuração, mais conhecido como GC.

    Como o foco deste artigo é a parte prática de configuração, definição e uso de ferramentas de controle de versões, eu apenas comentarei resumidamente sobre GC.

Gerência de Configuração

    A Gerência de Configuração é um dos processos de apoio mais importantes do desenvolvimento de software. Podemos dizer resumidamente que o processo de Gerência de Configuração visa controlar a evolução dos Itens de Configuração, mais conhecidos como IC. Um projeto de desenvolvimento de software possui diversos IC, podemos citar, por exemplo, os documentos de requisitos, os modelos de projeto e é claro o código fonte do projeto.

    Com um processo de GC eficiente estabelecido na empresa, é possível responder a velhas perguntas como: 

  • “Quem alterou esta rotina?”   
  • “Quem modificou este requisito?”
  • “Por que o software parou de funcionar”.

     Resolvemos também um problema comum quando não se há GC que é a perda de código fonte, quando um programador acidentalmente sobrepõe o que foi desenvolvido por outro, pois estava trabalhando em uma versão desatualizada do fonte.

     A gerência de configuração se apóia em três pontos fundamentais que são:

GC_P1_F1.GIF
 

Controle de Versões

     É parte mais importante da GC, apoia as demais atividades. Com o controle de versões garantimos a identificação e o gerenciamento dos IC, possibilitando acesso a todo histórico de alterações dos mesmos. Com este histórico podemos voltar a uma versão anterior facilmente. Oferece também a possibilidade de criação de linhas paralelas de desenvolvimento.

     É exatamente do controle de versões que este artigo falará, nós veremos na prática tudo isso que foi dito acima.

Controle de Mudanças

     Oferece o controle das mudanças realizadas nos IC. Antes de uma mudança ser realizada ela tem que ser solicitada, avaliada e aprovada, é aí que entra o controle de mudanças, é a parte que controla as solicitações de mudanças nos IC.

Integração Contínua

     É uma prática que prega que todo o trabalho de uma equipe de desenvolvimento de software seja freqüentemente integrado, onde cada integração dá origem a um novo build (gerado de forma automática) no qual são executados testes também de forma automatizada.

    Na próxima diga vamos direto a prática. Veremos como instalar e configurar um servidor Subversion e estações clientes com o TortoiseSVN.

Abraços e até a próxima Quick Tip.