Criação de sistema realmente grande

Minha sugestão é avaliar o que realmente agregará valor ao cliente estando na web e focar inicialmente na migração dessa parte do sistema. Depois , com a experiência adquirida avaliaria se realmente valerá migrar o resto da aplicação.

Qual versão do Delphi você usa ? As novas versões do Delphi funciona com vários sistemas operacionais (Android , IOS , Windows) e talvez possa ser uma boa ideia disponibilizar parte do seu ERP nessas plataformas.

[quote=vinians]
E só pra constar sobre o .Net

Fonte: Wikipedia, sim é um framework.[/quote]
Ambos estão certos. .NET é uma plataforma de desenvolvimento, que pode ou não usar o framework chamado de mesmo nome. Outro exemplo de framework para .NET é o .Net Core. O importante mesmo é saber exatamente sobre o que está se tratando na prática, independente do nome, assim como é linguagem Java e plataforma Java.

[quote=misterzire]Minha sugestão é avaliar o que realmente agregará valor ao cliente estando na web e focar inicialmente na migração dessa parte do sistema. Depois , com a experiência adquirida avaliaria se realmente valerá migrar o resto da aplicação.
[/quote]

Analistas não veem necessidade de se preocupar com o aspecto “fazer” da questão porque ele pode deixar isso para os code monkeys da equipe dele, eles se interessam mais pela idéia de planejar e organizar atividades num nível superior. Repara como ele só fala de “Estratégia” e ignora todas as táticas sugeridas por coders mais experientes que ele. :wink:

A primeira pergunta que eu faria nesse caso para o vinians seria: por que mudar?

Se você tem um sistema em Delphi, que está em produção, atende as necessidades do cliente, por que precisa mudar?

Ok, sistemas específicos para Windows, com uma ferramenta que já não tem o mesmo suporte e não acompanha a evolução das tecnologias tanto quanto as principais “do mercado”. Nem sei se isso é fato e se o delphi não acompanha a evolução das tecnologias, mas vamos supor que seja e que isso seja um bom pretexto para a mudança.

Respondida a pergunta do porque mudar, você entra no como:

Você já parou pra pensar no que já tem e no que realmente precisa ser feito? Você reclama que as respostas são subjetivas e vou tentar ser o mais objetivo possível, mas como já foi dito, a sua pergunta é subjetiva. Repare no título: “Criação de um sistema realmente grande”. O que é “realmente grande”? com certeza o fato de uma tela ter 10 tabelas ou views não define o sistema como “realmente grande”.

Você deseja o caminho das pedras, mas infelizmente não há o caminho das pedras. O Herbert Coelho, por exemplo, cujas respostas você não gostou é um cara que gosta e usa, pelo visto, o JSF, além de contribuir com a comunidade escrevendo livros sobre o assunto. Se você perguntar pra ele qual o mais produtivo framework mvc pra sistemas web em java, ele vai lhe dizer que é o JSF. Eu tenho todos os motivos para acreditar que ele realmente consegue ser produtivo com essa ferramenta.

Se você fizer a mesma pergunta pra mim eu vou te dizer que detesto o JSF, não gosto do conceito de componentes dele, não gosto da forma intrusiva do comportamento dele, das maneiras as quais ele me obriga a trabalhar. Vou te dizer que prefiro o VRaptor, que se enquadra melhor a minha maneira de programar.

Essas seriam duas respostas objetivas, mas contrastantes. O mesmo você pode considerar para qualquer framework que lhe seja indicado. Há sempre prós e contras e só os programadores poderão escolher os quais são melhores pra eles.

Antes de mais nada você deve responder a você mesmo e a seus clientes a pergunta, “por que devo migrar?” Dependendo dessa resposta você pode optar por muitos outros caminhos. Eu imagino que a sua necessidade deve estar em algum ponto nesses dois extremos:

  1. É um desejo da empresa, para não ficar com tecnologia defasada, atualizar a versão do sistema. Mas não é algo urgente e pode ser feito com calma.
  2. É uma necessidade real e urgente, pois os cliente já estão cobrando e precisamos dessa versão o mais rápido possível.

Dependendo do ponto em que a sua necessidade esteja entre essas duas possibilidades, você precisa tomar medidas distintas. Se a resposta for mais próxima da alternativa 1, você pode muito bem usar a própria equipe que existe e hoje e começar a desenvolver hoje mesmo, sem frescura, sem receita nem nada. Basta reservar um tempo pra isso e testar. Se a empresa já tem programadores experientes, mesmo que em outras linguagens, isso não será problema. Eles podem por eles mesmo analisar as ferramentas e ver as quais se adaptam melhor, e em situações reais.

Já se a sua necessidade estiver mais próxima da alternativa 2 você precisa contratar programadores já experientes com aplicações Java para fazer esse trabalho. Se não há tempo para que a sua equipe se adapte a uma nova tecnologia você tem que contratar quem já tenha domínio sobre ela.

Mas seja lá qual for o motivo uma coisa é certa. Considerando que Delphi já usava bancos de dados relacionais e provavelmente a nova aplicação também vai usar, você não precisa desligar a chave de uma e ligar a de outra. Você pode migrar partes do sistema, processos ou telas e já por em produção, fazendo com que os dois existam em conjunto. Isso é bem mais fácil e bem menos arriscado. Além de que vai te dar todas as respostas objetivas que você precisa.