Salve pessoal!
Estou pensando em começar o desenvolvimento de um produto (um ERP especializado) e estive
pensando no uso de cloud computing.
Utilizando esta abordagem, em uma das mãos temos:
- Facilidade na manutenção do código;
- Fácil instalação (ou sem instalação);
- Controle de licenças;
Porém na outra temos a nossa precária infra-estrutura de comunicação.
A primeira coisa que vem em mente seria uma estrutura híbrida para os momentos de quebra,
porém neste caso a vantagem da ‘Fácil ou nenhuma instalação’ vai por água abaixo, ou não?
E ainda… neste caso teria que desenvolver uma UI desktop o que é um
dificultador na plataforma Java. Ou não?
Seria viável um projeto assim em Java ou deveria enveredar para o C#?
Agradeço idéias e referências de estudo.
Não tenho experiência com C#, mas em questão de arquitetura:
você tem que ver quais os pontos que nunca devem parar nos seus clientes, por ex:
Lojas não podem parar o caixa o resto pode ficar sem por até certo tempo, 1 ou 2 horas, já é o tempo da operadora restabelecer a internet.
Nesse caso seu sistema pode ser WEB com um módulo de PDV instalado nos caixas que servirão pra quando ficar sem internet.
Fábricas já são muitos pontos que não podem ficar parado.
Aqui você pode ter o sistema WEB, e caso o cliente não queira correr o risco de ficar sem sistema, ele coloca servidor interno.
Nos dois casos ainda o cliente pode ter 2 link de internet de operadoras diferentes, diminuindo assim a chance de ficar sem sistema caso ele não queira investir em servidor interno.
São sugestões minhas, e já trabalhei em sistema grande que funciona dessa maneira.
Caso não se aplique favor desconsiderar.
A parte desktop se for apenas o PDV por exemplo ou qualquer outra pequena parte do software, você não precisa se preocupar TANTO com as licenças pois o cara não vai parar de te pagar e ficar só com o PDV porque ele não teria como cadastrar produtos, verificar financeiro, fiscal, compras, etc…
E na parte de manutenção você tem quer criar apenas pequenas partes do software offline pra aliviar isso.
E quanto instalação você pode cobrar isso, depende do seu plano de negócio.
Programar pra desktop em java eu já fiz e não tive dificuldade em nada, telas complexas, relatórios, web cam, nfe, etc. Acho que aqui vai depender de você e de sua equipe.