Aplicativos Auxiliares | ||||||||||||||||||||||||||||||||||||||||
Introdução
Visando facilitar o deslocamento das equipes e consultas a medicamentos, estamos desenvolvendo dois aplicativos auxiliares, descritos abaixo.
Metodologia
Foi bastante difícil definir uma metodologia, uma vez que os dois aplicativos eram completamente diferentes e não se possuía domínio sobre as tecnologias que teriam que ser utilizadas. Além disso, houve obstáculos como a dificuldade em se encontrar a base de dados com as descrições dos medicamentos e o mapa da região de atuação do CSE. Esses problemas inviabilizavam a continuação do desenvolvimento do aplicativo, fazendo com que se continuasse o desenvolvimento do outro aplicativo, para que não se passasse muito tempo sem progressos. No entanto, como esses aplicativos eram muito diferentes entre si, essa mudança contínua no aplicativo que se está desenvolvendo fez com que se perdesse o foco, havendo a demanda de uma grande quantidade de tempo para se retomar o que se estava fazendo. Ao observar tal problema, foi decidido implementar um aplicativo por vez. O desenvolvimento dos dois aplicativos se basearam em uma extensa pesquisa inicial, para se ter maior domínio sobre as tecnologias a serem utilizadas. Fazia-se, então, uma lista de requisitos do sistema, definia-se as funcionalidades prioritárias e as mais fáceis de se implementar e se fazia um esquema de classes para se visualizar melhor a estrutura do programa. Após isso, passávamos para a fase de implementação Como o desenvolvimento do aplicativo de visualização do mapa estava bastante difícil, foi desenvolvido o aplicativo de visualização de medicamentos primeiro, para, então, se concetrar no outro aplicativo. Existem ainda alguns problemas a serem resolvidos no aplicativo de medicamentos, mas os esforços estão sendo concentrados no aplicativo de mapas atualmente. Ambiente de desenvolvimento
Os aplicativos foram desenvolvidos com a linguagem Java [java], mais especificamente a plataforma Java 2 Micro Edition [j2me] com o ambiente de desenvolvimento Eclipse [eclipse]. Utilizamos ainda os plug-ins EclipseME [eclime] e o Subclipse [subcli].
Como o Eclipse não possui emulador de Palm, foi necessário utilizar o Palm OS Garnet Simulator para se verificar a interface gráfica dos aplicativos no dispositivo PDA. Para isso, havia a necessidade de se gerar uma espécie de pacote com extensão jad pelo Eclipse e utilizar um aplicativo para convertê-lo para um arquivo de extensão prc. Esse último, então, podia ser utilizado para executar o programa no simulador de Palm. Ferramentas
Para obter maiores detalhes sobre as tecnologias utilizadas, clique aqui. Descrevemos, brevemente, a seguir, o que foi utilizado em cada aplicativo.Mapas
Para implementar o aplicativo para visualização de mapas, foi necessário fazer uma extensiva pesquisa sobre GIS (Geographic Information System), apesar de acabar não utilizando diretamente nenhum framework ou API relacionados. Para a implementação, foi utilizado o J2ME, sendo que houve a necessidade de se utilizar a persistência fornecida pelas APIs dessa plataforma, assim como o kXML, para se visualizar os dados armazenados na base de dados dos pacientes. Além disso, utilizou-se a Low Level API para desenvolvimento de interfaces gráficas em J2ME, uma vez que ela oferece uma maior liberdade e poder de customização. Uma última ferramenta utilizada foi o TinyLine 2D e o TinyLine SVG, com o intuito de se facilitar a implementação de funcionalidades como aumento/diminuição do mapa, navegação, etc. Medicamentos
Possuindo uma estrutura parecida com a do Sistema Borboleta Móvel, esse aplicativo utiliza o kXML e a persistência oferecida pelas APIs do J2ME para se obter os dados referentes aos medicamentos. Além disso, utiliza-se a High Level API para desenvolvimento de interfaces gráficas em J2ME.Desenvolvimento
Abaixo, descrevemos a estrutura dos aplicativos auxiliares.Mapas
![]() O aplicativo para a visualização dos mapas possui, basicamente, dois módulos: o que trata operações relativas a persistência e o que trata o que será mostrado na tela do PDA. O primeiro módulo é semelhante ao módulo de importação e tratamento de dados do Sistema Borboleta Móvel e do aplicativo para visualização dos detalhes dos medicamentos. Ele consiste em classes que utilizam kXML e a persistência do J2ME para carregar as coordenadas relativas às casas dos pacientes selecionados na aplicação, assim como para armazenar as coordenadas relativas à casa de um novo paciente incluso no sistema. O segundo módulo se responsabiliza por mostrar ao usuário os pontos relativos às casas a serem visitadas. Utiliza-se o TinyLine 2D e o TinyLine SVG para se mostrar o mapa na tela, além da classe Canvas, que faz parte da Low Level API do J2ME. Nesse módulo, existem classes responsáveis por carregar o arquivo SVG que corresponde ao mapa, tratar eventos (como pressionar um ponto, arrastar o mapa, etc), aumentar, diminuir e mover o mapa. Os eventos são tratados através da interface CommandListener do J2ME e as tranformações nas imagens são feitas utilizando as classes do TinyLine (que oferecem métodos para, por exemplo, fazer zoom, e classes para representar transformações lineares nas imagens). Medicamentos
![]() O aplicativo para visualização de detalhes dos medicamentos é bastante semelhante ao Sistema Borboleta Móvel, possuindo, basicamente, dois módulos: o módulo de importação e tratamento de dados e o módulo da interface gráfica. No módulo relativo à persistência, utiliza-se o kXML e a persistência do J2ME. Primeiramente, obtém-se os detalhes dos medicamentos e os dados presentes na base de dados do CSE através do Sistema Borboleta Desktop, via protocolo HTTP. Então, utilizando o parser do kXML, popula-se a base de dados do PDA, utilizando as APIs de persistência do J2ME, fazendo com que seja possível fazer uma consulta aos medicamentos através dos formulários da interface gráfica. A interface gráfica, por sua vez, é desenvolvida com a High Level API do J2ME, consistindo basicamente de formulários e listas. Métricas Post-Mortem e Resultados
Abaixo segue uma tabela relacionando as atividades feitas e o resultado obtido.
(**) OBS: o tempo levado foi considerado como sendo o tempo total usado para a atividade, havendo atividades que foram feitas "simultaneamente". Pendências
Os aplicativos ainda estão em fase de desenvolvimento e ainda existem diversas pendências, como os testes no aplicativo de Medicamento, a continuação da implementação do aplicativo de Mapas, com a integração com o Sistema Borboleta Móvel.
[voltar]
|