Sistema Borboleta Móvel |
Apesar de não serem o objetivo principal do projeto, alguns aplicativos auxiliares foram sugeridos, a fim de se melhorar e facilitar o serviço dos
agentes, em suas visitas aos domicílios. Uma dessas aplicações consiste em
um mapa em que se pode visualizar a localização das casas de um determinado
grupo de pacientes.
A idéia original dos integrantes do CSE era desenvolver um aplicativo em que, além de se permitir a visualização da localização das casas, houvesse a possibilidade de se, dado um nome de rua e um número, encontrar a posição correspondente no mapa e calcular a melhor rota para a visita aos domicílios, assemelhando-se a aplicações conhecidas, como o site www.apontador.com.br. Atualmente, o Centro de Saúde se utiliza do software proprietário e comercial MapInfo (www.mapinfo.com), possuindo, inclusive, o mapa da região de atuação no formato do MapInfo. Considerando a complexidade do problema, procuramos, primeiramente, pesquisar a existência de alguma API ou framework que nos facilitasse o desenvolvimento, havendo a necessidade de ela ser compatível com J2ME. Descreveremos, de maneira geral, os resultados das pesquisas feitas: GIS - Geographic Information SystemsUm Sistema de Informação Geográfica (tradução para GIS) é um sistema de hardware, software, informação espacial e procedimentos computacionais, que permite e facilita a análisem gestão ou representação do espaço e dos fenômenos que nele ocorrem.O GIS pode funcionar como uma base de dados, com informação geográfica que se encontra associada por um identificador comum aos objetos gráficos de um mapa digital, havendo, assim, a possibilidade de se selecionar um registro na base de dados e saber a sua localização em um mapa. Os modelos mais comuns de GIS são o modelo raster (ou matricial) e o modelo vetorial, sendo que o primeiro se concentra nas propriedades do espaço, compartimentando-o em células regulares, representando um único valor, enquanto o segundo se foca na precisão da localização dos elementos no espaço. Os GIS permitem compatibilizar a informação oriundas de diversas fontes, como informação de sensores espaciais, informação recolhida com GPS (Global Positioning System) ou obtida com os métodos tradicionais da Topografia. OGC - Open Geospatial ConsortiumA OGC é uma organização internacional, sem fins lucrativos, que tem como objetivo a especificação de padrões para serviços geoespaciais e serviços baseados em localização. Através de seus programas, a OGC se associa com o governo, empresas privadas e acadêmicos, visando criar APIs abertas e extensíveis para GIS.GIS e a comunidade de Software LivreA comunidade de Software Livre vem atuando amplamente na área de GIS. Em sites como www.freegis.org, opensourcegis.org e www.maptools.org pode-se encontrar diversos aplicativos GIS, assim como APIs e frameworks para desenvolvimento de GIS.Projetos específicosDentre as diversas ferramentas e APIs, escolhemos algumas que pareciam atender aos nossos interesses e as estudamos.API da WebraskaUma primeira tentativa foi analisar a API da Webraska (www.webraska.com.br, que é utilizada no site www.apontador.com.br. A Webraska possui um rico banco de dados com mapas do Brasil, tráfego e pontos de interesse, armazenando bibliotecas para navegação em um servidor, chamado GNS (Global Network Server. A API da empresa fornece acesso a essas bibliotecas e o seu é bastante direto e simples. Basta acessar uma URL com parâmetros desejados e o sistema retorna um arquivo xml, que pode ser parseado de forma a se mostrar os mapas de interesse através de uma aplicação web.Apesar da sua facilidade de uso, era inviável utilizar tal API, uma vez que seu uso era pago. Estrutura de um GIS de código abertoComo foi citado em seções anteriores, existem diversas ferramentas de código aberto que auxiliam no desenvolvimento de GIS. De uma forma geral, um GIS necessita de duas estruturas básicas - o banco de dados e as bibliotecas responsáveis pelo tratamento das imagens.Com relação ao suporte dos bancos de dados, tanto o Postgres quanto o MySQL possuem projetos na área. O primeiro oferece extensões que oferecem suporte a objetos com características geográficas ao PostgreSQL, podendo ser utilizadas como back-end para um GIS. Foi dado o nome de PostGIS para tal projeto. O MySQL oferece extensões semelhantes. Além desses dois projetos, vê se um grande crescimento no uso de XML para representar os dados geográficos. No que diz respeito às bibliotecas para o tratamento de imagens e população do banco de dados, existem diversas ferramentas, sendo o JUMP (JUMP Unified Mapping Platform) uma das mais famosas, oferecendo diversas APIs Java para o desenvolvimento de GIS, assim como um framework extensível para se trabalhar com dados geoespaciais. Existem conectores para o PostGIS e a servidores Web Mapping Service (WMS), sendo que se possibilita o acesso a mapas no formato ESRI Shapefile, que corresponde ao formato utilizado em software da ArcView, que, apesar de ser comercial, é bastante utilizado. Apesar de muito bom, não pudemos utilizar o JUMP, por ele ser para aplicativos de Desktop e não oferecer suporte a dipositivos móveis. Com relação a esse último problema, encontramos o JGRASS, que é uma versão que utiliza Java e está sendo desenvolvido para oferecer as mesmas funcionalidades do GRASS, que captura, cria e transforma dados para popular as bases de dados espaciais. O GRASS é bastante conhecido e bastante utilizado pela comunidade de GIS de código aberto, mas o JGRASS, apesar de ser uma das únicas ferramentas que oferece suporte a J2ME, não está estável o suficiente (estando ainda em versão Beta) e não oferece quase nenhuma documentação. Muitas outras ferramentas e frameworks foram analisados e cada um possuía seus pontos fortes e fracos. Porém, a grande maioria foi descartada pelo fato de não oferecerem suporte a dispositivos móveis e, também, nenhuma delas resolvia o problema de não oferecer uma forma de se obter as informações referentes à região de atuação do APD, para popular o banco de dados. Google Maps APIAo saber que poderíamos considerar que os PDAs teriam acesso à Internet, cogitamos o uso do Google Maps API e fazer uma aplicação web. O Google Maps API oferece uma série de funcionalidades, incluindo a localização e armazenação de pontos escolhidos no mapa, navegação, etc, sendo suficiente e muito bom para desenvolvermos a nossa aplicação (apesar de não calcular rotas).O modo como se utiliza a API e a estrutura que permite o seu uso é bastante semelhante à estrutura da Webraska. Basicamente, o desenvolvimento de aplicativos utilizando a API se baseia no tratamento de arquivos XML, no acesso a mapas através de URLs e o uso de funções JavaScript. No entanto, o uso do Google Maps API não foi possível por dois motivos: a falta de mapas do Brasil no servidor (só existem mapas dos EUA por enquanto) e o pequeno número de browsers que suportam a API (Internet Explorer, Mozilla e Safari). [voltar]
|