Um Projeto, Vários Clientes  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
dancas
Entusiasta Java

Membro desde: 09/10/2007 11:00:00
Mensagens: 23
Localização: São José dos Campos - SP
Offline

Boa tarde a todos,

Estou chegando agora numa consultoria que desenvolve um sistema WEB. Ao longo do tempo, o sistema foi sendo customizado para n clientes e atualmente existem projetos separados para cada cliente. Estes projetos possuem as funcionalidades do projeto original, mais os acréscimos solicitados pelos clientes.

Um novo gerente assumiu o projeto e deseja fazer um "merge" dos fontes dos projetos, porém as customizações devem continuar disponíveis somente para os respectivos clientes que as solicitaram, ou seja, as funcionalidades do sistema do cliente X não deverão ser incluídas no sistema do cliente Y depois da unificação dos fontes.

Considerando que os fontes do projeto são arquivos java, jsps e xmls, qual a solução mais comum para casos como este ?

Qualquer sugestão é bem vinda.

Obrigado

Danilo Alves
cassio
GUJ Master
[Avatar]

Membro desde: 19/06/2006 08:25:28
Mensagens: 1336
Localização: Caieiras-SP
Offline

Vocês usam um sistema para controle de versões, tipo CVS, SVN, etc, certo?

Neste caso acho que o melhor a se fazer é criar branches no repositório, um branch para cada cliente que possui customizações.

Cássio Marques

Blog
dancas
Entusiasta Java

Membro desde: 09/10/2007 11:00:00
Mensagens: 23
Localização: São José dos Campos - SP
Offline

Estou usando SVN... obrigado pela sugestão, vou tentar usar branches

Danilo Alves
dancas
Entusiasta Java

Membro desde: 09/10/2007 11:00:00
Mensagens: 23
Localização: São José dos Campos - SP
Offline

A idéia é ter um único projeto, com branch eu tenho a facilidade de fazer merge das customizações no projeto original mas continuo tendo n projetos, certo ?

Danilo Alves
cassio
GUJ Master
[Avatar]

Membro desde: 19/06/2006 08:25:28
Mensagens: 1336
Localização: Caieiras-SP
Offline

Certo. Dá uma olhada com calma na documentação do Subversion que dá pra fazer sim.

Cássio Marques

Blog
pcalcado
Moderador
[Avatar]

Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline

Tentar integrar vários projetos através de VCS não vai ser muito agradável. A quantidade de conflitos a resolver tornará seu trabalho bem imrodutivo.

Creio que o melhor seja repensar sua arquitetura. Utilize um sistema mais modular, onde as modificações podem ser adicionadas e removidas sem muito problema. Veja como sistemas com OSGI e comportam, não que você precise de OSGi mas pelo menos vai ter uma boa idéia de como um sistema modular atua.

Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay
[Email] [WWW] [Yahoo!] [MSN]
Adolfo Rodrigues
Java Ninja
[Avatar]

Membro desde: 18/04/2007 20:02:52
Mensagens: 270
Localização: Sampa
Offline

Concordo com o pensamento do Phillip. Acho que você tem que redesenhar a sua aplicação pra ter um core e as customizações seriam algo como plugins. Pense na arquitetura do Eclipse: você tem o core (eclipse) e vários plugins que você pode instalar pra que ele tenha as funcionalidades das quais precisa.

http://www.adolfosousa.com.br/blog
[WWW] [MSN]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team