jueves, 9 de abril de 2009

Como extender las aplicaciones de las empresas a los celulares

Mas alla del uso ludico o de PDA que se le puede dar a un Smartphone,
hay una cuestion de hacerlos mas productivos para el ambito empresario
y lograr asi un retorno mas rapido de la inversión usandolos como
verdaderas oficinas moviles y no como meros medios de comunicación.
Por lo que surge la pregunta obligada...
Se pueden llevar las aplicaciones existentes en mi empresa a la flota
de celulares existente?
Teniendo en cuenta que los smartphones tienen procesadores de varios
cientos de Mhz y memorias de 128 MB para arriba, la respuesta a esta
pregunta es un rotundo "SI".

Entre las pocas contras que existen para el desarrollo de estas
aplicaciones moviles encontramos tres que resaltan y son el tamaño
reducido de sus pantallas,la forma de entrar datos, ya que hasta en
los teclados QWERTY mas amplios la entrada de datos es engorrosa y la
capacidad de memoria.
Pero mas alla de eso, se pueden extender las capacidades de nuestros
sistemas CRM, ERP o de logistica a los celulares.

Como estas aplicaciones que sirven de apendice a los sistemas
centrales no estan conectados todo el tiempo con los servidores
empresariales, se necesita sincronizar los datos para que ese usuario
en particular pueda operar con ellos en forma off-line, inclusive no
solo para poder consultarlos si no tambien para que pueda
modificarlos, dar de alta y borrar, para que cuando vuelva a
sincronizar esta información se actualice en las bases centrales.

En este sentido podemos decir que Microsoft se afianzo en este nicho
aprovenchado que las aplicaciones que corren en los sistemas desktop
son muy similares en terminos de interfaces de usuario a lo que se
ejecutarian en los dispositivos Windows Mobile
Para esto Microsoft amplio las capacidades de su base de datos SQL
Server en versiones para dispositvos moviles corriendo Windows Mobile,
este producto llamado SQL Server CE es gratis, el cual puede
sincronizarse contra un servidor SQL Server 2000 o 2005 usando los
modos de Merge Replication o RDA.
En el primer modo, Merge, el servidor se fija en la base de datos del
cliente, en este caso el dispositivo movil, si tiene cambios para asi
actulizarse a si mismo y a su vez enviarle al telefono los cambios que
este no tiene.
En el modo RDA se descargan las tablas desde cero sin importar los
cambios que haya.
Otra ventaja de los sistemas Microsoft es la integración entre este
producto y VIsual Studio usando el framework .NET, para este caso
tenemos dos frameworks de desarrollo CF (Compact Framwork
http://www.microsoft.com/downloads/details.aspx?FamilyID=9655156b-356...)
de Misrosoft y OpenNetCF que es Open Source(http://www.opennetcf.com).

Oracle tampoco se quedo atras sacando su producto OracleLite para
dispositivos moviles, pero no es un producto del todo maduro como lo
puede ser el de Microsoft.

Existe otra muy buena opción de base de datos open source para
Smartphones con WM llamada SQLite.

Ahora que pasa si no queremos ser presa de sistemas propietarios y
deseamos desarrollar otras formas de transferir datos desde nuestros
servidores a nuestros telefonos inteligentes?.
En este caso tenemos las opciones de crear Web Services, Archivos de
texto, y otros servicios.

Si lo que se desea es crear aplicaciones que sean compatibles con
todos los SO de celulares, sin lugar a dudas aqui el rey es JAVA con
su implemtentación J2ME.(www.sun.com)
Su gran ventaja es que usa la maquina virtual java del telefono, de
igual forma a como funcionan estas aplicaciones en una PC de
escritorio.
Aqui los ambientes de desarrollo son NetBeans, Eclipse, etc.
Este tipo de aplicaciones no son ricas a nivel de interfaces de
usuario y hacen un uso intensivo de la memoria y dependen mucho de la
version de la maquina virtual java que haya implementado el fabricante
del celular.

Este es un panorama muy resumido de las opciones disponibles para
extender las aplicaciones empresariales a los dispositivos moviles.