jueves, julio 01, 2010

Aplicaciones Móviles Java (J2ME) - Una experiencia real

A continuación se relata la absoluta verdad sobre los desarrollos móviles en las condiciones latinoamericanas, más específicamente las Colombianas; aunque los estándares J2ME dicen una cosa, la realidad es muy distinta; la amplia variedad de dispositivos ocasionan que en muchos casos surjan contrariedades en el desarrollo. La experiencia que acá voy a relatar tuvo en mi concepto cada una de las eventualidades que podrían aparecer y retrasar un proyecto de desarrollo con componente móvil; sin embargo, cada uno de estas circunstancias fue superada con el tiempo, investigación y constancia para al final obtener un aplicativo estable en terreno y con todos los requerimientos del cliente.
El proyecto consistió en una aplicación móvil con componente geográfico, una serie de formularios, envío de datos en línea, almacenamiento de la información de una base de datos transaccional, GPS, entre otras.


La funcionalidad en términos generales consiste en asignar, mediante una aplicación web con componente geográfico (mapas digitales), trabajo a los operarios en terreno, para que ellos a su vez mediante el dispositivo móvil puedan visualizar (también mediante mapas) la ubicación de las direcciones de los predios que deben visitar, y establecer un orden de prioridad de ruta establecido fundamentalmente por la distancia entre el predio y el operario (vía GPS). El operario realiza la visita, digita la información en formularios y envía la información al servidor en tiempo real y pasa a realizar la siguiente visita. Adicionalmente al proceso principal, existen procesos secundarios que se realizan para auditar el trabajo de los operarios, como el envío de coordenadas GPS cada determinado tiempo, el almacenamiento de información dentro del dispositivo (si se accede a una zona donde el canal de transmisión tiene fallas), el ajuste de posición (latitud y longitud) de una visita en particular y todos los procesos generales de que dispone un visor de mapas digital como Google Maps.