Gostaria saber como vocês controlam a versão customizada do projeto de vocês, caso haja alguma.
Por exemplo, vamos dizer que você desenvolve um sistema e vende para 10 clientes, a mesma versão (a última).
Mas em um “belo dia” um outro cliente compra o projeto mas com algumas pequenas customizações; logo depois, outro cliente também compra o projeto com mais algumas customizações e assim por diante.
Como vocês estão administrando isto, geram uma versão para cada cliente a partir de um “copy paste” ou outra coisa qualquer?
Antecipadamente, obrigado pelas respostas, comentários e etc…
Depende da customização.
Customizações estéticas e que não envolvam o core do negócio, é possível de se manter, caso vc tenha feito um bom projeto, como um estensão do projeto core.
Agora, quando o cliente pede comportamento diferenciado, dai fica mais complicado modularizar a customização.
Eu procuro conversar com o cliente se ele realmente precisa do produto customizado, ou ele prefere um outro produto(novo talvez) que contemple as suas necessidades.
Mostro o custo da customização, mostro como será a manutenção dela etc.
Entendi…
Caso o cliente aceite pagar pelas alterações você gera um novo projeto a partir do anterior ficando assim com mais um projeto, é isso?
Obrigado!
E ai fantomas , beleza?
Cara eu tenho uma opnião diferente, dependendo em de como esse software será instalado. Como nunca trabalhei com ambientes desktop, somente para ambientes web, se você fazer um software para vários clientes, criaria uma arquitetura baseada em SOA, ou seja, desenvolveria um tipo de portal que acesse diversos serviços (entenda serviços como cadastro, consultas, calculos, entre outras coisas). Caso o cliente queira uma customização eu criaria uma nova opção no portal e se necessário desenvolveria um novo serviço para esse cliente.
Espero ter ajudado.
Oi MauNunes,
Gostei da tua resposta, tem bastante a ver com o que eu penso também; só não sei se é a melhor saida no momento. Porisso resolvi criar este post para ouvir outras opiniões sobre o assunto.
Uma tecnologia que estou estudando para ver se ajuda neste sentido é o OSGi; em alguns momentos acho que pode rolar mas em outros dá a impressão que irá aumentar muito a complexidade. Enfim...estou na caminhada, vamos ver no que dá.
Abraços!