Olá.
Desenvolvi um programa (Swing) que inicialmente era simples…mas agora já deve atender mais de 1 departamento.
E cada departamento têm mudanças leves na funcionalidade do sistema (têm um ou mais campos, por exemplo).
Mas…por enquanto, as mudanças se resumem a isso (depois vão aumentar bastante…)
Mas para agora, e com o prazo apertado, o que é melhor fazer?
- Definir as características de múltiplas partes do sistema, para cada departamento e armazená-los em arquivos simples (XML) que irão definir em parte o comportamento do sistema - como as mudanças não são profundas, eu acho o mais viável, porquê se é apenas um campo a mais ou uma opção a mais, um arquivo XML carregado de forma a definir o comportamento adicional de um departamento, poderia ser mais fácil de alterar;
- Usar uma cadeia de ifs e elses em vários trechos do programa para determinar o comportamento para um departamento ou outro (o mais rápido e o de pior clareza…rs);
- Dividir o sistema em estrutura de classes e herança, de forma a atender cada departamento de acordo com suas necessidades, compartilhando funções comuns - parece bacana…mas para um campo a mais no bd e nas JTables, não parece necessário. Se as mudanças forem mais profundas, com certeza é o caminho
Gostaria de saber que procedimento é mais usado para definir arquiteturas de sistemas que divergem um pouco de um departamento para outro (fora esses que pensei) e que sao sistemas únicos… E onde eu posso estudar as formas de definir essa arquitetura?