MICROSOFT .NET Dados na Palma da Mão O estado de Santa Catarina disponibiliza seus serviços á população em aplicações móveis, utilizando a plataforma Microsoft.NET. Por Marcelo Negrini e Claudia Scheiner Uma parceria feita entre o CIASC - Centro de Informática e Automação do Estado de Santa Catarina, através do presidente Eugênio Berka Filho, o assessor Carlos Eduardo da Silva e o consultor Renato Haddad desenvolveram uma aplicação móvel com a finalidade de disponibilizar serviços de informações do Estado através de telefonia celular. O CIASC foi criado em 14 de maio de 1975, tendo o Estado como seu principal acionista, e emprega atualmente 365 funcionários. Surgiu da necessidade de consolidar a dispersão das atividades de processamento eletrônico de dados e microfilmagem na Administração Pública, com a adoção de uma política racional para as novas aquisições ou locações, a fim de evitar superposições, ociosidades e mau dimensionamento dos equipamentos do Setor Público e, também, da necessidade do Estado de Santa Catarina em adaptar-se a uma nova filosofia de desenvolvimento econômico, científico e tecnológico, coerente com a Política Nacional de Informática. Renato Haddad, consultor independente agraciado pela Microsoft com o título de Most Valuable Professional (MVP), vem acompanhando o desenvolvimento e a evolução da plataforma Microsoft.NET desde o surgimento da primeira versão beta. Renato é autor de diversos artigos sobre tecnologia para o site MSDN Brasil (www.microsoft.com/brasil/msdn) e escreveu sete livros, sendo os últimos três voltados à .NET (“C# - Aplicações e Soluções”, “VB.NET – Conceitos e Aplicações” e “ASP.NET para desenvolvedores ASP” – editora Érica). Desde o surgimento do WAP (Wireless Application Protocol) no Brasil, Renato Haddad e Carlos Eduardo da Silva desenvolvem aplicativos que permitem à população e à polícia militar consultar dados referentes ao cadastro de veículos, IPVA e multas. Todo e qualquer telefone que suporta WAP pode fazer uma consulta ao banco de dados de veículos, durante blitzes, ou em consultas feitas pelos cidadãos. Outra aplicação existente é a consulta de dados referentes às empresas através do número do CNPJ ou da Inscrição Estadual. Isso possibilita aos responsáveis pela fiscalização consultar dados a partir de qualquer lugar. Empresa CIASC - Centro de Informática e Automação do Estado de Santa Catarina, responsável pelo desenvolvimento e soluções de aplicações para os órgãos do Governo de Santa Catarina. Solução Aplicação móvel baseada em ASP.NET, Web Services e VB.NET, tendo como clientes browsers WAP. Ferramentas Windows 2000 Server Visual Basic .NET Visual Studio .NET Mobile Internet Toolkit SQL Server 2000 A tecnologia utilizada foi o banco de dados IDMS, com acesso via ODBC, páginas em ASP (Active Server Pages) e WML (Wireless Markup Language) e o Windows NT 4.0. Como o acesso deve ser através das empresas de telecomunicações, foram envolvidas a Global Telecom e a TIM Celular que se prontificaram a oferecer toda a ajuda e o apoio necessário para a execução do projeto. Nos telefones da Global Telecom, dentro do menu de serviços públicos, a população pode acessar a consulta de multas e IPVA. Quando a Microsoft disponibilizou o Mobile Internet Toolkit com as ferramentas necessárias para o desenvolvimento de aplicações móveis, Haddad não exitou em instalar e fazer alguns protótipos. Em função da grande facilidade disponível pela ferramenta, foi proposto ao CIASC a migração do aplicativo WAP para Mobile.NET. Ferramentas Microsoft: Produtividade O CIASC considerou as vantagens da migração e aprovou o processo, que envolveu a área de Administração de Dados para executar a migração da base de dados do IDMS para o SQL Server 2000, facilitando a criação de Web Services e aumentando a performance das consultas e escalabilidade do sistema como um todo. A plataforma de execução do aplicativo é o Windows 2000 Server com o .NET Framework. O uso do Visual Studio .NET facilitou muito a migração, pois a facilidade de uso e a produtividade proporcionam criar aplicações em tempo recorde. Como ele utiliza o esquema RAD (Rapid Application Development), basta selecionar o devido controle, arrastar e soltar no documento, configurar as propriedades e inserir o código para controlar a aplicação. O aplicativo inicial foi desenvolvido com as ferramentas ASP e WML, onde praticamente você tem que escrever todas as linhas de código. Já no Visual Studio.NET, o rendimento chegou a ser cerca de 70% mais rápido, já que os controles estão disponíveis e acessíveis a apenas um clique do mouse. Houve criação manual de código, mas em volume muito pequeno, pois muito da estrutura de acesso a dados e controles visuais foi montada visualmente. A linguagem utilizada foi o Visual Basic.NET com acesso ao banco de dados feito com o ADO.NET, usando a classe System.Data.SqlClient (com acesso de dados nativo para SQL Server 7.0 ou superior). Dessa forma, a resposta do banco de dados ficou mais rápida. Como o ADO.NET se caracteriza por trabalhar com bases de dados desconectadas, as consultas ficaram mais rápidas que no antigo sistema, pois o uso de Stored Procedures nas páginas diminuiu em 30% o tempo de processamento. “Fazendo um comparativo entre o velho mundo Web e o atual, antigamente você desenvolvia as páginas utilizando ferramentas como Visual InterDev, Dreanweaver Ultradev, HomeSite, Adobe GoLive ou o Notepad - para quem gosta de sofrer - e inseria primeiro o design da página e depois o respectivo código em VBScript, JavaScript, etc. Fora que você tinha que intercalar códigos HTML ou WML com VBScript. O pesadelo se dava na manutenção da página, pois qualquer alteração no design mexia muito no código escrito. Se você precisar desenvolver componentes, normalmente utilizava o Visual Basic 6.0 e instalava com o MTS (Microsoft Transaction Server)” conta Haddad sobre o processo tradicional de desnvolvimento. “No mundo atual tudo isso mudou, primeiro que tudo se encontra em uma única ferramenta (design, códigos, componentes, Web Services e linguagens) e você pode desenvolver com o conceito de Code Behind, ou seja, separar em arquivos distintos o design do código. É claro que basta vincular esses arquivos para eles conversarem”, continua o consultor. Reutilização do Código O grande segredo de uma aplicação bem estruturada está em criar códigos que possam ser produtivos e reutilizados. Toda vez que for necessária uma determinada rotina em diversos lugares, normalmente cria-se um componente, instala-se a DLL (sua representação física), e os clientes que irão consumi-lo referenciam seus métodos e propriedades. Quem desenvolve com esse conceito encontra diversos problemas de instalação, como conflitos de DLL, vazamento de memória, etc, situação que se torna mais complexa quando diferentes partes do sistema se encontram separadas por firewalls, caso típico de aplicações Web com acesso a bancos de dados. Para solucionar esses problemas, a Microsoft foi uma das pioneiras no conceito de Web Services, classes de código que podem ser acessadas por protocolos abertos de Internet. Quando existe uma solicitação ao Web Service, o protocolo SOAP (Simple Object Access Protocol) empacota o resultado em um arquivo XML e transmite via http. Não existem problemas com firewalls, e o XML pode ser interpretado por outros sistemas. Essa integração com XML foi utilizada em no projeto da CIASC. Um Web Service recebe como argumento a placa do veículo ou o número do Renavam e retorna as informações referentes ao mesmo em XML. O mesmo Web Service pode ser utilizado em qualquer aplicação, seja Windows, Web ou Móbile. Visão Futura O desafio das aplicações móveis é poder acessar e manipular dados em qualquer lugar e horário, seja através de um notebook, celular, pocket PC ou PDA. Assim que a estrutura das empresas de telecomunicações ficarem mais rápidas, a avalanche de aplicações móveis deve crescer, principalmente para integrar diversos sistemas corporativos. Com o .NET será possível realizar essa integração de forma transparente, sem ter que ficar aprendendo diversas ferramentas. Segundo o Capitão Busi, do Centro de Comunicação e Informática da Polícia Militar do Estado de Santa Catarina, o potencial e o objetivo das aplicações móveis é disponibilizar o acesso rápido aos dados. Atualmente, quando um chamado é feito no 190, seja pela população ou pelo policial militar, é uma linha telefônica que é ocupada. Com essa tecnologia, todas as consultas a dados pelos policiais militares serão feitas diretamente no celular sem ocupar uma linha do 190. Com isso, descongestiona-se o uso do sistema telefônico da corporação nas consultas das informações dos veículos. O CIASC pretende ampliar o uso da plataforma .NET. De acordo com Carlos Eduardo, existem diversas aplicações que podem ser migradas para a plataforma, permitindo integrar dados descentralizados de aplicações que rodam em diferentes ambientes. Marcelo Negrini ([email protected]) é gerente de desenvolvimento de negócios da plataforma .NET na Microsoft. Claudia Scheiner ([email protected]) é diretora da Scheiner Solutions.