Ai pessoal tenho um questão bem complexa a tratar neste tópico e espero que venham a surgir das mais diversas opiniões possíveis para um solução.
Bem em primeiro estou iniciando com Java a mais ou menos 8 meses e a minha dificuldade agora é em arranjar uma solução para controlar a versão do Bando de Dados ( no caso postgres ) e da aplicação ( jsp, xml, jasper ) enfim toda a parte que não é banco hehehe
O que acontece suponhamos:
Meu cliente está usando a versão 1.0 de minha aplicação. O meu CVS já arquivou todos os arquivos e seus estados da versão 1.0. A partir de agora concordamos que os desenvolvedores estão em continuo trabalho para fazer alterações e essas alterações vão gerar com o tempo a versão 2.0, correto ?
Então imaginamos que eu testei e instalei a versão 2.0 certo ? Bem o meu CVS continua controlando a parte da aplicação mas e agora na hora de instalar a versão 2.0 no meu cliente ele já tem dados no Banco não é que nem na implantação que eu crio o banco sem m preocupar com isso então os arquivosda aplicação que eu tenho que mudar é mais fácil pois meu CVS controla mas e as tabelas do Banco ? O que foi mudado ou o que foi preciso alterar ? Esse é o maior problema ao invés de todos terem que ficar anotando as rotinas feitas o que foi alterado o que não foi, vocês conhecem ou sabem como isso poderia ser resolvido da melhor maneira possível ? Algum software que controle as versão e por exemplo da versão 1.0 para 2.0 foi mudado isso então ele gera um script para fazer essa alteração ?
Olha eu espero ter sido claro e ter me feito esclarecer só para garantir imagine uma tabela Pessoa e o analista vai e muda ela para Pessoal, bem vocês sabem como é né no momento em que muitas pessoas dependem umas das outras sempre tem alguém que se esquece de algo e começa a dor de cabeça. Então lá no banco do meu cliente onde já está implantado um programa na versão 1.0 eu não posso dropar tudo e mandar recriar o banco, OBVIO, mas então eu tenho que prever que uma solução para colocar a versão 2.0 seria criar uma tabela Pessoal igual o da versão 2.0 transferir os dados da tabela Pessoa para ela, dropar a tabela Pessoa e instalar a nova versão da aplicação.
O que eu queria com isso é que meu analista não ficasse responsavel por anotar e um software controlasse tudo isso por versionamento e gerar os scripts necessários para mudar da 1.0 para 2.0 e assim por diante.
Bem é isso espero agora com os post podermos trocar idéias ou se vocês já saberiam me dizer a resposta melhor ainda ou um software que faça isso mesmo pago é de se analisar.
Um grande abraço
Junior