A escolha certa
19 de setembro de 2000, 0:00Seis perguntas que ajudam a decidir qual o sistema mais adequado para o desenvolvimento de seu projeto.
Por
Alguns anos atrás, quando aconteceu um grande boom de linguagens de programação e a popularização dos PCs, foram escritos milhares de sistemas nas mais variadas linguagens.
Além do Clipper, linguagens como DataFlex e FoxPro foram responsáveis pela criação dos mais diversificados sistemas de informação. Informática era o termo usado na época e os sistemas iam desde modelos de simples aplicações, como controles para locadoras, até outros mais importantes, como o controle de centrais de comunicação.
Em 1999, quando o bug do ano 2000 foi realmente levado a sério pela maioria das pequenas e médias empresas, a dor de cabeça de muitos gerentes de informática começava: "Onde encontrar pessoal habilitado para dar manutenção no meu sistema feito usando a linguagem Exyz? Onde foi parar aquele ‘programador’ que guardou os códigos fontes e toda a documentação do sistema?" (Sabemos que naquela época, assim como hoje, na maioria dos projetos o cronograma não fazia referência à fase de documentação.)
No final as soluções foram reescrever o sistema utilizando linguagens mais modernas, como Visual C++, Java, Delphi e Visual Basic, ou pagar um bom profissional para fazer as alterações necessárias nos programas, isto quando o código fonte estava disponível.
Todos se lembram do preço de um bom programador Cobol em 1999. Nestas alterações nem tudo foi perda – as empresas que souberam modernizar seus sistemas adicionando funcionalidades como integração com a internet e criação de camadas de aplicação conseguiram melhorar e modernizar seus produtos.
Os sistemas internet que vêm sendo desenvolvidos atualmente precisam ser revistos e coordenados com maior rigor, para que daqui a alguns anos não aconteça algo parecido.
O mercado internet está suprido por dezenas de linguagens/plataformas/scripts de programação que permitem o desenvolvimento de aplicações para a web de forma rápida, fácil e principalmente barata. Estas linguagens podem ser de fácil desenvolvimento, como o Active Server Pages (ASP) da Microsoft, até sistemas bem mais complexos, como servidores de aplicação Java utilizando Enterprise JavaBeans e o modelo de componentes da Microsoft. Existem ainda as linguagens de script proprietárias, fornecidas por praticamente todo servidor web moderno, que facilitam o desenvolvimento de aplicações, para aquele servidor.
Hoje em dia não somente há um leque muito maior de linguagens de desenvolvimento como também todo o modelo da aplicação é muito mais variado e complexo. As aplicações internet são n vezes mais complexas que os programas desenvolvidos em Clipper nos anos 80. As aplicações web podem ser desenvolvidas usando n camadas de aplicações, podem necessitar de integração com sistemas legados, servidores de mail e banco de bados. Devem ser executados em diversos tipos de servidores e sistemas operacionais e até pequenos dispositivos, alem de ter que suportar novos padrões como WAP.
É muito importante analisaras principais características das tecnologias a serem adotadas durante a fase de análise e definição do projeto. Algumas perguntas podem ser cruciais para o sucesso e durabilidade de um sistema:
1. A tecnologia que está sendo adotada no desenvolvimento do sistema web é moderna e vai continuar evoluindo daqui a dois anos?
2. As universidades e o mercado em geral têm utilizado esta tecnologia no desenvolvimento de suas aplicações?
3. Existem cursos e um bom material de consulta para que no futuro, caso seja necessário, seja possível um treinamento de novos desenvolvedores?
4. O número de desenvolvedores desta tecnologia vem crescendo nos últimos anos?
5. A tecnologia permite escalabilidade para seu sistema, caso o número de usuários aumente de forma exponencial?
6. As novas versões são compatíveis com as anteriores, possibilitando reutilizar todo o código já desenvolvido?
Uma resposta positiva às questões acima pode indicar uma boa escolha de tecnologia. Com certeza outros aspectos devem ser avaliados, incluindo o custo de desenvolvimento, a aquisição dos produtos e até mesmo o tempo de vida e complexidade do sistema a ser desenvolvido.
Pense bem no seu projeto, reflita sobre ele e tome a decisão acertada. [Webinsider]
.
