Desafios e Frustrações |
Antes e durante o desenvolvimento do projeto foram encontrados diversos desafios, referentes tanto à tecnologia que me era nova e às tarefas das quais eu fiquei responsável.
Primeiramente, houve a necessidade de se estudar muito sobre as tecnologias utilizadas para desenvolver as aplicações auxiliares (GIS, SVG, J2ME, kXML, etc). Como o meu objetivo, a princípio, era fazer com que o aplicativo para a visualização do mapa tivesse as funcionalidades de um GIS, passei muito tempo tentando encontrar ferramentas e APIs que me facilitassem a implementação, mas que também oferecessem suporte a dispositivos móveis. Foi bastante decepcionante perceber que mesmo existindo ferramentas que poderiam me auxiliar a desenvolver o aplicativo, o mapa, que era essencial, não estava à minha disposição. Cheguei a participar de listas de discussões, como a do FreeGIS para tentar encontrar algum lugar onde eu pudesse achar os mapas necessários em formatos reconhecidos pelas APIs, mas não obtive nenhum resultado. Após ter passado muito tempo nessa pesquisa, resolvi desenvolver a solução em que eu digitalizaria o mapa do Guia de São Paulo e guardaria o ponto pressionado na tela, como sendo o ponto referente à casa do paciente. Tentei evitar essa solução por diversos motivos, incluindo os fatos de não ser possível localizar uma rua digitando-se o seu nome e a aplicação acabar sendo totalmente dependente da imagem digitalizada. Para implementar esse aplicativo, tive que estudar sobre a especificação SVG para dispositivos móveis. No entanto, apesar de a especificação estar bastante consolidada, havia pouquíssimas implementações não comerciais do SVG Tiny e, mesmo na página da Sun, cheguei a encontrar um tutorial sobre como tratar imagens vetoriais com o J2ME, mas se deixava claro que a única implementação conhecida e razoavelmente estável era a da TinyLine (cujas classes não possuíam as mesmas interfaces das classes do tutorial). Foi bastante complicado e demorado para me acostumar com a API do TinyLine. Felizmente, a comunidade envolvida é bastante ativa e no fórum de discussão do TinyLine, as respostas para minhas dúvidas eram enviadas em no máximo dois dias. Mesmo assim, tive problemas ao tentar rodar o programa no Palm OS Emulator, que era o software que estive utilizando antes do Palm OS Garnet Simulator. Outro problema encontrado foi o tamanho dos arquivos permitidos nas aplicações para dispositos móveis. Se existe algum arquivo de tamanho maior do que 64K, o programa não roda de maneira correta, lançando exceções. Além disso, na especificação da classe Image da API do J2ME, afirma-se que o único formato ao qual se deve dar suporte é o PNG, que, apesar de possuir formas bastante eficientes de compactação, acaba sendo maior do que arquivos JPEG. Isso foi um grande problema, pois a imagem do mapa era muito grande e, mesmo em formato JPEG, ocupava algumas centenas de kilobytes. Para resolver o problema, fiz diversas tentativas:
O sistema ainda está sendo desenvolvido e estou tentando encontrar uma solução melhor para essa questão. Com relação ao aplicativo para se visualizar a descrição dos medicamentos, houve uma certa dificuldade pela falta de documentação da API do J2ME e pelo fato de a tecnologia ser bastante nova e ser bastante diferente da estrutura do J2SE. O que apareceu como grande empecilho foi o fato de não existir o conceito de arquivos no J2ME. Existe uma estrutura semelhante a um banco de dados, para se lidar com persistência, mas não se pode criar arquivos - só se pode ler arquivos que são enviados junto com o "pacote" da aplicação. Além disso, nessa aplicação era necessário obter a descrição dos medicamentos utilizados no CSE e essa lista não existia na base de dados do Centro. Após pesquisar bastante sobre alguma base de dados que possuísse tais informações, a Ana encontrou o site da ANVISA, que disponibilizava um XML com informações básicas sobre muitos genéricos. Além desses obstáculos relativos à tecnologia, uma grande dificuldade que tive foi definir o que faria em cada momento, pois os dois aplicativos pelos quais fiquei encarregada eram completamente diferentes e foi dificil se concentrar em apenas um deles, uma vez que nenhum deles possuía uma solução direta e rápida. Apesar dessas questões, creio que a experiência foi muito positiva, uma vez que consegui entrar em contato com muitas tecnologias novas e pude trabalhar com a área de saúde, pela qual sempre tive interesse. [voltar]
|